EventHubBufferedProducerClient class

EventHubBufferedProducerClientيتم استخدام لنشر الأحداث إلى مركز أحداث معين.

EventHubBufferedProducerClient لا ينشر الأحداث على الفور. بدلا من ذلك، يتم تخزين الأحداث مؤقتا بحيث يمكن تجميعها ونشرها بكفاءة عندما تكون الدفعة ممتلئة أو maxWaitTimeInMs انقضت دون وضع أي أحداث جديدة في قائمة الانتظار.

اعتمادا على الخيارات المحددة عند إدراج الأحداث في قائمة الانتظار، قد يتم تعيينها تلقائيا إلى قسم، أو تجميعها وفقا لمفتاح القسم المحدد، أو تعيين قسم مطلوب خصيصا.

يهدف هذا النموذج إلى تحويل عبء إدارة الدفعات من المتصلين، على حساب التوقيت غير المحدد، لموعد نشر الأحداث. هناك مفاضلات إضافية يجب مراعاتها، أيضا:

  • إذا تعطل التطبيق، فلن يتم نشر الأحداث في المخزن المؤقت. لمنع فقدان البيانات، يتم تشجيع المتصلين على تتبع تقدم النشر باستخدام onSendEventsSuccessHandler المعالجين و onSendEventsErrorHandler .
  • قد يتم تعيين قسم مختلف للأحداث التي تحدد مفتاح القسم عن تلك التي تستخدم نفس المفتاح مع منتجين آخرين.
  • في حالة عدم توفر القسم مؤقتا، EventHubBufferedProducerClient قد يستغرق استرداده وقتا أطول من المنتجين الآخرين.

في السيناريوهات التي من المهم فيها نشر الأحداث على الفور بنتيجة محددة، تأكد من تعيين مفاتيح الأقسام إلى قسم يتوافق مع الناشرين الآخرين، أو حيث يكون تكبير التوفر مطلبا، يوصى باستخدام EventHubProducerClient .

المنشئون

EventHubBufferedProducerClient(string, EventHubBufferedProducerClientOptions)

EventHubBufferedProducerClient يتم استخدام الفئة لإرسال الأحداث إلى Event Hub. options استخدم parmeter لتكوين نهج إعادة المحاولة أو إعدادات الوكيل.

EventHubBufferedProducerClient(string, string, EventHubBufferedProducerClientOptions)

EventHubBufferedProducerClient يتم استخدام الفئة لإرسال الأحداث إلى Event Hub. options استخدم parmeter لتكوين نهج إعادة المحاولة أو إعدادات الوكيل.

EventHubBufferedProducerClient(string, string, TokenCredential | NamedKeyCredential | SASCredential, EventHubBufferedProducerClientOptions)

EventHubBufferedProducerClient يتم استخدام الفئة لإرسال الأحداث إلى Event Hub. options استخدم parmeter لتكوين نهج إعادة المحاولة أو إعدادات الوكيل.

الخصائص

eventHubName

اسم مثيل Event Hub الذي تم إنشاء هذا العميل له.

fullyQualifiedNamespace

مساحة الاسم المؤهلة بالكامل لمثيل Event Hub الذي تم إنشاء هذا العميل له. من المحتمل أن يكون هذا مشابها ل .servicebus.windows.net.

identifier

الاسم المستخدم لتعريف EventHubBufferedProducerClient هذا. إذا لم يتم تحديده أو إفراغه، فسيتم إنشاء واحد فريد عشوائي.

الأساليب

close(BufferedCloseOptions)

إغلاق اتصال AMQP بمثيل Event Hub، مع إرجاع وعد سيتم حله عند اكتمال قطع الاتصال.

سينتظر هذا حتى يتم مسح الأحداث المدرجة في قائمة الانتظار إلى الخدمة قبل إغلاق الاتصال. لإغلاق دون مسح، قم بتعيين flush الخيار إلى false.

enqueueEvent(EventData | AmqpAnnotatedMessage, EnqueueEventOptions)

وضع حدث في المخزن المؤقت ليتم نشره في Event Hub. إذا لم تكن هناك سعة في المخزن المؤقت عند استدعاء هذا الأسلوب، فسينتظر توفر المساحة والتأكد من أن الحدث قد تم ترتيبه في قائمة الانتظار.

عند إرجاع هذا الاستدعاء، تم قبول الحدث في المخزن المؤقت، ولكن ربما لم يتم نشره بعد. سيتم النشر في نقطة غير محددة في المستقبل عند معالجة المخزن المؤقت.

