Aracılığıyla paylaş


EventHubBufferedProducerClient class

EventHubBufferedProducerClient, olayları belirli bir Olay Hub'ına yayımlamak için kullanılır.

olayları EventHubBufferedProducerClient hemen yayımlamaz. Bunun yerine, olaylar etkin bir şekilde toplu işlenip toplu iş dolduğunda veya maxWaitTimeInMs yeni olay sıraya alınmadığında yayımlanabilmeleri için arabelleğe alınmıştır.

Olaylar sıralandığında belirtilen seçeneklere bağlı olarak, bunlar otomatik olarak bir bölüme atanabilir, belirtilen bölüm anahtarına göre gruplandırılabilir veya özel olarak istenen bir bölüme atanabilir.

Bu model, olayların ne zaman yayımlanacakları konusunda belirleyici olmayan bir zamanlama karşılığında çağıranlardan toplu iş yönetimi yükünü kaydırmaya yöneliktir. Dikkate alınması gereken ek dezavantajlar da vardır:

  • Uygulama kilitlenirse arabellekteki olaylar yayımlanmaz. Veri kaybını önlemek için çağıranların ve onSendEventsErrorHandler işleyicilerini kullanarak yayımlama ilerleme durumunu onSendEventsSuccessHandler izlemesi teşvik edilir.
  • Bölüm anahtarı belirten olaylara, diğer üreticilerle aynı anahtarı kullananlardan farklı bir bölüm atanabilir.
  • Bir bölümün geçici olarak kullanılamaz duruma gelmesi olası bir durumda, öğesinin EventHubBufferedProducerClient kurtarılması diğer üreticilere göre daha uzun sürebilir.

Olayların belirlenimci bir sonuçla hemen yayımlanmasının önemli olduğu senaryolarda, bölüm anahtarlarının diğer yayımcılarla tutarlı bir bölüme atandığından veya kullanılabilirliği en üst düzeye çıkarmanın bir gereksinim olduğu durumlarda kullanılması EventHubProducerClient önerilir.

Oluşturucular

EventHubBufferedProducerClient(string, EventHubBufferedProducerClientOptions)

EventHubBufferedProducerClient sınıfı bir Olay Hub'ına olay göndermek için kullanılır. options Yeniden deneme ilkesini veya ara sunucu ayarlarını yapılandırmak için parmeter'ı kullanın.

EventHubBufferedProducerClient(string, string, EventHubBufferedProducerClientOptions)

EventHubBufferedProducerClient sınıfı bir Olay Hub'ına olay göndermek için kullanılır. options Yeniden deneme ilkesini veya ara sunucu ayarlarını yapılandırmak için parmeter'ı kullanın.

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

EventHubBufferedProducerClient sınıfı bir Olay Hub'ına olay göndermek için kullanılır. options Yeniden deneme ilkesini veya ara sunucu ayarlarını yapılandırmak için parmeter'ı kullanın.

Özellikler

eventHubName

Bu istemcinin oluşturulduğu Olay Hub'ı örneğinin adı.

fullyQualifiedNamespace

Bu istemcinin oluşturulduğu Event Hub örneğinin tam ad alanı. Bu büyük olasılıkla .servicebus.windows.net'a benzer.

identifier

Bu EventHubBufferedProducerClient'ı tanımlamak için kullanılan ad. Belirtilmezse veya boşsa rastgele benzersiz bir tane oluşturulur.

Yöntemler

close(BufferedCloseOptions)

Olay Hub'ı örneğine yönelik AMQP bağlantısını kapatır ve bağlantı kesilmesi tamamlandığında çözülecek bir söz döndürür.

Bu işlem, bağlantıyı kapatmadan önce sıraya alınan olayların hizmete boşaltılması için bekler. Boşaltmadan kapatmak için seçeneğini olarak falseayarlayınflush.

enqueueEvent(EventData | AmqpAnnotatedMessage, EnqueueEventOptions)

