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 durumunuonSendEventsSuccessHandler
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
Event |
|
Event |
|
Event |
|
Özellikler
event |
Bu istemcinin oluşturulduğu Olay Hub'ı örneğinin adı. |
fully |
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(Buffered |
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 |
enqueue |
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. |
enqueue |
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(Buffered |
Arabellekteki tüm olayları hemen yayımlamayı dener.
Bu, birden çok toplu işlemin yayımlanmasıyla sonuçlanabilir ve her birinin sonucu ve |
get |
Event Hub çalışma zamanı bilgilerini sağlar. |
get |
Olay Hub'ı ile ilişkili her bölümün kimliğini sağlar. |
get |
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'.
İ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ı.
İ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
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 AzureNamedKeyCredential
eşlername
.
AzureSASCredential
Bağlantı dizesi kullanmadan geçirmek istiyorsanız SharedAccessSignature
from @azure/core-auth komutunu kullanın. Bu alan içinde AzureSASCredential
ile signature
eşler.
İ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 false
ayarlayı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
- event
- 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ıysapartitionKey
ayarlanamaz. -
partitionKey
: Bölüm ataması oluşturmak için karma değer. AyarlandıysapartitionId
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 veya AmqpAnnotatedMessage
dizisi.
- 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ıysapartitionKey
ayarlanamaz. -
partitionKey
: Bölüm ataması oluşturmak için karma değer. AyarlandıysapartitionId
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
Promise<EventHubProperties>
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
Promise<PartitionProperties>
Bölümün durumu hakkındaki bilgilerle çözümleyen bir söz.