Ao implementar um sistema de delivery de mensagens, há algumas limitações que devem ser abordadas para garantir estabilidade, consistência e boa experiência do usuário. Uma das deficiências de um sistema de entrega de mensagens é garantir que as mensagens cheguem ao destino com êxito e saber o que fazer quando as mensagens não chegarem.
Algumas integrações podem aceitar a falha de entrega, descartar a mensagem e passar para a próxima mensagem. Em outras integrações, a falha ao entregar uma mensagem não pode ser ignorada. Por exemplo, uma integração financeira pode tentar entregar uma mensagem, mas recebe um código de status HTTP 404, que indica que o servidor não pôde encontrar o endpoint para o qual a mensagem deveria ser entregue. Nesses casos, uma mensagem ausente pode significar que alguém não está sendo pago pelo seu tempo ou que uma organização está ultrapassando o orçamento de recursos contratados.
Estratégia da Adobe Workfront para novas tentativas de assinatura de evento
Como os clientes usam a plataforma Workfront como parte principal de seu trabalho diário de conhecimento, a estrutura Workfront Event Subscription fornece um mecanismo para garantir que a entrega de cada mensagem seja tentada na maior extensão possível.
As mensagens de saída acionadas pelo evento que não são entregues aos endpoints do cliente são reenviadas até que a entrega seja bem-sucedida por um período de até 48 horas. Durante esse período, as tentativas ocorrem com uma frequência incrementalmente aumentada até que o delivery seja bem-sucedido ou até que 11 tentativas sejam feitas.
A fórmula para essas novas tentativas é:
((2^attempt) - 1) * 84800ms
A primeira tentativa ocorre após 1,5 minuto, a segunda em quase 5 minutos e a 11ª em cerca de 48 horas.
Os clientes precisam garantir que todos os endpoints que consomem mensagens de saída das Assinaturas de eventos da Workfront estejam configurados para retornar uma mensagem de resposta de 200 níveis à Workfront quando a entrega for bem-sucedida.