Aracılığıyla paylaş


@azure/event-hubs package

Sınıflar

EventHubBufferedProducerClient

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

olayları EventHubBufferedProducerClient hemen yayımlamaz. Bunun yerine, olaylar arabelleğe alınıp toplu iş dolduğunda veya maxWaitTimeInMs yeni olay sıralanmamış olduğunda verimli bir şekilde toplu işlenip yayımlanabilir.

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 avantajlar 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ı olmayan 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 emin olun veya kullanılabilirliği en üst düzeye çıkarmanın gerekli olduğu durumlarda, öğesini kullanmanız EventHubProducerClient önerilir.

EventHubConsumerClient

EventHubConsumerClient sınıfı bir Olay Hub'ından olayları kullanmak için kullanılır.

Oluşturmanın birden çok yolu vardır EventHubConsumerClient

  • Olay Hub'ı örneğin için oluşturulan SAS ilkesinden bağlantı dizesi kullanın.
  • Olay Hub'ı ad alanınız için oluşturulan SAS ilkesinden bağlantı dizesi ve Olay Hub'ı örneğinin adını kullanın
  • gibi <yournamespace>.servicebus.windows.nettam ad alanını ve kimlik bilgileri nesnesini kullanın.

İsteğe bağlı olarak şunları da geçirebilirsiniz:

  • Yeniden deneme ilkesini veya ara sunucu ayarlarını yapılandırmak için bir seçenek paketi.
  • uygulamanız yeniden başlatıldığında olayları alma işleminin sürdürüleceği konumu belirlemek üzere denetim noktalarını okumak için istemci tarafından kullanılan bir denetim noktası deposu. Denetim noktası deposu, istemci tarafından uygulamanızın birden çok örneğini yük dengelemek için de kullanılır.
EventHubProducerClient

EventHubProducerClient sınıfı bir Olay Hub'ına olay göndermek için kullanılır.

Oluşturmanın birden çok yolu vardır EventHubProducerClient

  • Olay Hub'ı örneğin için oluşturulan SAS ilkesinden bağlantı dizesi kullanın.
  • Olay Hub'ı ad alanınız için oluşturulan SAS ilkesinden bağlantı dizesi ve Olay Hub'ı örneğinin adını kullanın
  • gibi <yournamespace>.servicebus.windows.nettam ad alanını ve kimlik bilgileri nesnesini kullanın.

İsteğe bağlı olarak, yeniden deneme ilkesini veya ara sunucu ayarlarını yapılandırmak için bir seçenek paketi de geçirebilirsiniz.

MessagingError

Mesajlaşma Hatası için temel sınıfı açıklar.

Arabirimler

BufferedCloseOptions

üzerinde EventHubBufferedProducerClientyöntemini yapılandırma close seçenekleri.

BufferedFlushOptions

üzerinde EventHubBufferedProducerClientyöntemini yapılandırma flush seçenekleri.

Checkpoint

Denetim noktası, olay hub'ı örneğindeki bir tüketici grubunun belirli bir bölümünden kullanıcı tarafından başarıyla işlenen son olayı temsil etmeye yöneliktir.

sınıfındaki updateCheckpoint()PartitionProcessor yöntemi kullanıcı tarafından çağrıldığında, dahili olarak bir Checkpoint oluşturulur. Daha sonra bir oluştururken EventProcessorkullanıcı tarafından seçilen tarafından CheckpointManager uygulanan depolama çözümünde depolanır.

Kullanıcıların hiçbir zaman doğrudan etkileşim Checkpoint kurmaları beklenmiyor. Bu arabirim, ve CheckpointManageriç çalışmalarını EventProcessor desteklemek için mevcuttur.

CheckpointStore

Denetim noktası deposu, bir olay hub'ı örneğinin belirli bir tüketici grubundaki her bölüm için bölüm sahipliği bilgilerini ve denetim noktası ayrıntılarını depolar ve alır.

Kullanıcıların uygulaması amaçlanmamıştır CheckpointStore. Kullanıcıların bu arabirimin mevcut uygulamalarını seçmesi, örneği oluşturması ve bir istemci örneği EventHubConsumerClient oluştururken sınıf oluşturucusna geçirmesi beklenir. Kullanıcıların denetim noktası deposundaki yöntemlerden hiçbirini kullanması beklenmez; bunlar istemci tarafından dahili olarak kullanılır.

CheckpointStore uygulamaları npm'de @azure/eventhub-checkpointstore- ön ekini içeren paketler aranarak bulunabilir.

CreateBatchOptions

üzerinde EventHubProducerClientyöntemini yapılandırma createBatch seçenekleri.

  • partitionKey : Bölüm ataması oluşturmak için karma değer.
  • maxSizeInBytes: Toplu iş boyutu için üst sınır.
  • abortSignal : Gönderme işlemini iptal etme isteğine bir sinyal.

