As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Se a sua aplicação usa filas padrão e você quiser aproveitar os recursos de ordenação ou de processamento exatamente uma vez das filas FIFO, precisará configurar a fila e sua aplicação corretamente.
Considerações importantes
-
Criar uma fila FIFO: não é possível converter uma fila padrão existente em uma fila FIFO. É necessário criar uma fila FIFO para a aplicação ou excluir a fila padrão existente e recriá-la como uma fila FIFO.
-
Parâmetro de atraso: as filas FIFO não são compatíveis com atrasos por mensagem, apenas com atrasos por fila. Se a aplicação definir o parâmetro
DelaySeconds
em cada mensagem, você deverá modificá-la para definirDelaySeconds
em toda a fila. -
ID do grupo de mensagens: forneça um ID do grupo de mensagens para cada mensagem enviada. Esse ID permite o processamento paralelo de mensagens enquanto mantém a respectiva ordem. Use uma dimensão empresarial mais detalhada para o ID do grupo de mensagens a fim de escalar melhor com as filas FIFO. Quanto mais grupos de mensagens IDs você distribuir mensagens, maior será o número de mensagens disponíveis para consumo.
-
Modo de throughput alto: use o modo de throughput alto recomendado para filas FIFO a fim de atingir um throughput maior. Consulte mais informações sobre cotas de mensagens em Cotas de mensagens do Amazon SQS.
Lista de verificação de migração para filas FIFO
Antes de enviar mensagens para uma fila FIFO, confirme o seguinte:
-
Defina configurações de atraso
-
Modifique a aplicação para remover atrasos por mensagem.
-
Defina o parâmetro
DelaySeconds
em toda a fila.
-
-
Definir grupo de mensagens IDs
-
Organize as mensagens em grupos especificando um ID do grupo de mensagens em uma dimensão empresarial.
-
Use dimensões empresariais mais detalhadas para melhorar a escalabilidade.
-
-
Lide com a desduplicação de mensagens
-
Se seu aplicativo não puder enviar mensagens com corpos de mensagem idênticos, forneça uma ID de desduplicação de mensagem exclusiva para cada mensagem.
-
Se a aplicação envia mensagens com corpos de mensagem exclusivos, habilite a desduplicação baseada em conteúdo.
-
-
Configure o consumidor
-
Geralmente, nenhuma alteração de código é necessária para o consumidor.
-
Se o processamento de mensagens leva muito tempo e o tempo limite de visibilidade está definido como alto, considere adicionar um ID de tentativa de solicitação de recebimento a cada ação
ReceiveMessage
. Isso ajuda a repetir as tentativas de recebimento em caso de falhas de rede e impede que as filas pausem devido a tentativas de recebimento com falha.
-
Seguindo essas etapas, você pode garantir que a aplicação funcione corretamente com filas FIFO, aproveitando ao máximo seus recursos de ordenação e processamento de exatamente uma vez. Consulte informações mais detalhadas na Referência de API do Amazon Simple Queue Service.