Ao configurar webhooks na Stark Infra, você pode escolher entre dois métodos de entrega: parallel ou sequential. Cada um deles define como os eventos serão enviados para sua aplicação e pode impactar o comportamento do seu processamento.
A seguir, explicamos como cada modo funciona e quando utilizar cada um.
Webhooks Parallel (paralelos)
No modo parallel, cada evento é enviado de forma independente, sem depender do sucesso ou falha dos eventos anteriores.
Como funciona:
Cada log é entregue isoladamente.
Se um evento falha, isso não bloqueia o envio dos próximos.
É ideal para serviços que conseguem lidar com eventos fora de ordem ou que não exigem dependência entre eles.
Quando usar:
✔️ Quando sua aplicação pode processar eventos de forma assíncrona.
✔️ Quando o tempo de resposta ou carga pode variar entre eventos.
✔️ Quando não há necessidade de garantir ordenação.
Webhooks Sequential (sequenciais)
No modo sequential, os eventos são enviados em ordem, ou seja, um por vez e cada novo envio depende do sucesso do evento anterior.
Como funciona:
O próximo log só é enviado após confirmação de entrega do anterior.
Se um evento falha, os seguintes ficam em espera até o reenvio ter sucesso.
Garante ordenação e consistência na linha temporal dos eventos.
Quando usar:
✔️ Quando sua aplicação exige ordem cronológica nos eventos.
✔️ Quando o processamento depende de etapas anteriores.
✔️ Quando falhas precisam bloquear o fluxo para evitar inconsistências.
É possível ter dois webhooks para a mesma subscription?
Não. Atualmente, não é possível cadastrar dois webhooks para a mesma subscription, mesmo que cada um tenha um deliveryMethod diferente.
Se você precisa enviar eventos para dois serviços distintos, recomendamos:
Criar duas URLs diferentes, cada uma com sua subscription correspondente.
Escolher o método (
parallelousequential) no momento da criação do webhook.
Observação importante
O parâmetro deliveryMethod pode ser enviado na criação do webhook. Caso um webhook já exista sem esse campo ou com o método diferente, é necessário:
Remover o webhook anterior
Criar novamente especificando
deliveryMethod: "parallel"ou"sequential"
Conclusão
A escolha entre parallel e sequential depende do comportamento desejado no seu processamento:
Parallel: rapidez, independência e tolerância a falhas
Sequential: ordenação, consistência e fluxo controlado
Se tiver dúvidas sobre qual abordagem usar para o seu caso, nossa equipe está à disposição para ajudar.
Comentários
0 comentário
Artigo fechado para comentários.