enqueueEvents(EventData[] | AmqpAnnotatedMessage[], EnqueueEventOptions)

إدراج الأحداث في المخزن المؤقت ليتم نشرها في Event Hub. إذا لم تكن هناك سعة في المخزن المؤقت عند استدعاء هذا الأسلوب، فإنه سينتظر حتى تصبح المساحة متاحة وتأكد من أن الأحداث قد تم ترتيبها في قائمة الانتظار.

عند إرجاع هذا الاستدعاء، تم قبول الأحداث في المخزن المؤقت، ولكن ربما لم يتم نشرها بعد. سيتم النشر في نقطة غير محددة في المستقبل عند معالجة المخزن المؤقت.

flush(BufferedFlushOptions)

يحاول نشر جميع الأحداث في المخزن المؤقت على الفور. قد يؤدي ذلك إلى نشر دفعات متعددة، سيتم الإبلاغ عن كل منها بشكل فردي من قبل onSendEventsSuccessHandler المعالجين و onSendEventsErrorHandler .

getEventHubProperties(GetEventHubPropertiesOptions)

يوفر معلومات وقت تشغيل Event Hub.

getPartitionIds(GetPartitionIdsOptions)

يوفر المعرف لكل قسم مقترن بمركز الأحداث.

getPartitionProperties(string, GetPartitionPropertiesOptions)

يوفر معلومات حول حالة القسم المحدد.

تفاصيل المنشئ

EventHubBufferedProducerClient(string, EventHubBufferedProducerClientOptions)

EventHubBufferedProducerClient يتم استخدام الفئة لإرسال الأحداث إلى Event Hub. options استخدم parmeter لتكوين نهج إعادة المحاولة أو إعدادات الوكيل.

new EventHubBufferedProducerClient(connectionString: string, options: EventHubBufferedProducerClientOptions)

المعلمات

connectionString

string

سلسلة الاتصال المراد استخدامها للاتصال بمثيل Event Hub. من المتوقع أن يتم تضمين خصائص المفتاح المشترك ومسار Event Hub في سلسلة الاتصال هذه. على سبيل المثال'Endpoint=sb://my-servicebus-namespace.servicebus.windows.net/;SharedAccessKeyName=my-SA-name; SharedAccessKey=my-SA-key; EntityPath=my-event-hub-name'.

options
EventHubBufferedProducerClientOptions

مجموعة من الخيارات لتطبيقها عند تكوين العميل.

  • retryOptions : تكوين نهج إعادة المحاولة لجميع العمليات على العميل. على سبيل المثال، { "maxRetries": 4 } أو { "maxRetries": 4, "retryDelayInMs": 30000 }.
  • webSocketOptions: تكوين قناة اتصال AMQP عبر مآخذ الويب.
  • userAgent : سلسلة لإلحاقها بسلسلة عامل المستخدم المضمنة التي يتم تمريرها إلى الخدمة.

EventHubBufferedProducerClient(string, string, EventHubBufferedProducerClientOptions)

EventHubBufferedProducerClient يتم استخدام الفئة لإرسال الأحداث إلى Event Hub. options استخدم parmeter لتكوين نهج إعادة المحاولة أو إعدادات الوكيل.

new EventHubBufferedProducerClient(connectionString: string, eventHubName: string, options: EventHubBufferedProducerClientOptions)

المعلمات

connectionString

string

سلسلة الاتصال المراد استخدامها للاتصال بمساحة اسم مراكز الأحداث. من المتوقع أن يتم تضمين خصائص المفتاح المشترك في سلسلة الاتصال هذه، ولكن ليس مسار Event Hub، مثل 'Endpoint=sb://my-servicebus-namespace.servicebus.windows.net/;SharedAccessKeyName=my-SA-name; SharedAccessKey=my-SA-key;'.

eventHubName

string

اسم Event Hub المحدد لتوصيل العميل به.

options
EventHubBufferedProducerClientOptions

مجموعة من الخيارات لتطبيقها عند تكوين العميل.

  • retryOptions : تكوين نهج إعادة المحاولة لجميع العمليات على العميل. على سبيل المثال، { "maxRetries": 4 } أو { "maxRetries": 4, "retryDelayInMs": 30000 }.
  • webSocketOptions: تكوين قناة اتصال AMQP عبر مآخذ الويب.
  • userAgent : سلسلة لإلحاقها بسلسلة عامل المستخدم المضمنة التي يتم تمريرها إلى الخدمة.

