Sobes.tech
Senior

O que fazia com as mensagens inválidas após o processamento manual? Como isso parecia tecnicamente?

sobes.tech IA

Resposta da IA

Após o processamento manual de mensagens inválidas, geralmente aplicava-se a seguinte abordagem:

  1. Registo e análise: as mensagens eram armazenadas num armazenamento separado (por exemplo, numa base de dados ou ficheiros) para compreender a causa do erro.
  2. Correção: os erros nos dados eram corrigidos manualmente ou com scripts.
  3. Reenvio: as mensagens corrigidas eram colocadas de novo na fila ou sistema de processamento para reprocessamento.

Tecnicamente, isto parecia assim:

  • No sistema de processamento de mensagens, havia um canal ou fila separado para mensagens inválidas (fila de dead-letter).
  • Após verificação e correção manual, as mensagens eram enviadas de volta para a fila principal através de API ou CLI.

Exemplo em Go (simplificado):

func reprocessMessage(msg Message) error {
    if err := validate(msg); err != nil {
        return err
    }
    // Envia a mensagem de volta para a fila
    return messageQueue.Publish(msg)
}

Desta forma, era garantido o controlo de qualidade dos dados e a possibilidade de reprocessamento sem perda de informação.