Örnek kullanım:

{
    partitionKey: 'foo',
    maxSizeInBytes: 1024 * 1024 // 1 MB
}
EnqueueEventOptions

üzerinde EventHubBufferedProducerClientyöntemini yapılandırma enqueueEvents seçenekleri.

EventData

Olay Hub'ına gönderilecek verileri açıklayan arabirim. kullanırken EventHubProducerClientgönderilecek nesneyi oluştururken bunu başvuru olarak kullanın. Örneğin { body: "your-data" } veya olabilir.

{
   body: "your-data",
   properties: {
      propertyName: "property value"
   }
}
EventDataAdapterParameters

Olay veri bağdaştırıcısı oluşturan işlevin createEventDataAdapter parametreleri.

EventDataBatch

Olay Hub'ına olay göndermek için kullanılabilecek bir dizi olayı temsil eden arabirim.

Toplu işlemi oluşturmak için üzerinde EventHubProducerClientyöntemini kullanıncreateBatch(). Toplu işlemi göndermek için aynı istemcide yöntemini kullanın sendBatch() . Toplu işlemi doldurmak için, toplu iş üzerinde yöntemini kullanın tryAdd() .

EventHubBufferedProducerClientOptions

oluşturulurken EventHubBufferedProducerClientsağlanacak seçenekleri açıklar.

EventHubClientOptions

EventHubClient oluşturulurken sağlanacak seçenekleri açıklar.

  • userAgent : Hizmete bağlantı özelliği olarak geçirilen yerleşik kullanıcı aracısı dizesine eklenecek dize.
  • webSocketOptions : AMQP bağlantısının Web Yuvaları üzerinden kanallarını yapılandırma seçenekleri.
    • websocket : Bağlantıyı bir WebSocket üzerinden yapmayı seçerseniz AMQP bağlantısı oluşturmak için kullanılan WebSocket oluşturucu.
    • webSocketConstructorOptions : WebSocket üzerinden bağlantı oluşturmayı seçtiğinizde Websocket oluşturucusunun geçmesine yönelik seçenekler.
  • retryOptions : İstemci/üretici/tüketici üzerindeki tüm işlemler için yeniden deneme seçenekleri.
    • maxRetries : Yeniden denenebilir bir hata durumunda işlemin kaç kez yeniden denenebileceği.
    • maxRetryDelayInMs: Yeniden denemeler arasındaki maksimum gecikme. Yalnızca üstel yeniden denemeler gerçekleştirirken geçerlidir.
    • mode: Uygulanacak yeniden deneme modu, sabit listesi tarafından RetryMode belirtilir. Seçenekler ve FixedşeklindedirExponential. varsayılan olarak Fixedayarlanır.
    • retryDelayInMs: Bir sonraki denemeyi yapmadan önce milisaniye cinsinden beklenen süre. mode olarak ayarlandığındaExponential, yeniden denemeler arasındaki gecikmelerin katlanarak artırılmasını hesaplamak için kullanılır. Varsayılan: 30000 milisaniye.
    • timeoutInMs: İşlem zaman aşımına uğramadan önce milisaniye cinsinden beklenme süresi. Bu, kalan yeniden deneme girişimleri varsa yeniden denemeyi tetikler. Varsayılan değer: 60000 milisaniye.

Basit bir kullanım olabilir { "maxRetries": 4 }.

Örnek kullanım:

{
    retryOptions: {
        maxRetries: 4
    }
}
EventHubConnectionStringProperties

Olay Hub'ı bağlantı dizesi oluşturan özellikler kümesi.

EventHubConsumerClientOptions

