EventHubBufferedProducerClient class
Element EventHubBufferedProducerClient
służy do publikowania zdarzeń w określonym centrum zdarzeń.
Element EventHubBufferedProducerClient
nie publikuje natychmiast zdarzeń.
Zamiast tego zdarzenia są buforowane, dzięki czemu mogą być wydajnie wsadowe i publikowane, gdy partia jest pełna lub maxWaitTimeInMs
upłynął bez nowych zdarzeń w kolejce.
W zależności od opcji określonych, gdy zdarzenia są w kolejce, mogą być automatycznie przypisywane do partycji, pogrupowane zgodnie z określonym kluczem partycji lub przypisane specjalnie żądanej partycji.
Ten model ma na celu przesunięcie obciążenia związane z zarządzaniem wsadowym od wywołujących, kosztem czasu niedeterministycznego, w przypadku, gdy zdarzenia zostaną opublikowane. Istnieją dodatkowe kompromisy, które należy wziąć pod uwagę, a także:
- Jeśli aplikacja ulegnie awarii, zdarzenia w buforze nie zostaną opublikowane. Aby zapobiec utracie danych, zachęcamy osoby wywołujące do śledzenia postępu publikowania przy użyciu programów
onSendEventsSuccessHandler
obsługi i .onSendEventsErrorHandler
- Zdarzenia określające klucz partycji mogą mieć przypisaną inną partycję niż te, które używają tego samego klucza z innymi producentami.
- W mało prawdopodobnym przypadku, gdy partycja stanie się tymczasowo niedostępna,
EventHubBufferedProducerClient
odzyskiwanie może potrwać dłużej niż inni producenci.
W scenariuszach, w których ważne jest, aby zdarzenia były publikowane natychmiast z wynikiem deterministycznym, upewnij się, że klucze partycji są przypisane do partycji spójnej z innymi wydawcami lub gdy maksymalizacja dostępności jest wymagana, użycie elementu EventHubProducerClient
jest zalecane.
Konstruktory
Event |
Klasa |
Event |
Klasa |
Event |
Klasa |
Właściwości
event |
Nazwa wystąpienia centrum zdarzeń, dla którego jest tworzony ten klient. |
fully |
W pełni kwalifikowana przestrzeń nazw wystąpienia centrum zdarzeń, dla którego jest tworzony ten klient. Prawdopodobnie będzie to podobne do .servicebus.windows.net. |
identifier | Nazwa używana do identyfikowania tego elementu EventHubBufferedProducerClient. Jeśli nie zostanie określony lub pusty, zostanie wygenerowany losowy unikatowy. |
Metody
close(Buffered |
Zamyka połączenie AMQP z wystąpieniem centrum zdarzeń, zwracając obietnicę, która zostanie rozwiązana po zakończeniu rozłączenia. Spowoduje to oczekiwanie na opróżnienie zdarzeń w kolejce do usługi przed zamknięciem połączenia.
Aby zamknąć bez opróżniania, ustaw |
enqueue |
Umieszcza zdarzenie w kolejce do buforu, który ma zostać opublikowany w centrum zdarzeń. Jeśli podczas wywoływanej metody nie ma pojemności w buforze, zaczeka na udostępnienie miejsca i upewnienie się, że zdarzenie zostało w kolejce. Po powrocie tego wywołania zdarzenie zostało zaakceptowane w buforze, ale mogło jeszcze nie zostać opublikowane. Publikowanie będzie odbywać się w nieokreślonym punkcie w przyszłości podczas przetwarzania buforu. |
enqueue |
Umieszcza zdarzenia w kolejce do buforu, który ma zostać opublikowany w centrum zdarzeń. Jeśli podczas wywoływanej metody nie ma pojemności w buforze, poczeka na udostępnienie miejsca i upewnij się, że zdarzenia zostały umieszczone w kolejce. Gdy to wywołanie zwróci, zdarzenia zostały zaakceptowane w buforze, ale mogły nie zostać jeszcze opublikowane. Publikowanie będzie odbywać się w nieokreślonym punkcie w przyszłości podczas przetwarzania buforu. |
flush(Buffered |
Próbuje natychmiast opublikować wszystkie zdarzenia w buforze.
Może to spowodować opublikowanie wielu partii. Wynik każdego z nich będzie zgłaszany indywidualnie przez |
get |
Udostępnia informacje o środowisku uruchomieniowym centrum zdarzeń. |
get |
Zawiera identyfikator każdej partycji skojarzonej z centrum zdarzeń. |
get |
Zawiera informacje o stanie określonej partycji. |
Szczegóły konstruktora
EventHubBufferedProducerClient(string, EventHubBufferedProducerClientOptions)
Klasa EventHubBufferedProducerClient
służy do wysyłania zdarzeń do centrum zdarzeń.
Użyj parametru options
, aby skonfigurować zasady ponawiania prób lub ustawienia serwera proxy.
new EventHubBufferedProducerClient(connectionString: string, options: EventHubBufferedProducerClientOptions)
Parametry
- connectionString
-
string
Parametry połączenia używane do nawiązywania połączenia z wystąpieniem centrum zdarzeń. Oczekuje się, że właściwości klucza współużytkowanego i ścieżka centrum zdarzeń znajdują się w tych parametrach połączenia. np. "Endpoint=sb://my-servicebus-namespace.servicebus.windows.net/;SharedAccessKeyName=my-SA-name; SharedAccessKey=my-SA-key; EntityPath=my-event-hub-name'.
Zestaw opcji do zastosowania podczas konfigurowania klienta.
-
retryOptions
: Konfiguruje zasady ponawiania dla wszystkich operacji na kliencie. Na przykład:{ "maxRetries": 4 }
lub{ "maxRetries": 4, "retryDelayInMs": 30000 }
. -
webSocketOptions
: konfiguruje channelling połączenia AMQP za pośrednictwem web sockets. -
userAgent
: ciąg dołączany do wbudowanego ciągu agenta użytkownika, który jest przekazywany do usługi.
EventHubBufferedProducerClient(string, string, EventHubBufferedProducerClientOptions)
Klasa EventHubBufferedProducerClient
służy do wysyłania zdarzeń do centrum zdarzeń.
Użyj parametru options
, aby skonfigurować zasady ponawiania prób lub ustawienia serwera proxy.
new EventHubBufferedProducerClient(connectionString: string, eventHubName: string, options: EventHubBufferedProducerClientOptions)
Parametry
- connectionString
-
string
Parametry połączenia używane do nawiązywania połączenia z przestrzenią nazw usługi Event Hubs. Oczekiwano, że właściwości klucza współużytkowanego znajdują się w tych parametrach połączenia, ale nie w ścieżce centrum zdarzeń, np. "Endpoint=sb://my-servicebus-namespace.servicebus.windows.net/;SharedAccessKeyName=my-SA-name; SharedAccessKey=my-SA-key;'.
- eventHubName
-
string
Nazwa określonego centrum zdarzeń do połączenia klienta.
Zestaw opcji do zastosowania podczas konfigurowania klienta.
-
retryOptions
: Konfiguruje zasady ponawiania dla wszystkich operacji na kliencie. Na przykład:{ "maxRetries": 4 }
lub{ "maxRetries": 4, "retryDelayInMs": 30000 }
. -
webSocketOptions
: konfiguruje channelling połączenia AMQP za pośrednictwem web sockets. -
userAgent
: ciąg dołączany do wbudowanego ciągu agenta użytkownika, który jest przekazywany do usługi.
EventHubBufferedProducerClient(string, string, TokenCredential | NamedKeyCredential | SASCredential, EventHubBufferedProducerClientOptions)
Klasa EventHubBufferedProducerClient
służy do wysyłania zdarzeń do centrum zdarzeń.
Użyj parametru options
, aby skonfigurować zasady ponawiania prób lub ustawienia serwera proxy.
new EventHubBufferedProducerClient(fullyQualifiedNamespace: string, eventHubName: string, credential: TokenCredential | NamedKeyCredential | SASCredential, options: EventHubBufferedProducerClientOptions)
Parametry
- fullyQualifiedNamespace
-
string
Pełna przestrzeń nazw, która prawdopodobnie będzie podobna do .servicebus.windows.net
- eventHubName
-
string
Nazwa określonego centrum zdarzeń do połączenia klienta.
- credential
Obiekt poświadczeń używany przez klienta do uzyskiwania tokenu w celu uwierzytelnienia połączenia z usługą Azure Event Hubs.
Zobacz @azure/tożsamość, aby utworzyć poświadczenia obsługujące uwierzytelnianie usługi AAD. Użyj polecenia AzureNamedKeyCredential
from @azure/core-auth, jeśli chcesz przekazać SharedAccessKeyName
SharedAccessKey
parametry połączenia i bez użycia parametrów połączenia. Te pola są mapowanie odpowiednio na name
pola i key
w elemecie AzureNamedKeyCredential
.
Użyj polecenia AzureSASCredential
from @azure/core-auth, jeśli chcesz przekazać SharedAccessSignature
element bez użycia parametrów połączenia. To pole jest mapowe na signature
w pliku AzureSASCredential
.
Zestaw opcji do zastosowania podczas konfigurowania klienta.
-
retryOptions
: Konfiguruje zasady ponawiania dla wszystkich operacji na kliencie. Na przykład:{ "maxRetries": 4 }
lub{ "maxRetries": 4, "retryDelayInMs": 30000 }
. -
webSocketOptions
: konfiguruje channelling połączenia AMQP za pośrednictwem web sockets. -
userAgent
: ciąg dołączany do wbudowanego ciągu agenta użytkownika, który jest przekazywany do usługi.
Szczegóły właściwości
eventHubName
Nazwa wystąpienia centrum zdarzeń, dla którego jest tworzony ten klient.
string eventHubName
Wartość właściwości
string
fullyQualifiedNamespace
W pełni kwalifikowana przestrzeń nazw wystąpienia centrum zdarzeń, dla którego jest tworzony ten klient. Prawdopodobnie będzie to podobne do .servicebus.windows.net.
string fullyQualifiedNamespace
Wartość właściwości
string
identifier
Nazwa używana do identyfikowania tego elementu EventHubBufferedProducerClient. Jeśli nie zostanie określony lub pusty, zostanie wygenerowany losowy unikatowy.
identifier: string
Wartość właściwości
string
Szczegóły metody
close(BufferedCloseOptions)
Zamyka połączenie AMQP z wystąpieniem centrum zdarzeń, zwracając obietnicę, która zostanie rozwiązana po zakończeniu rozłączenia.
Spowoduje to oczekiwanie na opróżnienie zdarzeń w kolejce do usługi przed zamknięciem połączenia.
Aby zamknąć bez opróżniania, ustaw flush
opcję na false
.
function close(options?: BufferedCloseOptions): Promise<void>
Parametry
- options
- BufferedCloseOptions
Zestaw opcji do zastosowania do wywołania operacji.
Zwraca
Promise<void>
Obietnica
enqueueEvent(EventData | AmqpAnnotatedMessage, EnqueueEventOptions)
Umieszcza zdarzenie w kolejce do buforu, który ma zostać opublikowany w centrum zdarzeń. Jeśli podczas wywoływanej metody nie ma pojemności w buforze, zaczeka na udostępnienie miejsca i upewnienie się, że zdarzenie zostało w kolejce.
Po powrocie tego wywołania zdarzenie zostało zaakceptowane w buforze, ale mogło jeszcze nie zostać opublikowane. Publikowanie będzie odbywać się w nieokreślonym punkcie w przyszłości podczas przetwarzania buforu.
function enqueueEvent(event: EventData | AmqpAnnotatedMessage, options?: EnqueueEventOptions): Promise<number>
Parametry
- event
- options
- EnqueueEventOptions
Zestaw opcji, które można określić, aby wpływać na sposób, w jaki zdarzenie jest wysyłane do skojarzonego centrum zdarzeń.
-
abortSignal
: sygnał używany do anulowania operacji enqueueEvent. -
partitionId
: partycja, do których zostanie wysłany ten zestaw zdarzeń. W przypadku ustawieniapartitionKey
nie można ustawić. -
partitionKey
: wartość skrótu w celu utworzenia przypisania partycji. W przypadku ustawieniapartitionId
nie można ustawić.
Zwraca
Promise<number>
Łączna liczba zdarzeń, które są obecnie buforowane i oczekujące na opublikowanie, we wszystkich partycjach.
enqueueEvents(EventData[] | AmqpAnnotatedMessage[], EnqueueEventOptions)
Umieszcza zdarzenia w kolejce do buforu, który ma zostać opublikowany w centrum zdarzeń. Jeśli podczas wywoływanej metody nie ma pojemności w buforze, poczeka na udostępnienie miejsca i upewnij się, że zdarzenia zostały umieszczone w kolejce.
Gdy to wywołanie zwróci, zdarzenia zostały zaakceptowane w buforze, ale mogły nie zostać jeszcze opublikowane. Publikowanie będzie odbywać się w nieokreślonym punkcie w przyszłości podczas przetwarzania buforu.
function enqueueEvents(events: EventData[] | AmqpAnnotatedMessage[], options?: EnqueueEventOptions): Promise<number>
Parametry
- events
Tablica eventData lub AmqpAnnotatedMessage
.
- options
- EnqueueEventOptions
Zestaw opcji, które można określić, aby wpływać na sposób, w jaki zdarzenia są wysyłane do skojarzonego centrum zdarzeń.
-
abortSignal
: sygnał używany do anulowania operacji enqueueEvents. -
partitionId
: partycja, do których zostanie wysłany ten zestaw zdarzeń. W przypadku ustawieniapartitionKey
nie można ustawić. -
partitionKey
: wartość skrótu w celu utworzenia przypisania partycji. W przypadku ustawieniapartitionId
nie można ustawić.
Zwraca
Promise<number>
Łączna liczba zdarzeń, które są obecnie buforowane i oczekujące na opublikowanie, we wszystkich partycjach.
flush(BufferedFlushOptions)
Próbuje natychmiast opublikować wszystkie zdarzenia w buforze.
Może to spowodować opublikowanie wielu partii. Wynik każdego z nich będzie zgłaszany indywidualnie przez onSendEventsSuccessHandler
programy obsługi i .onSendEventsErrorHandler
function flush(options?: BufferedFlushOptions): Promise<void>
Parametry
- options
- BufferedFlushOptions
Zestaw opcji do zastosowania do wywołania operacji.
Zwraca
Promise<void>
getEventHubProperties(GetEventHubPropertiesOptions)
Udostępnia informacje o środowisku uruchomieniowym centrum zdarzeń.
function getEventHubProperties(options?: GetEventHubPropertiesOptions): Promise<EventHubProperties>
Parametry
- options
- GetEventHubPropertiesOptions
Zestaw opcji do zastosowania do wywołania operacji.
Zwraca
Promise<EventHubProperties>
Obietnica, która rozwiązuje problem z informacjami o wystąpieniu centrum zdarzeń.
getPartitionIds(GetPartitionIdsOptions)
Zawiera identyfikator każdej partycji skojarzonej z centrum zdarzeń.
function getPartitionIds(options?: GetPartitionIdsOptions): Promise<string[]>
Parametry
- options
- GetPartitionIdsOptions
Zestaw opcji do zastosowania do wywołania operacji.
Zwraca
Promise<string[]>
Obietnica, która jest rozpoznawana za pomocą tablicy ciągów reprezentujących identyfikator dla każdej partycji skojarzonej z centrum zdarzeń.
getPartitionProperties(string, GetPartitionPropertiesOptions)
Zawiera informacje o stanie określonej partycji.
function getPartitionProperties(partitionId: string, options?: GetPartitionPropertiesOptions): Promise<PartitionProperties>
Parametry
- partitionId
-
string
Identyfikator partycji, dla której są wymagane informacje.
- options
- GetPartitionPropertiesOptions
Zestaw opcji do zastosowania do wywołania operacji.
Zwraca
Promise<PartitionProperties>
Obietnica, która rozwiązuje problem z informacjami o stanie partycji .