Bir olayı Olay Hub'ına yayımlanacak arabelleğe sıralar. Bu yöntem çağrıldığında arabellekte kapasite yoksa alanın kullanılabilir olmasını bekler ve olayın sıraya alınmış olduğundan emin olur.

Bu çağrı döndürdüğünde, olay arabelleğe kabul edilir, ancak henüz yayımlanmamış olabilir. Yayımlama, arabellek işlenirken gelecekte belirleyici olmayan bir noktada gerçekleşecektir.

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

Olayları Olay Hub'ına yayımlanacak arabelleğe sıralar. Bu yöntem çağrıldığında arabellekte kapasite yoksa, alanın kullanılabilir olmasını bekler ve olayların sıralandığından emin olur.

Bu çağrı döndürdüğünde olaylar arabelleğe kabul edilir, ancak henüz yayımlanmamış olabilir. Yayımlama, arabellek işlenirken gelecekte belirleyici olmayan bir noktada gerçekleşecektir.

flush(BufferedFlushOptions)

Arabellekteki tüm olayları hemen yayımlamayı dener. Bu, birden çok toplu işlemin yayımlanmasıyla sonuçlanabilir ve her birinin sonucu ve onSendEventsErrorHandler işleyicileri tarafından onSendEventsSuccessHandler ayrı ayrı raporlanır.

getEventHubProperties(GetEventHubPropertiesOptions)

Event Hub çalışma zamanı bilgilerini sağlar.

getPartitionIds(GetPartitionIdsOptions)

Olay Hub'ı ile ilişkili her bölümün kimliğini sağlar.

getPartitionProperties(string, GetPartitionPropertiesOptions)

Belirtilen bölümün durumu hakkında bilgi sağlar.

Oluşturucu Ayrıntıları

EventHubBufferedProducerClient(string, EventHubBufferedProducerClientOptions)

EventHubBufferedProducerClient sınıfı bir Olay Hub'ına olay göndermek için kullanılır. options Yeniden deneme ilkesini veya ara sunucu ayarlarını yapılandırmak için parmeter'ı kullanın.

new EventHubBufferedProducerClient(connectionString: string, options: EventHubBufferedProducerClientOptions)

Parametreler

connectionString

string

Event Hub örneğine bağlanmak için kullanılacak bağlantı dizesi. Paylaşılan anahtar özelliklerinin ve Olay Hub'ı yolunun bu bağlantı dizesinde bulunması beklenir. Örneğin'Endpoint=sb://my-servicebus-namespace.servicebus.windows.net/;SharedAccessKeyName=my-SA-name; SharedAccessKey=my-SA-key; EntityPath=my-event-hub-name'.

options
EventHubBufferedProducerClientOptions

İstemciyi yapılandırırken uygulanacak bir dizi seçenek.

  • retryOptions : İstemcideki tüm işlemler için yeniden deneme ilkesini yapılandırılır. Örneğin { "maxRetries": 4 } veya { "maxRetries": 4, "retryDelayInMs": 30000 } olabilir.
  • webSocketOptions: AMQP bağlantısının Web Yuvaları üzerinden kanalını yapılandırır.
  • userAgent : Hizmete geçirilen yerleşik kullanıcı aracısı dizesine eklenecek dize.

EventHubBufferedProducerClient(string, string, EventHubBufferedProducerClientOptions)

EventHubBufferedProducerClient sınıfı bir Olay Hub'ına olay göndermek için kullanılır. options Yeniden deneme ilkesini veya ara sunucu ayarlarını yapılandırmak için parmeter'ı kullanın.

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

Parametreler

connectionString

string

Event Hubs ad alanına bağlanmak için kullanılacak bağlantı dizesi. Paylaşılan anahtar özelliklerinin bu bağlantı dizesinde bulunması beklenir, ancak Olay Hub'ı yolunda yer almaması beklenir; örneğin, 'Endpoint=sb://my-servicebus-namespace.servicebus.windows.net/;SharedAccessKeyName=my-SA-name; SharedAccessKey=my-SA-key;'.

eventHubName

string

İstemcinin bağlanacak olay hub'ının adı.