EventHubConsumerClient oluşturulurken sağlanacak seçenekleri açıklar.

  • loadBalancingOptions: EventHubConsumerClient taleplerinin bölümleme şeklini ayarlama seçenekleri.
  • userAgent : Hizmete bağlantı özelliği olarak geçirilen yerleşik kullanıcı aracısı dizesine eklenecek dize.
  • webSocketOptions : AMQP bağlantısının Web Yuvaları üzerinden kanallarını yapılandırma seçenekleri.
    • websocket : Bağlantıyı bir WebSocket üzerinden yapmayı seçerseniz AMQP bağlantısı oluşturmak için kullanılan WebSocket oluşturucu.
    • webSocketConstructorOptions : WebSocket üzerinden bağlantı oluşturmayı seçtiğinizde Websocket oluşturucusunun geçmesine yönelik seçenekler.
  • retryOptions : İstemci/üretici/tüketici üzerindeki tüm işlemler için yeniden deneme seçenekleri.
    • maxRetries : Yeniden denenebilir bir hata durumunda işlemin kaç kez yeniden denenebileceği.
    • maxRetryDelayInMs: Yeniden denemeler arasındaki maksimum gecikme. Yalnızca üstel yeniden denemeler gerçekleştirirken geçerlidir.
    • mode: Uygulanacak yeniden deneme modu, sabit listesi tarafından RetryMode belirtilir. Seçenekler ve FixedşeklindedirExponential. varsayılan olarak Fixedayarlanır.
    • retryDelayInMs: Bir sonraki denemeyi yapmadan önce milisaniye cinsinden beklenen süre. mode olarak ayarlandığındaExponential, yeniden denemeler arasındaki gecikmelerin katlanarak artırılmasını hesaplamak için kullanılır. Varsayılan: 30000 milisaniye.
    • timeoutInMs: İşlem zaman aşımına uğramadan önce milisaniye cinsinden beklenme süresi. Bu, kalan yeniden deneme girişimleri varsa yeniden denemeyi tetikler. Varsayılan değer: 60000 milisaniye.

Basit bir kullanım olabilir { "maxRetries": 4 }.

Örnek kullanım:

{
    retryOptions: {
        maxRetries: 4
    }
}
EventHubProperties

Bir Olay Hub'ının çalışma zamanı bilgilerini açıklar.

EventPosition

Olay Hub'ı bölümündeki bir olayın konumunu temsil eder; genellikle olay almaya başlamak için bölümdeki konumu belirtmek için üzerinde yöntemini EventHubConsumerClient çağırırken subscribe() kullanılır.

Akışın başlangıcını veya sonunu temsil eden bir EventPosition almak için sırasıyla ve latestEventPosition sabitlerini earliestEventPosition kullanın.

GetEventHubPropertiesOptions

davranışını getEventHubPropertiesyapılandırmak için seçenekler kümesi.

  • abortSignal : İşlemi iptal etme isteğine sinyal vermek için arabiriminin bir uygulaması AbortSignalLike .
  • parentSpanSpan: Bu işlem çağrılırken oluşturulan yayılma alanı olarak parent kullanılacak veyaSpanContext.
GetPartitionIdsOptions

davranışını getPartitionIdsyapılandırmak için seçenekler kümesi.

  • abortSignal : İşlemi iptal etme isteğine sinyal vermek için arabiriminin bir uygulaması AbortSignalLike .
  • parentSpanSpan: Bu işlem çağrılırken oluşturulan yayılma alanı olarak parent kullanılacak veyaSpanContext.
GetPartitionPropertiesOptions

davranışını getPartitionPropertiesyapılandırmak için seçenekler kümesi.

  • abortSignal : İşlemi iptal etme isteğine sinyal vermek için arabiriminin bir uygulaması AbortSignalLike .
  • parentSpanSpan: Bu işlem çağrılırken oluşturulan yayılma alanı olarak parent kullanılacak veyaSpanContext.
LastEnqueuedEventProperties

Event Hubs hizmetinden olaylar alınırken tüketici tarafından gözlemlendiği gibi, bir bölümün son sıraya alınan olayı hakkında bilgi kümesi

LoadBalancingOptions

Yük dengeleme ayarlarını yapılandırmak için bir seçenek paketi.

OnSendEventsErrorContext

Olay Hub'ına başarıyla gönderilmeyen olayları, atandıkları bölümü ve gönderirken karşılaşılan hatayı içerir.

OnSendEventsSuccessContext

Olay Hub'ına başarıyla gönderilen olayları ve atandıkları bölümü içerir.

OperationOptions

İzlemeyi ve abortSignal'ı yapılandırma seçenekleri.

PartitionContext

bir parçası SubscriptionEventHandlersolan işlevlerin her birine geçirilen bağlamı açıklayan arabirim. Bu işlevlerden herhangi birini uygularken, bölüm ve denetim noktası özelliği hakkında bilgi almak için bağlam nesnesini kullanın.

PartitionOwnership

Bir Olay Hub'ı örneğinin tüketici grubundan belirli bir EventProcessor bölümün hangi örneğinin işlendiğine ilişkin ayrıntıları temsil eden bir arabirim.

Not: Bu, ve kullanıcının hiçbir zaman doğrudan oluşturması gerekmeyen EventProcessor bir şekilde dahili olarak kullanılır.

PartitionProperties

Bir EventHub Bölümünün çalışma zamanı bilgilerini açıklar.

ReceivedEventData

Olay Hub'ından alınan olayın yapısını açıklayan arabirim. kullanırken EventHubConsumerClientbir Olay Hub'ından alınan olayları işlemek için işlevini oluştururken processEvents bunu başvuru olarak kullanın.

