Freigeben über


Azure.Messaging.EventHubs.Producer Namespace

Klassen

CreateBatchOptions

Der Satz von Optionen, die angegeben werden können, um die Art und Weise zu beeinflussen, wie sich ein Ereignisbatch verhält und an den Event Hubs-Dienst gesendet wird.

EnqueueEventOptions

Der Satz von Optionen, die angegeben werden können, um die Art und Weise zu beeinflussen, wie Ereignisse im Event Hubs-Dienst veröffentlicht werden.

EventDataBatch

Eine Gruppe von EventData mit im Voraus bekannten Größeneinschränkungen, die in einem einzelnen Vorgang an den Event Hubs-Dienst gesendet werden sollen. Nach der Veröffentlichung ist das Ergebnis atomar; Entweder waren alle Ereignisse, die zum Batch gehören, erfolgreich oder alle sind fehlgeschlagen. Ein Teilerfolg ist nicht möglich.

EventHubBufferedProducerClient

Ein Client, der für die Veröffentlichung von Instanzen von EventData in einem bestimmten Event Hub verantwortlich ist. Abhängig von den Optionen, die angegeben werden, wenn Ereignisse in die Warteschlange gestellt werden, können sie automatisch einer Partition zugewiesen, gemäß dem angegebenen Partitionsschlüssel gruppiert oder einer speziell angeforderten Partition zugewiesen werden.

Die EventHubBufferedProducerClient veröffentlicht nicht sofort, sondern verwendet ein verzögertes Modell, bei dem Ereignisse in einem Puffer gesammelt werden, sodass sie effizient in Batches zusammengefasst und veröffentlicht werden können, wenn der Batch voll ist oder das MaximumWaitTime abgelaufen ist, ohne dass neue Ereignisse in die Warteschlange eingereiht wurden.

Mit diesem Modell soll die Belastung der Aufrufer durch die Batchverwaltung auf Kosten eines nicht deterministischen Timings für den Zeitpunkt der Veröffentlichung von Ereignissen verlagert werden. Es gibt auch zusätzliche Kompromisse, die zu berücksichtigen sind:

  • Wenn die Anwendung abstürzt, wurden keine Ereignisse im Puffer veröffentlicht. Um Datenverluste zu vermeiden, werden Aufrufer empfohlen, den Veröffentlichungsfortschritt mithilfe der SendEventBatchSucceededAsync Handler und SendEventBatchFailedAsync nachzuverfolgen.
  • Ereignissen, die einen Partitionsschlüssel angeben, kann eine andere Partition zugewiesen werden als diejenigen, die denselben Schlüssel mit anderen Producern verwenden.
  • Im unwahrscheinlichen Fall, dass eine Partition vorübergehend nicht mehr verfügbar ist, kann die EventHubBufferedProducerClient Wiederherstellung länger dauern als andere Producer.

In Szenarien, in denen es wichtig ist, Ereignisse sofort mit einem deterministischen Ergebnis zu veröffentlichen, stellen Sie sicher, dass Partitionsschlüssel einer Partition zugewiesen werden, die mit anderen Herausgebern konsistent ist, oder wenn die Maximierung der Verfügbarkeit eine Anforderung ist, wird die Verwendung von EventHubProducerClient empfohlen.

EventHubBufferedProducerClientOptions

Der Satz von Optionen, die beim Erstellen eines EventHubBufferedProducerClient angegeben werden können, um das Verhalten zu konfigurieren.

EventHubProducerClient

Ein Client, der für die Veröffentlichung EventData in einem bestimmten Event Hub verantwortlich ist, gruppiert in Batches. Abhängig von den beim Senden angegebenen Optionen wird Ereignissen möglicherweise automatisch eine verfügbare Partition zugewiesen oder eine bestimmte Partition angefordert.

Veröffentlicht EventHubProducerClient sofort, um ein deterministisches Ergebnis für jeden Sendevorgang zu gewährleisten, erfordert jedoch, dass Aufrufer die Verantwortung für das Erstellen und Verwalten von Batches übernehmen.

In Szenarien, in denen es nicht wichtig ist, Ereignisse sofort zu veröffentlichen und in denen die Maximierung der Partitionsverfügbarkeit nicht erforderlich ist, empfiehlt es sich, die Verwendung von EventHubBufferedProducerClientin Betracht zu ziehen, die die Verantwortung für das Erstellen und Verwalten von Batches übernimmt, um die Komplexität dieser Vorgänge im Anwendungscode zu verringern.

EventHubProducerClientOptions

Der Satz von Optionen, die beim Erstellen eines EventHubProducerClient angegeben werden können, um das Verhalten zu konfigurieren.

SendEventBatchFailedEventArgs

Enthält Informationen zu einem Batch, der nicht veröffentlicht werden konnte, sowie die aufgetretene Ausnahme und die Partition, in der der Batch veröffentlicht wurde.

SendEventBatchSucceededEventArgs

Enthält Informationen zu einem veröffentlichten Batch und der Partition, in der er veröffentlicht wurde.

SendEventOptions

Der Satz von Optionen, die angegeben werden können, um die Art und Weise zu beeinflussen, wie Ereignisse im Event Hubs-Dienst veröffentlicht werden.