QueueServiceClient الفصل
عميل للتفاعل مع خدمة قائمة الانتظار على مستوى الحساب.
يوفر هذا العميل عمليات لاسترداد وتكوين خصائص الحساب بالإضافة إلى قائمة وإنشاء وحذف قوائم الانتظار داخل الحساب. بالنسبة للعمليات المتعلقة بقائمة انتظار معينة، يمكن استرداد عميل لهذا الكيان باستخدام الدالة get_queue_client .
لمزيد من التكوين الاختياري، يرجى النقر هنا.
- توريث
-
azure.storage.queue._shared.base_client.StorageAccountHostsMixinQueueServiceClientazure.storage.queue._encryption.StorageEncryptionMixinQueueServiceClient
الدالمنشئ
QueueServiceClient(account_url: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any)
المعلمات
- account_url
- str
عنوان URL لنقطة نهاية خدمة قائمة الانتظار. سيتم تجاهل أي كيانات أخرى مضمنة في مسار URL (على سبيل المثال، قائمة الانتظار). يمكن مصادقة عنوان URL هذا اختياريا باستخدام رمز SAS المميز.
- credential
بيانات الاعتماد التي يجب المصادقة بها. هذا اختياري إذا كان عنوان URL للحساب يحتوي بالفعل على رمز SAS مميز. يمكن أن تكون القيمة سلسلة رمز SAS المميز أو مثيل AzureSasCredential أو AzureNamedKeyCredential من azure.core.credentials أو مفتاح وصول مشترك للحساب أو مثيل فئة TokenCredentials من azure.identity. إذا كان عنوان URI للمورد يحتوي بالفعل على رمز SAS المميز، فسيتم تجاهل هذا لصالح بيانات اعتماد صريحة
- باستثناء حالة AzureSasCredential، حيث سترفع رموز SAS المميزة المتعارضة ValueError. إذا كنت تستخدم مثيل AzureNamedKeyCredential، يجب أن يكون "الاسم" هو اسم حساب التخزين، ويجب أن يكون "المفتاح" هو مفتاح حساب التخزين.
- api_version
- str
إصدار Storage API لاستخدامه للطلبات. القيمة الافتراضية هي أحدث إصدار خدمة متوافق مع SDK الحالي. قد يؤدي الإعداد إلى إصدار أقدم إلى تقليل توافق الميزات.
- secondary_hostname
- str
اسم مضيف نقطة النهاية الثانوية.
- audience
- str
الجمهور الذي يجب استخدامه عند طلب الرموز المميزة لمصادقة Azure Active Directory. يكون له تأثير فقط عندما تكون بيانات الاعتماد من نوع TokenCredential. قد تكون https://storage.azure.com/ القيمة (افتراضية) أو https://.queue.core.windows.net.
أمثلة
إنشاء QueueServiceClient باستخدام عنوان URL للحساب وبيانات الاعتماد.
from azure.storage.queue import QueueServiceClient
queue_service = QueueServiceClient(account_url=self.account_url, credential=self.access_key)
إنشاء QueueServiceClient باستخدام بيانات اعتماد Azure Identity.
# Get a token credential for authentication
from azure.identity import ClientSecretCredential
token_credential = ClientSecretCredential(
self.active_directory_tenant_id,
self.active_directory_application_id,
self.active_directory_application_secret
)
# Instantiate a QueueServiceClient using a token credential
from azure.storage.queue import QueueServiceClient
queue_service = QueueServiceClient(account_url=self.account_url, credential=token_credential)
الأساليب
close |
هذا الأسلوب هو إغلاق مآخذ التوصيل التي يفتحها العميل. لا يلزم استخدامه عند استخدام مع مدير سياق. |
create_queue |
إنشاء قائمة انتظار جديدة ضمن الحساب المحدد. إذا كانت قائمة انتظار بنفس الاسم موجودة بالفعل، تفشل العملية. إرجاع عميل للتفاعل مع قائمة الانتظار التي تم إنشاؤها حديثا. |
delete_queue |
حذف قائمة الانتظار المحددة وأي رسائل تحتوي عليها. عند حذف قائمة انتظار بنجاح، يتم وضع علامة عليها على الفور للحذف ولم يعد من الممكن للعملاء الوصول إليها. تتم إزالة قائمة الانتظار لاحقا من خدمة قائمة الانتظار أثناء تجميع البيانات المهملة. لاحظ أنه من المحتمل أن يستغرق حذف قائمة انتظار 40 ثانية على الأقل لإكمالها. إذا تمت محاولة إجراء عملية مقابل قائمة الانتظار أثناء حذفها، <xref:azure.storage.queue.HttpResponseError> فسيتم طرح. |
from_connection_string |
إنشاء QueueServiceClient من سلسلة اتصال. |
get_queue_client |
احصل على عميل للتفاعل مع قائمة الانتظار المحددة. قائمة الانتظار غير موجودة بالفعل. |
get_service_properties |
يحصل على خصائص خدمة قائمة الانتظار لحساب التخزين، بما في ذلك Azure Storage Analytics. |
get_service_stats |
استرداد الإحصائيات المتعلقة بالنسخ المتماثل لخدمة قائمة الانتظار. يتوفر فقط عند تمكين النسخ المتماثل المتكرر جغرافيا للوصول إلى القراءة لحساب التخزين. مع النسخ المتماثل الجغرافي المتكرر، يحافظ Azure Storage على بياناتك الدائمة في موقعين. في كلا الموقعين، يحتفظ Azure Storage باستمرار بنسخ متماثلة صحية متعددة من بياناتك. الموقع الذي تقرأ فيه البيانات أو تنشئها أو تحدثها أو تحذفها هو موقع حساب التخزين الأساسي. يوجد الموقع الأساسي في المنطقة التي تختارها في الوقت الذي تنشئ فيه حسابا عبر مدخل Azure Management Azure الكلاسيكي، على سبيل المثال، شمال وسط الولايات المتحدة. الموقع الذي يتم نسخ بياناتك إليه هو الموقع الثانوي. يتم تحديد الموقع الثانوي تلقائيا استنادا إلى موقع الأساسي؛ وهو في مركز بيانات ثان موجود في نفس المنطقة مثل الموقع الأساسي. يتوفر الوصول للقراءة فقط من الموقع الثانوي، إذا تم تمكين النسخ المتماثل المتكرر جغرافيا للوصول للقراءة لحساب التخزين الخاص بك. |
list_queues |
إرجاع منشئ لسرد قوائم الانتظار ضمن الحساب المحدد. سيتبع المولد ببطء الرموز المميزة للاستمرار التي تم إرجاعها بواسطة الخدمة ويتوقف عند إرجاع جميع قوائم الانتظار. |
set_service_properties |
تعيين خصائص خدمة قائمة الانتظار لحساب التخزين، بما في ذلك Azure Storage Analytics. إذا تم ترك عنصر (على سبيل المثال analytics_logging) ك بلا، يتم الاحتفاظ بالإعدادات الموجودة على الخدمة لتلك الوظيفة. |
close
هذا الأسلوب هو إغلاق مآخذ التوصيل التي يفتحها العميل. لا يلزم استخدامه عند استخدام مع مدير سياق.
close()
create_queue
إنشاء قائمة انتظار جديدة ضمن الحساب المحدد.
إذا كانت قائمة انتظار بنفس الاسم موجودة بالفعل، تفشل العملية. إرجاع عميل للتفاعل مع قائمة الانتظار التي تم إنشاؤها حديثا.
create_queue(name: str, metadata: Dict[str, str] | None = None, **kwargs: Any) -> QueueClient
المعلمات
إملاء مع أزواج name_value لإقرانها بقائمة الانتظار كبيانات تعريف. مثال: {'Category': 'test'}
- timeout
- int
يتم التعبير عن معلمة المهلة بالثوان.
المرتجعات
QueueClient لقائمة الانتظار التي تم إنشاؤها حديثا.
نوع الإرجاع
أمثلة
إنشاء قائمة انتظار في الخدمة.
queue_service.create_queue("myqueue1")
delete_queue
حذف قائمة الانتظار المحددة وأي رسائل تحتوي عليها.
عند حذف قائمة انتظار بنجاح، يتم وضع علامة عليها على الفور للحذف ولم يعد من الممكن للعملاء الوصول إليها. تتم إزالة قائمة الانتظار لاحقا من خدمة قائمة الانتظار أثناء تجميع البيانات المهملة.
لاحظ أنه من المحتمل أن يستغرق حذف قائمة انتظار 40 ثانية على الأقل لإكمالها. إذا تمت محاولة إجراء عملية مقابل قائمة الانتظار أثناء حذفها، <xref:azure.storage.queue.HttpResponseError> فسيتم طرح.
delete_queue(queue: QueueProperties | str, **kwargs: Any) -> None
المعلمات
- queue
- str أو QueueProperties
قائمة الانتظار المراد حذفها. يمكن أن يكون هذا إما اسم قائمة الانتظار، أو مثيل QueueProperties.
- timeout
- int
يتم التعبير عن معلمة المهلة بالثوان.
نوع الإرجاع
أمثلة
حذف قائمة انتظار في الخدمة.
queue_service.delete_queue("myqueue1")
from_connection_string
إنشاء QueueServiceClient من سلسلة اتصال.
from_connection_string(conn_str: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any) -> Self
المعلمات
- credential
بيانات الاعتماد التي يجب المصادقة بها. هذا اختياري إذا كان عنوان URL للحساب يحتوي بالفعل على رمز SAS مميز، أو كان سلسلة الاتصال يحتوي بالفعل على قيم مفتاح وصول مشتركة. يمكن أن تكون القيمة سلسلة رمز SAS المميز أو مثيل AzureSasCredential أو AzureNamedKeyCredential من azure.core.credentials أو مفتاح وصول مشترك للحساب أو مثيل فئة TokenCredentials من azure.identity. ستكون لبيانات الاعتماد المقدمة هنا الأسبقية على تلك الموجودة في سلسلة الاتصال. إذا كنت تستخدم مثيل AzureNamedKeyCredential، يجب أن يكون "الاسم" هو اسم حساب التخزين، ويجب أن يكون "المفتاح" هو مفتاح حساب التخزين.
- audience
- str
الجمهور الذي يجب استخدامه عند طلب الرموز المميزة لمصادقة Azure Active Directory. يكون له تأثير فقط عندما تكون بيانات الاعتماد من نوع TokenCredential. قد تكون https://storage.azure.com/ القيمة (افتراضية) أو https://.queue.core.windows.net.
المرتجعات
عميل خدمة قائمة الانتظار.
نوع الإرجاع
أمثلة
إنشاء QueueServiceClient باستخدام سلسلة الاتصال.
from azure.storage.queue import QueueServiceClient
queue_service = QueueServiceClient.from_connection_string(conn_str=self.connection_string)
get_queue_client
احصل على عميل للتفاعل مع قائمة الانتظار المحددة.
قائمة الانتظار غير موجودة بالفعل.
get_queue_client(queue: QueueProperties | str, **kwargs: Any) -> QueueClient
المعلمات
- queue
- str أو QueueProperties
قائمة الانتظار. يمكن أن يكون هذا إما اسم قائمة الانتظار، أو مثيل QueueProperties.
المرتجعات
QueueClientعنصر.
نوع الإرجاع
أمثلة
احصل على عميل قائمة الانتظار.
# Get the queue client to interact with a specific queue
queue = queue_service.get_queue_client(queue="myqueue2")
get_service_properties
يحصل على خصائص خدمة قائمة الانتظار لحساب التخزين، بما في ذلك Azure Storage Analytics.
get_service_properties(**kwargs: Any) -> Dict[str, Any]
المعلمات
- timeout
- int
يتم التعبير عن معلمة المهلة بالثوان.
المرتجعات
كائن يحتوي على خصائص خدمة قائمة الانتظار مثل تسجيل التحليلات ومقاييس الساعة/الدقيقة وقواعد cors وما إلى ذلك.
نوع الإرجاع
أمثلة
الحصول على خصائص خدمة قائمة الانتظار.
properties = queue_service.get_service_properties()
get_service_stats
استرداد الإحصائيات المتعلقة بالنسخ المتماثل لخدمة قائمة الانتظار.
يتوفر فقط عند تمكين النسخ المتماثل المتكرر جغرافيا للوصول إلى القراءة لحساب التخزين.
مع النسخ المتماثل الجغرافي المتكرر، يحافظ Azure Storage على بياناتك الدائمة في موقعين. في كلا الموقعين، يحتفظ Azure Storage باستمرار بنسخ متماثلة صحية متعددة من بياناتك. الموقع الذي تقرأ فيه البيانات أو تنشئها أو تحدثها أو تحذفها هو موقع حساب التخزين الأساسي. يوجد الموقع الأساسي في المنطقة التي تختارها في الوقت الذي تنشئ فيه حسابا عبر مدخل Azure Management Azure الكلاسيكي، على سبيل المثال، شمال وسط الولايات المتحدة. الموقع الذي يتم نسخ بياناتك إليه هو الموقع الثانوي. يتم تحديد الموقع الثانوي تلقائيا استنادا إلى موقع الأساسي؛ وهو في مركز بيانات ثان موجود في نفس المنطقة مثل الموقع الأساسي. يتوفر الوصول للقراءة فقط من الموقع الثانوي، إذا تم تمكين النسخ المتماثل المتكرر جغرافيا للوصول للقراءة لحساب التخزين الخاص بك.
get_service_stats(**kwargs: Any) -> Dict[str, Any]
المعلمات
- timeout
- int
يتم التعبير عن معلمة المهلة بالثوان.
المرتجعات
إحصائيات خدمة قائمة الانتظار.
نوع الإرجاع
list_queues
إرجاع منشئ لسرد قوائم الانتظار ضمن الحساب المحدد.
سيتبع المولد ببطء الرموز المميزة للاستمرار التي تم إرجاعها بواسطة الخدمة ويتوقف عند إرجاع جميع قوائم الانتظار.
list_queues(name_starts_with: str | None = None, include_metadata: bool | None = False, **kwargs: Any) -> ItemPaged[QueueProperties]
المعلمات
- name_starts_with
- str
تصفية النتائج لإرجاع قوائم الانتظار التي تبدأ أسماؤها بالبادئة المحددة فقط.
- results_per_page
- int
الحد الأقصى لعدد أسماء قوائم الانتظار المراد استردادها لكل استدعاء API. إذا لم يحدد الطلب، فسيرجع الخادم ما يصل إلى 5000 عنصر.
- timeout
- int
تعيين المهلة من جانب الخادم للعملية بالثوان. لمزيد من التفاصيل، راجع https://learn.microsoft.com/en-us/rest/api/storageservices/setting-timeouts-for-queue-service-operations. لا يتم تعقب هذه القيمة أو التحقق من صحتها على العميل. لتكوين مهلات الشبكة من جانب العميل، راجع هنا. قد تقوم هذه الدالة بإجراء استدعاءات متعددة للخدمة وفي هذه الحالة سيتم تطبيق قيمة المهلة المحددة على كل استدعاء فردي.
المرتجعات
تكرار (ترحيل تلقائي) من QueueProperties.
نوع الإرجاع
أمثلة
سرد قوائم الانتظار في الخدمة.
# List all the queues in the service
list_queues = queue_service.list_queues()
for queue in list_queues:
print(queue)
# List the queues in the service that start with the name "my"
list_my_queues = queue_service.list_queues(name_starts_with="my")
for queue in list_my_queues:
print(queue)
set_service_properties
تعيين خصائص خدمة قائمة الانتظار لحساب التخزين، بما في ذلك Azure Storage Analytics.
إذا تم ترك عنصر (على سبيل المثال analytics_logging) ك بلا، يتم الاحتفاظ بالإعدادات الموجودة على الخدمة لتلك الوظيفة.
set_service_properties(analytics_logging: QueueAnalyticsLogging | None = None, hour_metrics: Metrics | None = None, minute_metrics: Metrics | None = None, cors: List[CorsRule] | None = None, **kwargs: Any) -> None
المعلمات
- hour_metrics
- Metrics
توفر إعدادات مقاييس الساعة ملخصا لإحصائيات الطلب المجمعة بواسطة واجهة برمجة التطبيقات في تجميعات بالساعة لقوائم الانتظار.
يمكنك تضمين ما يصل إلى خمسة عناصر CorsRule في القائمة. إذا تم تحديد قائمة فارغة، فسيتم حذف جميع قواعد CORS، وسيتم تعطيل CORS للخدمة.
- timeout
- int
يتم التعبير عن معلمة المهلة بالثوان.
أمثلة
تعيين خصائص خدمة قائمة الانتظار.
# Create service properties
from azure.storage.queue import QueueAnalyticsLogging, Metrics, CorsRule, RetentionPolicy
# Create logging settings
logging = QueueAnalyticsLogging(read=True, write=True, delete=True, retention_policy=RetentionPolicy(enabled=True, days=5))
# Create metrics for requests statistics
hour_metrics = Metrics(enabled=True, include_apis=True, retention_policy=RetentionPolicy(enabled=True, days=5))
minute_metrics = Metrics(enabled=True, include_apis=True, retention_policy=RetentionPolicy(enabled=True, days=5))
# Create CORS rules
cors_rule1 = CorsRule(['www.xyz.com'], ['GET'])
allowed_origins = ['www.xyz.com', "www.ab.com", "www.bc.com"]
allowed_methods = ['GET', 'PUT']
max_age_in_seconds = 500
exposed_headers = ["x-ms-meta-data*", "x-ms-meta-source*", "x-ms-meta-abc", "x-ms-meta-bcd"]
allowed_headers = ["x-ms-meta-data*", "x-ms-meta-target*", "x-ms-meta-xyz", "x-ms-meta-foo"]
cors_rule2 = CorsRule(
allowed_origins,
allowed_methods,
max_age_in_seconds=max_age_in_seconds,
exposed_headers=exposed_headers,
allowed_headers=allowed_headers
)
cors = [cors_rule1, cors_rule2]
# Set the service properties
queue_service.set_service_properties(logging, hour_metrics, minute_metrics, cors)
السمات
api_version
location_mode
وضع الموقع الذي يستخدمه العميل حاليا.
بشكل افتراضي، سيكون هذا "أساسي". تتضمن الخيارات "الأساسي" و"الثانوي".
نوع الإرجاع
primary_endpoint
primary_hostname
secondary_endpoint
عنوان URL لنقطة النهاية الثانوية الكاملة إذا تم تكوينه.
إذا لم يكن متوفرا، فسيتم رفع ValueError. لتحديد اسم مضيف ثانوي بشكل صريح، استخدم وسيطة الكلمة الأساسية secondary_hostname الاختيارية عند إنشاء مثيل.
نوع الإرجاع
استثناءات
secondary_hostname
اسم مضيف نقطة النهاية الثانوية.
إذا لم يكن متوفرا، فسيكون هذا بلا. لتحديد اسم مضيف ثانوي بشكل صريح، استخدم وسيطة الكلمة الأساسية secondary_hostname الاختيارية عند إنشاء مثيل.
نوع الإرجاع
url
عنوان URL الكامل لنقطة النهاية لهذا الكيان، بما في ذلك رمز SAS المميز إذا تم استخدامه.
قد تكون هذه إما نقطة النهاية الأساسية، أو نقطة النهاية الثانوية اعتمادا على الحالي location_mode. :returns: عنوان URL الكامل لنقطة النهاية لهذا الكيان، بما في ذلك رمز SAS المميز إذا تم استخدامه. :rtype: str
Azure SDK for Python