options
EventHubBufferedProducerClientOptions

İstemciyi yapılandırırken uygulanacak bir dizi seçenek.

  • retryOptions : İstemcideki tüm işlemler için yeniden deneme ilkesini yapılandırılır. Örneğin { "maxRetries": 4 } veya { "maxRetries": 4, "retryDelayInMs": 30000 } olabilir.
  • webSocketOptions: AMQP bağlantısının Web Yuvaları üzerinden kanalını yapılandırır.
  • userAgent : Hizmete geçirilen yerleşik kullanıcı aracısı dizesine eklenecek dize.

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

EventHubBufferedProducerClient sınıfı bir Olay Hub'ına olay göndermek için kullanılır. options Yeniden deneme ilkesini veya ara sunucu ayarlarını yapılandırmak için parmeter'ı kullanın.

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

Parametreler

fullyQualifiedNamespace

string

.servicebus.windows.net benzer olabilecek tam ad alanı

eventHubName

string

İstemcinin bağlanacak olay hub'ının adı.

credential

TokenCredential | NamedKeyCredential | SASCredential

Azure Event Hubs hizmetiyle bağlantının kimliğini doğrulamak üzere belirteci almak için istemci tarafından kullanılan bir kimlik bilgisi nesnesi. AAD kimlik doğrulamasını destekleyen kimlik bilgileri oluşturmak için bkz. @azure/kimlik. AzureNamedKeyCredential bağlantı dizesi kullanmadan ve SharedAccessKey geçirmek istiyorsanız SharedAccessKeyName from @azure/core-auth komutunu kullanın. Bu alanlar, içinde sırasıyla ve key alanıyla AzureNamedKeyCredentialeşlername. AzureSASCredential Bağlantı dizesi kullanmadan geçirmek istiyorsanız SharedAccessSignature from @azure/core-auth komutunu kullanın. Bu alan içinde AzureSASCredentialile signature eşler.

options
EventHubBufferedProducerClientOptions

İstemciyi yapılandırırken uygulanacak bir dizi seçenek.

  • retryOptions : İstemcideki tüm işlemler için yeniden deneme ilkesini yapılandırılır. Örneğin { "maxRetries": 4 } veya { "maxRetries": 4, "retryDelayInMs": 30000 } olabilir.
  • webSocketOptions: AMQP bağlantısının Web Yuvaları üzerinden kanalını yapılandırır.
  • userAgent : Hizmete geçirilen yerleşik kullanıcı aracısı dizesine eklenecek dize.

Özellik Ayrıntıları

eventHubName

Bu istemcinin oluşturulduğu Olay Hub'ı örneğinin adı.

string eventHubName

Özellik Değeri

string

fullyQualifiedNamespace

Bu istemcinin oluşturulduğu Event Hub örneğinin tam ad alanı. Bu büyük olasılıkla .servicebus.windows.net'a benzer.

string fullyQualifiedNamespace

Özellik Değeri

string

identifier

Bu EventHubBufferedProducerClient'ı tanımlamak için kullanılan ad. Belirtilmezse veya boşsa rastgele benzersiz bir tane oluşturulur.

identifier: string

Özellik Değeri

string

Yöntem Ayrıntıları

close(BufferedCloseOptions)

Olay Hub'ı örneğine yönelik AMQP bağlantısını kapatır ve bağlantı kesilmesi tamamlandığında çözülecek bir söz döndürür.

Bu işlem, bağlantıyı kapatmadan önce sıraya alınan olayların hizmete boşaltılması için bekler. Boşaltmadan kapatmak için seçeneğini olarak falseayarlayınflush.

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

Parametreler

options
BufferedCloseOptions

İşlem çağrısına uygulanacak seçenekler kümesi.

Döndürülenler

Promise<void>

Söz

enqueueEvent(EventData | AmqpAnnotatedMessage, EnqueueEventOptions)

Bir olayı Olay Hub'ına yayımlanacak arabelleğe sıralar. Bu yöntem çağrıldığında arabellekte kapasite yoksa alanın kullanılabilir olmasını bekler ve olayın sıraya alınmış olduğundan emin olur.