RetryOptions

Modu, yeniden deneme sayısını, yeniden deneme aralığını vb. belirleyen yeniden deneme ilkesi seçenekleri.

SendBatchOptions

Bir olay dizisi gönderirken üzerinde EventHubProducerClient yöntemini yapılandırma sendBatch seçenekleri. ayarlanırsa partitionId ayarlanmamalıdır partitionKey ve tam tersi de yapılmamalıdır.

  • partitionId : Bu toplu işleminin gönderileceği bölüm.
  • partitionKey : Bölüm ataması oluşturmak için karma değer.
  • abortSignal : Gönderme işlemini iptal etmek için kullanılan bir sinyal.
SubscribeOptions

üzerinde EventHubConsumerClientyöntemini yapılandırma subscribe seçenekleri. Örneğin, { maxBatchSize: 20, maxWaitTimeInSeconds: 120, startPosition: { sequenceNumber: 123 } }

Subscription

üzerinde EventHubConsumerClientyöntemi tarafından subscribe() döndürülen nesneyi açıklayan arabirim.

SubscriptionEventHandlers

Olay Hub'ından olay almak için yöntemi çağrıldığında subscribe() tarafından çağrılan kullanıcı tarafından EventHubConsumerClient uygulanacak işlevleri açıklayan arabirim.

TokenCredential

Kimlik doğrulama belirteci sağlayabilen kimlik bilgilerini temsil eder.

TryAddOptions

sınıfındaki yönteminin tryAddEventDataBatch davranışını yapılandırma seçenekleri.

WebSocketImpl

WebSocket oluşturucularının gerekli şeklini açıklar.

WebSocketOptions

AMQP bağlantısının Web Yuvaları üzerinden kanallarını yapılandırma seçenekleri.

Tür Diğer Adları

ProcessCloseHandler

Bir bölümden olay almak için durduktan hemen sonra tarafından EventHubConsumerClient çağrılan kullanıcı tarafından sağlanan işlevin imzası.

ProcessErrorHandler

Olayları alırken veya kullanıcı tarafından sağlanan işlevlerden herhangi biri yöntemine geçirilirken oluşan hatalar için tarafından çağrılan EventHubConsumerClient kullanıcı tarafından sağlanan işlevin subscribe() imzası.

ProcessEventsHandler

Bir olay kümesi alındığında tarafından EventHubConsumerClient çağrılan kullanıcı tarafından sağlanan işlevin imzası.

ProcessInitializeHandler

Bir bölümden olay almaya başlamadan hemen önce tarafından EventHubConsumerClient çağrılan kullanıcı tarafından sağlanan işlevin imzası.

Numaralandırmalar

CloseReason

Olay Hub'ının tüketici grubundaki bir EventHubConsumerClient bölümden olayları işlemeyi durdurmanın farklı nedenlerini temsil eden bir sabit listesi.

RetryMode

Yeniden Deneme Modu türünü açıklar

İşlevler

createEventDataAdapter(EventDataAdapterParameters)

Olay veri bağdaştırıcısı oluşturan bir işlev. Bu bağdaştırıcı, olay verilerinin gövdesini kodlamak ve kodunu çözmek için ile @azure/schema-registry-avro birlikte kullanılabilir.

parseEventHubConnectionString(string)

verilen bağlantı dizesi Azure Event Hubs için geçerli olan farklı özelliklere ayrıştırın. Özellikler daha sonra bir EventHubProducerClient veya EventHubConsumerClient oluşturmak için yararlıdır.

İşlev Ayrıntıları

createEventDataAdapter(EventDataAdapterParameters)

Olay veri bağdaştırıcısı oluşturan bir işlev. Bu bağdaştırıcı, olay verilerinin gövdesini kodlamak ve kodunu çözmek için ile @azure/schema-registry-avro birlikte kullanılabilir.

function createEventDataAdapter(params?: EventDataAdapterParameters): MessageAdapter<EventData>

Parametreler

params
EventDataAdapterParameters

olay verilerini oluşturmak için parametreler

Döndürülenler

MessageAdapter<EventData>

Olay verilerini oluşturabilen ve tüketebilen bir olay veri bağdaştırıcısı

parseEventHubConnectionString(string)

verilen bağlantı dizesi Azure Event Hubs için geçerli olan farklı özelliklere ayrıştırın. Özellikler daha sonra bir EventHubProducerClient veya EventHubConsumerClient oluşturmak için yararlıdır.

function parseEventHubConnectionString(connectionString: string): Readonly<EventHubConnectionStringProperties>

Parametreler

connectionString

string

Event Hubs ad alanı için oluşturulan Paylaşılan Erişim İlkesi ile ilişkili bağlantı dizesi.

Döndürülenler