EventHubBufferedProducerClient(string, string, TokenCredential | NamedKeyCredential | SASCredential, EventHubBufferedProducerClientOptions)

EventHubBufferedProducerClient يتم استخدام الفئة لإرسال الأحداث إلى Event Hub. options استخدم parmeter لتكوين نهج إعادة المحاولة أو إعدادات الوكيل.

new EventHubBufferedProducerClient(fullyQualifiedNamespace: string, eventHubName: string, credential: TokenCredential | NamedKeyCredential | SASCredential, options: EventHubBufferedProducerClientOptions)

المعلمات

fullyQualifiedNamespace

string

مساحة الاسم الكاملة التي من المحتمل أن تكون مشابهة ل .servicebus.windows.net

eventHubName

string

اسم Event Hub المحدد لتوصيل العميل به.

credential

TokenCredential | NamedKeyCredential | SASCredential

عنصر بيانات اعتماد يستخدمه العميل للحصول على الرمز المميز لمصادقة الاتصال بخدمة Azure Event Hubs. راجع @azure/الهوية لإنشاء بيانات الاعتماد التي تدعم مصادقة AAD. AzureNamedKeyCredential استخدم من @azure/core-auth إذا كنت تريد تمرير SharedAccessKeyName و SharedAccessKey دون استخدام سلسلة اتصال. تعين هذه الحقول إلى name الحقلين و key على التوالي في AzureNamedKeyCredential. AzureSASCredential استخدم من @azure/core-auth إذا كنت تريد تمرير SharedAccessSignature دون استخدام سلسلة اتصال. يتم تعيين هذا الحقل إلى signature في AzureSASCredential.

options
EventHubBufferedProducerClientOptions

مجموعة من الخيارات التي يجب تطبيقها عند تكوين العميل.

  • retryOptions : تكوين نهج إعادة المحاولة لجميع العمليات على العميل. على سبيل المثال، { "maxRetries": 4 } أو { "maxRetries": 4, "retryDelayInMs": 30000 }.
  • webSocketOptions: تكوين قناة اتصال AMQP عبر مآخذ ويب.
  • userAgent : سلسلة لإلحاقها بسلسلة عامل المستخدم المضمنة التي يتم تمريرها إلى الخدمة.

تفاصيل الخاصية

eventHubName

اسم مثيل Event Hub الذي تم إنشاء هذا العميل له.

string eventHubName

قيمة الخاصية

string

fullyQualifiedNamespace

مساحة الاسم المؤهلة بالكامل لمثيل Event Hub الذي تم إنشاء هذا العميل له. من المحتمل أن يكون هذا مشابها ل .servicebus.windows.net.

string fullyQualifiedNamespace

قيمة الخاصية

string

identifier

الاسم المستخدم لتعريف EventHubBufferedProducerClient هذا. إذا لم يتم تحديده أو إفراغه، فسيتم إنشاء واحد فريد عشوائي.

identifier: string

قيمة الخاصية

string

تفاصيل الأسلوب

close(BufferedCloseOptions)

إغلاق اتصال AMQP بمثيل Event Hub، مع إرجاع وعد سيتم حله عند اكتمال قطع الاتصال.

سينتظر هذا حتى يتم مسح الأحداث المدرجة في قائمة الانتظار إلى الخدمة قبل إغلاق الاتصال. لإغلاق دون مسح، قم بتعيين flush الخيار إلى false.

function close(options?: BufferedCloseOptions): Promise<void>

المعلمات

options
BufferedCloseOptions

مجموعة الخيارات التي يجب تطبيقها على استدعاء العملية.

المرتجعات

Promise<void>

وعد

enqueueEvent(EventData | AmqpAnnotatedMessage, EnqueueEventOptions)

وضع حدث في المخزن المؤقت ليتم نشره في Event Hub. إذا لم تكن هناك سعة في المخزن المؤقت عند استدعاء هذا الأسلوب، فسينتظر توفر المساحة والتأكد من أن الحدث قد تم ترتيبه في قائمة الانتظار.

عند إرجاع هذا الاستدعاء، تم قبول الحدث في المخزن المؤقت، ولكن ربما لم يتم نشره بعد. سيتم النشر في نقطة غير محددة في المستقبل عند معالجة المخزن المؤقت.

function enqueueEvent(event: EventData | AmqpAnnotatedMessage, options?: EnqueueEventOptions): Promise<number>

المعلمات

options
EnqueueEventOptions

