Uma empresa executa um aplicativo em várias instâncias do Amazon EC2 que processa mensagens de uma fila do Amazon SQS, grava em uma tabela do Amazon RDS e, em seguida, exclui a mensagem da fila. Registros duplicados ocasionais aparecem na tabela do RDS, embora a fila do SQS não tenha mensagens duplicadas. O que um arquiteto de soluções deve fazer para garantir que as mensagens sejam processadas apenas uma vez?
Escolha uma resposta
Toque em uma opção para verificar sua resposta.
Resposta correta: Use a chamada de API ChangeMessageVisibility para aumentar o tempo limite de visibilidade..
Por que esta é a resposta
A duplicação de registros no RDS, apesar de não haver duplicatas no SQS, sugere que múltiplas instâncias EC2 estão processando a mesma mensagem. Isso ocorre quando o tempo limite de visibilidade de uma mensagem no SQS expira antes que a instância EC2 termine de processá-la e excluí-la da fila. Quando o tempo limite expira, a mensagem fica visível novamente para outras instâncias, que a processam novamente, gerando duplicatas. Aumentar o tempo limite de visibilidade com ChangeMessageVisibility garante que uma mensagem permaneça invisível por tempo suficiente para ser processada e excluída por uma única instância, evitando reprocessamento. CreateQueue cria uma nova fila, não resolvendo o problema de duplicação. AddPermission gerencia permissões de acesso, não o comportamento de processamento de mensagens. ReceiveMessage com um tempo de espera (long polling) reduz o número de chamadas vazias, mas não impede o reprocessamento se o tempo limite de visibilidade for muito curto.
Passe no seu exame — sem a busca interminável por respostas
Obtenha todas as perguntas e explicações verificadas para este exame em um só lugar e economize horas de preparação. Mais de 1.000 certificações · Mais de 20 idiomas · Grátis para começar.
Passe no seu exame mais rápido → Não é necessário cartão