Skip to main content

Destinos de Eventos: Uma Alternativa Mais Ágil aos Webhooks

Os webhooks são amplamente utilizados, mas não estão isentos de desafios. Entre as principais dificuldades, destaca-se a ausência de padrões amplamente adotados, o que resulta em abordagens variadas para Retry, timeouts, autenticação e formatos de payload.

Destinos de Eventos: Uma Alternativa Mais Ágil aos Webhooks

Um webhook, que pode ser definido como um “callback definido pelo usuário via HTTP”, pode gerar gargalos de desempenho tanto para plataformas de API que publicam webhooks quanto para desenvolvedores que criam aplicações que os consomem, elevando os custos operacionais e de infraestrutura.

Para solucionar essas fragilidades, um recente manifesto, lançado na segunda-feira, propôs uma abordagem alternativa conhecida como Destinos de Eventos, que oferece uma solução escalável e mais veloz em comparação aos webhooks.

“O uso de webhooks representa o mínimo denominador”, observa o site da Iniciativa Destinos de Eventos. “Eles proporcionam um alcance impressionante, mas carecem de capacidades em escala. Como unir o alcance dos webhooks com as funcionalidades de outros paradigmas de eventos? Com os Destinos de Eventos.”

O Que São Destinos de Eventos?

Os destinos de eventos consistem em um conjunto de diretrizes para uma nova forma de lidar com eventos, podendo ser vistos como um novo padrão que surgiu. Phil Leggetter, responsável pelas relações com desenvolvedores na Hookdeck, explica que os destinos de eventos são endpoints ou sistemas aos quais os produtores de eventos podem enviar informações, permitindo que os desenvolvedores escolham as ferramentas com as quais já estão familiarizados.

Na segunda-feira, Leggetter lançou o site EventDestinations.org como um centro de informações para explicar essa abordagem e suas diretrizes. Além disso, há um repositório no GitHub que disponibiliza o código-fonte do site e uma especificação detalhada para os Destinos de Eventos.

A plataforma de processamento de pagamentos online Stripe foi a pioneira ao introduzir os Destinos de Eventos, mas atualmente essa abordagem é utilizada também por Twilio e Shopify, além de contar com o suporte do gateway de eventos Hookdeck.

Benefícios para as Empresas

Na visão dos construtores de plataformas de API, os destinos de eventos eliminam uma carga significativa, conforme Leggetter ressalta.

“Isso realmente alivia a pressão, pois as taxas de entrega bem-sucedida de outros tipos de destinos são mais altas, eliminando a necessidade de gerenciar retries e filas”, destaca Leggetter. “Eles sabem que uma porcentagem maior de eventos será absorvida com sucesso pelo Amazon EventBridge ou pelo GCP Pub/Sub, já que são serviços altamente disponíveis e rápidos que absorvem eventos de forma confiável.”

Além disso, essa abordagem atende ao desejo dos clientes, acrescenta Leggetter.

“Observamos que os fornecedores de plataformas de API desejam entregar mensagens de maneira diferenciada em relação aos webhooks, para diminuir sua carga do ponto de vista da infraestrutura e proporcionar uma melhor experiência ao desenvolvedor, com menos componentes para gerenciar”, declara.

Adotantes Iniciais

Stripe, Twilio e Shopify permitem que os desenvolvedores enviem eventos diretamente para destinos de eventos compatíveis, que incluem filas de mensagens e brokers como AWS Simple Queue Service (SQS), GCP Pub/Sub, Hookdeck e RabbitMQ, além da plataforma de streaming distribuído Kafka.

A implementação de Destinos de Eventos da Stripe permite que os desenvolvedores escolham o destino mais adequado para suas necessidades, tendo os webhooks como uma das opções.

“Melhorando as funcionalidades existentes de webhooks e introduzindo novos tipos de destinos, os desenvolvedores podem fazer a transição no seu próprio ritmo, mantendo a compatibilidade retroativa e aproveitando o melhor dos dois mundos”, informa o manifesto.

Para produtores de eventos como Shopify, Twilio e Stripe, essa mudança gera ganhos em eficiência, além de reduzir taxas de falhas e tentativas de entrega se comparadas aos endpoints HTTP públicos.

Isso resulta em um aumento no desempenho em cenários de alta vazão, de acordo com o site dos Destinos de Eventos.

“Lógica de tentativas inteligentes, melhorabilidade na entrega e infraestrutura escalável minimizam o consumo de recursos, reduzindo custos operacionais enquanto asseguram uma entrega de eventos sem interrupções em qualquer escala”, menciona o site.

Para que os produtores de eventos suportem os Destinos de Eventos, precisam seguir um conjunto de diretrizes:

  • Aceitar dois tipos de destinos, incluindo webhooks;
  • Realizar tentativas automáticas de entrega com backoff exponencial;
  • APIs para criar, atualizar e excluir destinos;
  • Alertas para falhas nos destinos.

Vantagens para Desenvolvedores

“Essa evolução na experiência do desenvolvedor beneficia a todos; os desenvolvedores ganham ferramentas mais poderosas e fáceis de usar e manter”, afirma o manifesto. “Os desenvolvedores se tornam mais bem-sucedidos e rápidos na adoção de plataformas.”

O site destaca os seguintes benefícios para os desenvolvedores:

  • Integração facilitada, pois não necessitarão mais configurar, gerenciar e escalar endpoints HTTP;
  • Carga cognitiva reduzida, já que a padronização em retries, segurança e gerenciamento de desempenho permite que os desenvolvedores confiem em uma entrega de eventos consistente e previsível;
  • Escalabilidade embutida, pois à medida que os sistemas se expandem, protocolos eficientes, agrupamento e infraestruturas resilientes garantem que a entrega dos eventos continue confiável, mesmo em alta taxa de transferência;
  • Menor manutenção, eliminando a necessidade de gateways de API, balanceadores de carga, consumidores HTTP e outros componentes de infraestrutura;
  • Comportamento previsível e expectativas de eventos padronizadas — o barramento de mensagens lida com timeouts, retries e segurança.

“Essa evolução não se resume apenas a resolver pontos de dor — trata-se de desbloquear novas possibilidades para desenvolvedores que constroem aplicações orientadas a eventos”, conclui o manifesto. “Ao priorizar a interoperabilidade, segurança e eficiência, os Destinos de Eventos representam um avanço significativo na criação de uma experiência para desenvolvedores que capacita a todos.”

Deixe uma Resposta