Partager via


EventProcessor<TPartition> Classe

Définition

Fournit une base pour la création d’un processeur personnalisé qui consomme des événements sur toutes les partitions d’un Event Hub donné pour un groupe de consommateurs spécifique. Le processeur est capable de collaborer avec d’autres instances pour le même appairage Event Hub et groupe de consommateurs pour partager le travail à l’aide d’une plateforme de stockage commune pour communiquer. La tolérance de panne est également intégrée, ce qui permet au processeur d’être résilient face aux erreurs.

public abstract class EventProcessor<TPartition> where TPartition : EventProcessorPartition, new()
type EventProcessor<'Partition (requires 'Partition :> EventProcessorPartition and 'Partition : (new : unit -> 'Partition))> = class
Public MustInherit Class EventProcessor(Of TPartition)

Paramètres de type

TPartition

Contexte de la partition pour laquelle une opération est effectuée.

Héritage
EventProcessor<TPartition>
Dérivé

Remarques

Pour activer la coordination du partage de partitions entre EventProcessor<TPartition> les instances, elles affirment l’accès en lecture exclusif aux partitions pour le groupe de consommateurs. Aucun autre lecteur ne doit être actif dans le groupe de consommateurs autre que les processeurs qui ont l’intention de collaborer. L’accès aux lecteurs non exclusifs sera refusé ; les lecteurs exclusifs, y compris les processeurs utilisant des emplacements de stockage différents, interfèrent avec le fonctionnement et les performances du processeur.

Le EventProcessor<TPartition> est sûr à mettre en cache et à utiliser pendant la durée de vie d’une application, ce qui est l’approche recommandée. Le processeur est chargé de garantir une utilisation efficace du réseau, du processeur et de la mémoire. StopProcessingAsync(CancellationToken)StopProcessing(CancellationToken) L’appel ou lorsque tout le traitement est terminé ou lorsque l’application s’arrête garantit que les ressources réseau et autres objets non managés sont correctement nettoyés.

Constructeurs

EventProcessor<TPartition>()

Initialise une nouvelle instance de la classe EventProcessor<TPartition>.

EventProcessor<TPartition>(Int32, String, String, EventProcessorOptions)

Initialise une nouvelle instance de la classe EventProcessor<TPartition>.

EventProcessor<TPartition>(Int32, String, String, String, AzureNamedKeyCredential, EventProcessorOptions)

Initialise une nouvelle instance de la classe EventProcessor<TPartition>.

EventProcessor<TPartition>(Int32, String, String, String, AzureSasCredential, EventProcessorOptions)

Initialise une nouvelle instance de la classe EventProcessor<TPartition>.

EventProcessor<TPartition>(Int32, String, String, String, EventProcessorOptions)

Initialise une nouvelle instance de la classe EventProcessor<TPartition>.

EventProcessor<TPartition>(Int32, String, String, String, TokenCredential, EventProcessorOptions)

Initialise une nouvelle instance de la classe EventProcessor<TPartition>.

Propriétés

ConsumerGroup

Nom du groupe de consommateurs auquel ce processeur d’événements est associé. Les événements seront en lecture seule dans le contexte de ce groupe.

EventHubName

Nom du hub d’événements auquel le processeur est connecté, spécifique à l’espace de noms Event Hubs qui le contient.

FullyQualifiedNamespace

Espace de noms Event Hubs complet auquel le processeur est associé. Cela est susceptible d’être similaire à {yournamespace}.servicebus.windows.net.

Identifier

Nom unique utilisé pour identifier ce processeur d’événements.

IsRunning

Indique si ce processeur d’événements est en cours d’exécution.

RetryPolicy

Stratégie active qui régit les nouvelles tentatives pour le processeur.

Méthodes

ClaimOwnershipAsync(IEnumerable<EventProcessorPartitionOwnership>, CancellationToken)

Tente de revendiquer la propriété des partitions spécifiées pour traitement. Cette opération est utilisée par l’équilibrage de charge pour permettre de répartir la responsabilité du traitement des partitions pour un hub d’événements et le jumelage de groupes de consommateurs entre les processeurs d’événements actifs.