Bu çağrı döndürdüğünde, olay arabelleğe kabul edilir, ancak henüz yayımlanmamış olabilir. Yayımlama, arabellek işlenirken gelecekte belirleyici olmayan bir noktada gerçekleşecektir.

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

Parametreler

options
EnqueueEventOptions

Olayın ilişkili Olay Hub'ına gönderilme biçimini etkilemek için belirtilebilen bir dizi seçenek.

  • abortSignal : enqueueEvent işlemini iptal etmek için kullanılan sinyal.
  • partitionId : Bu olay kümesinin gönderileceği bölüm. Ayarlandıysa partitionKey ayarlanamaz.
  • partitionKey : Bölüm ataması oluşturmak için karma değer. Ayarlandıysa partitionId ayarlanamaz.

Döndürülenler

Promise<number>

Tüm bölümlerde arabelleğe alınmış ve yayımlanmayı bekleyen olayların toplam sayısı.

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

Olayları Olay Hub'ına yayımlanacak arabelleğe sıralar. Bu yöntem çağrıldığında arabellekte kapasite yoksa, alanın kullanılabilir olmasını bekler ve olayların sıralandığından emin olur.

Bu çağrı döndürdüğünde olaylar arabelleğe kabul edilir, ancak henüz yayımlanmamış olabilir. Yayımlama, arabellek işlenirken gelecekte belirleyici olmayan bir noktada gerçekleşecektir.

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

Parametreler

events

EventData[] | AmqpAnnotatedMessage[]

EventData veya AmqpAnnotatedMessagedizisi.

options
EnqueueEventOptions

Olayların ilişkili Olay Hub'ına gönderilme şeklini etkilemek için belirtilebilen bir dizi seçenek.

  • abortSignal : enqueueEvents işlemini iptal etmek için kullanılan sinyal.
  • partitionId : Bu olay kümesinin gönderileceği bölüm. Ayarlandıysa partitionKey ayarlanamaz.
  • partitionKey : Bölüm ataması oluşturmak için karma değer. Ayarlandıysa partitionId ayarlanamaz.

Döndürülenler

Promise<number>

Tüm bölümlerde arabelleğe alınmış ve yayımlanmayı bekleyen olayların toplam sayısı.

flush(BufferedFlushOptions)

Arabellekteki tüm olayları hemen yayımlamayı dener. Bu, birden çok toplu işlemin yayımlanmasıyla sonuçlanabilir ve her birinin sonucu ve onSendEventsErrorHandler işleyicileri tarafından onSendEventsSuccessHandler ayrı ayrı raporlanır.

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

Parametreler

options
BufferedFlushOptions

İşlem çağrısına uygulanacak seçenekler kümesi.

Döndürülenler

Promise<void>

getEventHubProperties(GetEventHubPropertiesOptions)

Event Hub çalışma zamanı bilgilerini sağlar.

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

Parametreler

options
GetEventHubPropertiesOptions

İşlem çağrısına uygulanacak seçenekler kümesi.

Döndürülenler

Olay Hub'ı örneği hakkındaki bilgilerle çözülen bir söz.

getPartitionIds(GetPartitionIdsOptions)

Olay Hub'ı ile ilişkili her bölümün kimliğini sağlar.

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

Parametreler

options
GetPartitionIdsOptions

İşlem çağrısına uygulanacak seçenekler kümesi.

Döndürülenler

Promise<string[]>

Olay Hub'ı ile ilişkili her bölümün kimliğini temsil eden dize dizisiyle çözümleyen bir söz.

getPartitionProperties(string, GetPartitionPropertiesOptions)

Belirtilen bölümün durumu hakkında bilgi sağlar.

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

Parametreler

partitionId

string

Bilgilerin gerekli olduğu bölümün kimliği.

options
GetPartitionPropertiesOptions

İşlem çağrısına uygulanacak seçenekler kümesi.

Döndürülenler

Bölümün durumu hakkındaki bilgilerle çözümleyen bir söz.