python - क्या Boto3 संसाधन और ग्राहक समतुल्य हैं? एक या अन्य का उपयोग करते समय?




amazon-web-services (2)

संसाधन केवल ग्राहकों पर संसाधन-आधारित अमूर्त हैं। वे कुछ भी नहीं कर सकते जो ग्राहक नहीं कर सकते हैं, लेकिन कई मामलों में वे उपयोग करने के लिए अच्छे हैं। उनके पास वास्तव में एक एम्बेडेड क्लाइंट होता है जिसे वे अनुरोध करने के लिए उपयोग करते हैं। नकारात्मकता यह है कि वे हमेशा सेवा की 100% सुविधाओं का समर्थन नहीं करते हैं।

बोटो 3 मावेन्स,

ग्राहक और संसाधनों के बीच कार्यात्मक अंतर क्या है, यदि कोई है?

क्या वे कार्यात्मक रूप से समकक्ष हैं?

आप किस स्थिति के तहत एक Boto3 संसाधन बनाम एक ग्राहक (और इसके विपरीत) का आह्वान करने के लिए चुना जाएगा?

हालांकि मैंने आरटीएम द्वारा इस प्रश्न का उत्तर देने का प्रयास किया है ... अफसोस करता है, दोनों के बीच कार्यात्मक अंतर को समझता हूं।

तुम्हारे विचार?

बहुत से, बहुत धन्यवाद!

विमान Wryter


हमेशा resource बनाएं। इसमें महत्वपूर्ण विधियां हैं जिनकी आपको आवश्यकता होगी, जैसे Table । यदि आपको client ऑब्जेक्ट की आवश्यकता होती है, तो यह उपयोग के लिए तैयार है, बस .meta.client लिए .meta.client :

import boto3
dynamodb = boto3.resource(service_name='dynamodb', endpoint_url='http://localhost:8000')
try:
    dynamodb.create_table(...)
except dynamodb.meta.client.exceptions.ResourceInUseException:
    logging.warn('Table already exists')
table = dynamodb.Table(table_name)
response = table.get_item(...)




boto3