Event Grid no Kubernetes – Entrega de eventos do Batch
O Event Grid no Kubernetes com o Azure Arc tem suporte para fornecer mais do que um evento num único pedido de entrega. Esta funcionalidade permite aumentar o débito de entrega geral sem ter os overheads HTTP por pedido. A entrega de eventos do Batch está desativada por predefinição e pode ser ativada com a configuração da subscrição de eventos.
Importante
O Event Grid no Kubernetes com o Azure Arc está atualmente em pré-visualização pública. Esta versão de pré-visualização é disponibiliza sem um contrato de nível de serviço e não é recomendada para cargas de trabalho de produção. Algumas funcionalidades poderão não ser suportadas ou poderão ter capacidades limitadas. Para obter mais informações, veja Termos Suplementares de Utilização para Pré-visualizações do Microsoft Azure.
Aviso
A duração máxima permitida para processar cada pedido de entrega não é alterada, embora o código do processador de eventos tenha potencialmente de fazer mais trabalho por pedido em lote. O tempo limite de entrega é predefinido para 60 segundos.
Política de entrega de eventos do Batch
O comportamento de entrega de eventos em lote no Event Grid no Kubernetes pode ser personalizado por subscrição de eventos ao ajustar as duas definições seguintes:
Máximo de eventos por lote
Esta definição define um limite superior no número de eventos que podem ser adicionados a um pedido de entrega em lotes.
Tamanho preferencial do Batch em Kilobytes
Este item de configuração é utilizado para controlar ainda mais o número máximo de kilobytes que podem ser enviados por pedido de entrega.
Comportamento de entrega de eventos do Batch
Todos ou nenhum
O Event Grid no Kubernetes funciona com semântica total ou nenhuma. Não suporta o êxito parcial de uma entrega de eventos em lote. Os processadores de eventos devem ter o cuidado de pedir apenas o número de eventos por lote que possam processar razoavelmente em 60 segundos.
Criação de batches otimista
As definições de política de criação de batches não são limites estritos no comportamento de criação de batches e são respeitadas numa base de melhor esforço. Com taxas de eventos baixas, observará frequentemente que o tamanho do lote é inferior ao número máximo de eventos pedidos por lote.
A entrega em lote está definida como DESATIVADA por predefinição
Por predefinição, o Event Grid no Kubernetes só adiciona um evento a cada pedido de entrega. A forma de ativar a entrega de eventos em lotes é definir uma das definições mencionadas anteriormente no artigo no payload da subscrição de eventos.
Valores predefinidos
Não é necessário especificar as definições (Máximo de eventos por lote e Tamanho aproximado do lote em quilo bytes) ao criar uma subscrição de evento. Se apenas uma definição estiver definida, o Event Grid no Kubernetes utiliza valores predefinidos (configuráveis).
Exemplo
O exemplo seguinte mostra como definir maxEventsPerBatch
e preferredBatchSizeInKilobytes
em propriedades de ponto final para ativar a criação de batches.
{
"properties":
{
"destination":
{
"endpointType": "WebHook",
"properties":
{
"endpointUrl": "<your_webhook_url>",
"maxEventsPerBatch": 10,
"preferredBatchSizeInKilobytes": 64
}
},
}
}
Passos seguintes
Para saber mais sobre destinos e processadores suportados pelo Event Grid no Azure Arc para Kubernetes, veja Event Grid on Kubernetes - Event handlers (Event Grid no Kubernetes – Processadores de eventos).