EventHubClient Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Classe de âncora – todas as operações de cliente do EventHub começam aqui. Consulte CreateFromConnectionString(String)
public abstract class EventHubClient : Microsoft.Azure.EventHubs.ClientEntity
type EventHubClient = class
inherit ClientEntity
Public MustInherit Class EventHubClient
Inherits ClientEntity
- Herança
Propriedades
ClientId |
Obtém a ID do cliente. (Herdado de ClientEntity) |
EnableReceiverRuntimeMetric |
Obtém ou define um valor que indica se a métrica de runtime de um receptor está habilitada. |
EventHubName |
Obtém o nome do EventHub. |
IsClosed |
Retorna um booliano que representa se o objeto cliente está fechado ou não. (Herdado de ClientEntity) |
RegisteredPlugins |
Obtém uma lista de plug-ins registrados no momento para este Cliente. (Herdado de ClientEntity) |
RetryPolicy |
Obtém o RetryPolicy para a ClientEntity. (Herdado de ClientEntity) |
WebProxy |
Obtém ou define o proxy web. Um proxy é aplicável somente quando o tipo de transporte é definido como AmqpWebSockets. Se não estiver definido, as configurações de proxy em todo o sistema serão respeitadas. |
Métodos
Close() |
Fecha a ClientEntity. (Herdado de ClientEntity) |
CloseAsync() |
Fecha e libera recursos associados EventHubClienta . |
Create(EventHubsConnectionStringBuilder) |
Cria uma nova instância do cliente dos Hubs de Eventos usando o construtor de cadeia de conexão especificado. |
CreateBatch() |
Cria um lote em que objetos de dados de evento podem ser adicionados para uma chamada SendAsync posterior. |
CreateBatch(BatchOptions) |
Cria um lote em que objetos de dados de evento podem ser adicionados para uma chamada SendAsync posterior. |
CreateEpochReceiver(String, String, EventPosition, Int64, ReceiverOptions) |
Crie um receptor eventhub baseado em época com determinado EventPosition. O receptor é criado para uma partição específica do EventHub do grupo de consumidores específico. É importante prestar atenção ao seguinte ao criar o receptor baseado em época:- Imposição de propriedade: depois de criar um receptor baseado em época, você não poderá criar um receptor não de época para a mesma combinação consumerGroup-Partition até que todos os receptores para a combinação sejam fechados. - Roubo de propriedade: se um receptor com valor de época mais alto for criado para uma combinação consumerGroup-Partition, qualquer receptor de época mais antigo para essa combinação será forçado a fechar. - Qualquer receptor fechado devido à perda de propriedade de uma combinação consumerGroup-Partition obterá ReceiverDisconnectedException para todas as operações desse receptor. |
CreateFromConnectionString(String) |
Cria uma nova instância do cliente dos Hubs de Eventos usando a cadeia de conexão especificada. Você pode preencher a propriedade EntityPath com o nome do Hub de Eventos. |
CreatePartitionSender(String) |
Crie um PartitionSender que possa publicar EventDatadiretamente em uma partição específica do EventHub (tipo de remetente iii. na lista abaixo). Há três padrões/maneiras de enviar para EventHubs:i. SendAsync(EventData) ou SendAsync(IEnumerable<EventData>) ii. SendAsync(EventData, String) ou SendAsync(IEnumerable<EventData>, String) iii. SendAsync(EventData) ou SendAsync(IEnumerable<EventData>) |
CreateReceiver(String, String, EventPosition, ReceiverOptions) |
Crie o receptor do EventHub com determinado EventPosition. O receptor é criado para uma partição específica do EventHub do grupo de consumidores específico. |
CreateWithAzureActiveDirectory(Uri, String, AzureActiveDirectoryTokenProvider+AuthenticationCallback, String, Nullable<TimeSpan>, TransportType) |
Cria uma nova instância do usando a EventHubClient autenticação do Azure Active Directory. |
CreateWithManagedIdentity(Uri, String, Nullable<TimeSpan>, TransportType) |
Cria uma nova instância do usando a EventHubClient autenticação de Identidade Gerenciada do Azure. |
CreateWithTokenProvider(Uri, String, ITokenProvider, Nullable<TimeSpan>, TransportType) |
Cria uma nova instância do cliente dos Hubs de Eventos usando o ponto de extremidade, o caminho da entidade e o provedor de token especificados. |
GetPartitionRuntimeInformationAsync(String) |
Recupera informações de runtime para a partição especificada do Hub de Eventos. |
GetRuntimeInformationAsync() |
Recupera informações de runtime do EventHub |
OnCloseAsync() |
Classe de âncora – todas as operações de cliente do EventHub começam aqui. Consulte CreateFromConnectionString(String) |
OnCreateReceiver(String, String, EventPosition, Nullable<Int64>, ReceiverOptions) |
Classe de âncora – todas as operações de cliente do EventHub começam aqui. Consulte CreateFromConnectionString(String) |
OnGetPartitionRuntimeInformationAsync(String) |
Classe de âncora – todas as operações de cliente do EventHub começam aqui. Consulte CreateFromConnectionString(String) |
OnGetRuntimeInformationAsync() |
Classe de âncora – todas as operações de cliente do EventHub começam aqui. Consulte CreateFromConnectionString(String) |
OnRetryPolicyUpdate() |
Manipule as atualizações de política de repetição aqui. |
RegisterPlugin(EventHubsPlugin) |
Registra um EventHubsPlugin a ser usado com esse cliente. (Herdado de ClientEntity) |
SendAsync(EventData) |
Enviar EventData para o EventHub. O EventData enviado será aterrissado em qualquer partição de EventHubs escolhida arbitrariamente. Há três maneiras de enviar para EventHubs, cada uma exposta como um método (juntamente com sua sobrecarga sendBatch): i. SendAsync(EventData) ou SendAsync(IEnumerable<EventData>) ii. SendAsync(EventData, String) ou SendAsync(IEnumerable<EventData>, String) iii. SendAsync(EventData) ou SendAsync(IEnumerable<EventData>) Use este método para enviar se:a) a SendAsync(EventData) operação deve estar altamente disponível e b) os dados precisam ser distribuídos uniformemente entre todas as partições; exceção sendo, quando um subconjunto de partições não está disponível SendAsync(EventData) envia o EventData para um Gateway de Serviço, que, por sua vez, encaminhará o EventData para uma das partições do EventHub. Este é o algoritmo de encaminhamento de mensagens:i. Encaminhe eventDatas para partições do EventHub distribuindo igualmente os dados entre todas as partições (por exemplo: Round-robin do EventDatas para todas as partições do EventHub) ii. Se uma das partições do EventHub ficar indisponível por um momento, o Gateway de Serviço a detectará automaticamente e encaminhará a mensagem para outra partição disponível, tornando a operação de envio altamente disponível. |
SendAsync(EventData, String) |
Envia um 'EventData com uma partitionKey para o EventHub. Todos EventDatacom uma partitionKey têm a garantia de pousar na mesma partição. Esse padrão de envio enfatiza a correlação de dados em relação à disponibilidade geral e à latência. Há três maneiras de enviar para EventHubs, cada uma exposta como um método (juntamente com sua sobrecarga em lote): i. SendAsync(EventData) ou SendAsync(IEnumerable<EventData>) ii. SendAsync(EventData, String) ou SendAsync(IEnumerable<EventData>, String) iii. SendAsync(EventData) ou SendAsync(IEnumerable<EventData>) Use esse tipo de envio se:a) Há a necessidade de correlação de eventos com base na instância do Remetente; O remetente pode gerar um UniqueId e defini-lo como partitionKey - que na mensagem recebida pode ser usada para correlação b) O cliente deseja assumir o controle da distribuição de dados entre partições. Várias PartitionKeys podem ser mapeadas para uma partição. O serviço EventHubs usa um algoritmo hash proprietário para mapear a PartitionKey para uma PartitionId. O uso desse tipo de envio (envio usando uma partitionKey específica) pode, às vezes, resultar em partições que não são distribuídas uniformemente. |
SendAsync(EventDataBatch) |
Enviar um lote de EventData em EventDataBatch. |
SendAsync(IEnumerable<EventData>) |
Enviar um lote de EventData para o EventHub. O EventData enviado será aterrissado em qualquer partição do EventHub escolhida arbitrariamente. Essa é a maneira mais recomendada de enviar para o EventHub. Há três maneiras de enviar para EventHubs, para entender esse tipo específico de envio, consulte a sobrecarga SendAsync(EventData), que é usada para enviar um único EventData. Use essa sobrecarga se precisar enviar um lote de EventData. O envio de um lote de EventData's é útil nos seguintes casos: i. Envio eficiente – o envio de um lote de maximiza a taxa de EventData transferência geral usando o número de sessões criadas para o serviço do EventHub. ii. Enviar vários EventData's em uma transação. Para criar propriedades ACID, o Serviço de Gateway encaminhará todos os EventDatado lote para uma única partição do EventHub. |
SendAsync(IEnumerable<EventData>, String) |
Envie um 'lote de EventData com a mesma partitionKey' para o EventHub. Todos EventDatacom uma partitionKey têm a garantia de pousar na mesma partição. Várias PartitionKey serão mapeadas para uma partição. Há três maneiras de enviar para EventHubs, para entender esse tipo específico de envio, consulte a sobrecarga SendAsync(EventData, String), que é o mesmo tipo de envio e é usada para enviar um único EventData. O envio de um lote de EventData's é útil nos seguintes casos:i. Envio eficiente – o envio de um lote de maximiza a taxa de EventData transferência geral usando o número de sessões criadas para o serviço EventHubs. ii. Enviando vários eventos em Uma Transação. Esse é o motivo pelo qual todos os eventos enviados em um lote precisam ter a mesma partitionKey (para que sejam enviados apenas para uma partição). |
ThrowIfClosed() |
Gera uma exceção se o objeto cliente já estiver fechado. (Herdado de ClientEntity) |
UnregisterPlugin(String) |
Cancela o registro de um EventHubsPlugin. (Herdado de ClientEntity) |
Aplica-se a
Azure SDK for .NET