16 / 19 Arquitetura de software na prática · Material escrito · vídeo previsto para 05/11/2026 · atualizado em 13 out 2026

Arquitetura assíncrona: filas e eventos

Analise confirmação imediata, processamento em segundo plano, retentativas, idempotência e backpressure.

Fernanda Kipper
Fernanda Kipper
Próxima aula →

Responder e concluir o trabalho são coisas diferentes

Quando uma requisição pede um certificado, o sistema pode confirmar que recebeu a solicitação e colocar o trabalho numa fila. Um worker gera o certificado e registra o resultado. O usuário não espera a tarefa lenta dentro da conexão web, mas a interface precisa dizer que o trabalho ainda está em andamento.

Ciclo de uma mensagem: disponível, processando, confirmada ou devolvida para nova tentativa.
Ciclo de uma mensagem: disponível, processando, confirmada ou devolvida para nova tentativa.

Abrir diagrama em tamanho original

Mensagens podem ser entregues mais de uma vez. Se o worker gerar o documento e falhar antes do acknowledgement, a fila pode reenviar. Use uma chave estável da operação para evitar duplicar efeitos. Retentativas devem ter limites e atraso; mensagens que falham repetidamente precisam de inspeção em uma dead-letter queue.

Assincronia aumenta resiliência em alguns cenários, mas adiciona atrasos, estados intermediários, rastreamento e suporte operacional. Também pense em backpressure: como o produtor desacelera quando os consumidores não acompanham?

Vídeo previsto para 05/11/2026.

Recupere: por que o worker precisa ser idempotente mesmo que a fila seja confiável?

Material complementar da Fernanda

  • Caso NotiFly: filas e workers — Use o caso para discutir tentativas, confirmação, atraso e duplicação. Desenhe o que acontece se um worker conclui o efeito e falha antes de confirmar a mensagem.

Pratique com /aprender

/aprender Desenhe o processamento assíncrono de uma emissão de certificado. Peça que eu descreva o que a API responde, como o worker confirma a mensagem, quando ocorre uma repetição e como impedir duplicatas. Introduza sobrecarga e me pergunte como aplicar backpressure.
A SEGUIR · AULA 17

System Design: conceitos importantes para uma pessoa sênior

62 min de vídeo · Defenda escolhas com requisitos mensuráveis, modos de falha, limites e custos de operação.

Ir para a aula 17 →