CreateConnection()

Crée un EventHubConnection à utiliser pour communiquer avec le service Event Hubs.

GetCheckpointAsync(String, CancellationToken)

Retourne un point de contrôle pour le hub d’événements, le groupe de consommateurs et l’identificateur de la partition associée au processeur d’événements instance, afin que le traitement d’une partition donnée puisse être correctement initialisé. L’implémentation par défaut appelle et filtre les Azure.Messaging.EventHubs.Primitives.EventProcessor`1.ListCheckpointsAsync(System.Threading.CancellationToken) résultats par PartitionId. Il est recommandé de remplacer cette méthode dans EventProcessor<TPartition> les implémentations pour obtenir des performances optimales.

ListOwnershipAsync(CancellationToken)

Demande une liste des attributions de propriété pour les partitions entre chacune des instances de processeur d’événements qui coopèrent pour un appairage de groupe de consommateurs et event Hub donné. Cette méthode est utilisée lors de l’équilibrage de charge pour permettre au processeur de découvrir d’autres collaborateurs actifs et de prendre des décisions sur la meilleure façon d’équilibrer le travail entre eux.

ListPartitionIdsAsync(EventHubConnection, CancellationToken)

Requêtes pour les identificateurs des partitions Event Hub.

OnInitializingPartitionAsync(TPartition, CancellationToken)

Effectue les tâches d’initialisation d’une partition et de son contexte associé pour le traitement des événements.

OnPartitionProcessingStoppedAsync(TPartition, ProcessingStoppedReason, CancellationToken)

Effectue les tâches nécessaires lors de l’arrêt du traitement d’une partition. Cela se produit généralement lorsque la partition est revendiquée par un autre processeur d’événements instance ou lorsque le processeur d’événements actuel instance s’arrête.

OnProcessingErrorAsync(Exception, TPartition, String, CancellationToken)

Effectue les tâches nécessaires lorsqu’une exception inattendue se produit dans le fonctionnement de l’infrastructure du processeur d’événements.

OnProcessingEventBatchAsync(IEnumerable<EventData>, TPartition, CancellationToken)

Effectue les tâches nécessaires pour traiter un lot d’événements pour une partition donnée, car ils sont lus à partir du service Event Hubs.

ReadLastEnqueuedEventProperties(String)

Ensemble d’informations sur le dernier événement mis en file d’attente d’une partition, tel qu’observé par le client EventHubs associé à ce contexte lorsque les événements sont reçus du service Event Hubs. Cette option est disponible uniquement si le consommateur a été créé avec TrackLastEnqueuedEventProperties set.

StartProcessing(CancellationToken)

Signale au pour commencer le EventProcessor<TPartition> traitement des événements. Si cette méthode est appelée pendant l’exécution du processeur, aucune action n’est effectuée.

StartProcessingAsync(CancellationToken)

Signale au pour commencer le EventProcessor<TPartition> traitement des événements. Si cette méthode est appelée pendant l’exécution du processeur, aucune action n’est effectuée.

StopProcessing(CancellationToken)

Signale l’arrêt du EventProcessor<TPartition> traitement des événements. Si cette méthode est appelée alors que le processeur n’est pas en cours d’exécution, aucune action n’est effectuée.

StopProcessingAsync(CancellationToken)

Signale l’arrêt du EventProcessor<TPartition> traitement des événements. Si cette méthode est appelée alors que le processeur n’est pas en cours d’exécution, aucune action n’est effectuée.

UpdateCheckpointAsync(String, Int64, Nullable<Int64>, CancellationToken)

Crée ou met à jour un point de contrôle pour une partition spécifique, en identifiant une position dans le flux d’événements de la partition à partir de laquelle un processeur d’événements doit commencer la lecture.

ValidateProcessingPreconditions(CancellationToken)

Effectue les tâches nécessaires pour valider la configuration de base et les autorisations des dépendances nécessaires au fonctionnement du processeur.

S’applique à