مجموعة من الخيارات التي يمكن تحديدها للتأثير على الطريقة التي يتم بها إرسال الحدث إلى Event Hub المقترن.

  • abortSignal : إشارة تستخدم لإلغاء عملية enqueueEvent.
  • partitionId : سيتم إرسال القسم الذي سيتم إرسال مجموعة الأحداث هذه إليه. إذا تم تعيينه، partitionKey فلا يمكن تعيينه.
  • partitionKey : قيمة متجزئة لإنتاج تعيين قسم. إذا تم تعيينه، partitionId فلا يمكن تعيينه.

المرتجعات

Promise<number>

العدد الإجمالي للأحداث المخزنة مؤقتا حاليا والمنتظرة للنشر، عبر جميع الأقسام.

enqueueEvents(EventData[] | AmqpAnnotatedMessage[], EnqueueEventOptions)

إدراج الأحداث في المخزن المؤقت ليتم نشرها في Event Hub. إذا لم تكن هناك سعة في المخزن المؤقت عند استدعاء هذا الأسلوب، فإنه سينتظر حتى تصبح المساحة متاحة وتأكد من أن الأحداث قد تم ترتيبها في قائمة الانتظار.

عند إرجاع هذا الاستدعاء، تم قبول الأحداث في المخزن المؤقت، ولكن ربما لم يتم نشرها بعد. سيتم النشر في نقطة غير محددة في المستقبل عند معالجة المخزن المؤقت.

function enqueueEvents(events: EventData[] | AmqpAnnotatedMessage[], options?: EnqueueEventOptions): Promise<number>

المعلمات

events

EventData[] | AmqpAnnotatedMessage[]

صفيف من EventData أو AmqpAnnotatedMessage.

options
EnqueueEventOptions

مجموعة من الخيارات التي يمكن تحديدها للتأثير على الطريقة التي يتم بها إرسال الأحداث إلى Event Hub المقترن.

  • abortSignal : إشارة تستخدم لإلغاء عملية enqueueEvents.
  • partitionId : سيتم إرسال القسم الذي سيتم إرسال مجموعة الأحداث هذه إليه. إذا تم تعيينه، partitionKey فلا يمكن تعيينه.
  • partitionKey : قيمة متجزئة لإنتاج تعيين قسم. إذا تم تعيينه، partitionId فلا يمكن تعيينه.

المرتجعات

Promise<number>

العدد الإجمالي للأحداث المخزنة مؤقتا حاليا والمنتظرة للنشر، عبر جميع الأقسام.

flush(BufferedFlushOptions)

يحاول نشر جميع الأحداث في المخزن المؤقت على الفور. قد يؤدي ذلك إلى نشر دفعات متعددة، سيتم الإبلاغ عن كل منها بشكل فردي من قبل onSendEventsSuccessHandler المعالجين و onSendEventsErrorHandler .

function flush(options?: BufferedFlushOptions): Promise<void>

المعلمات

options
BufferedFlushOptions

مجموعة الخيارات التي يجب تطبيقها على استدعاء العملية.

المرتجعات

Promise<void>

getEventHubProperties(GetEventHubPropertiesOptions)

يوفر معلومات وقت تشغيل Event Hub.

function getEventHubProperties(options?: GetEventHubPropertiesOptions): Promise<EventHubProperties>

المعلمات

options
GetEventHubPropertiesOptions

مجموعة الخيارات التي يجب تطبيقها على استدعاء العملية.

المرتجعات

وعد يحل بمعلومات حول مثيل Event Hub.

getPartitionIds(GetPartitionIdsOptions)

يوفر المعرف لكل قسم مقترن بمركز الأحداث.

function getPartitionIds(options?: GetPartitionIdsOptions): Promise<string[]>

المعلمات

options
GetPartitionIdsOptions

مجموعة الخيارات التي يجب تطبيقها على استدعاء العملية.

المرتجعات

Promise<string[]>

وعد يحل مع صفيف من السلاسل التي تمثل المعرف لكل قسم مقترن بمركز الأحداث.

getPartitionProperties(string, GetPartitionPropertiesOptions)

يوفر معلومات حول حالة القسم المحدد.

function getPartitionProperties(partitionId: string, options?: GetPartitionPropertiesOptions): Promise<PartitionProperties>

المعلمات

partitionId

string

معرف القسم المطلوب معلومات له.

options
GetPartitionPropertiesOptions

مجموعة الخيارات التي يجب تطبيقها على استدعاء العملية.

المرتجعات

وعد يحل بمعلومات حول حالة القسم .