Solucionar problemas de limitação de FIFO no Amazon SQS - Amazon Simple Queue Service

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á.

Solucionar problemas de limitação de FIFO no Amazon SQS

Por padrão, as filas FIFO suportam 300 transações por segundo, por ação de API para SendMessageReceiveMessage, e. DeleteMessage Solicitações acima de 300 TPS recebem o ThrottlingException erro mesmo se as mensagens na fila estiverem disponíveis. Para mitigar isso, você pode usar os seguintes métodos:

  • Habilite alta taxa de transferência para filas FIFO no Amazon SQS.

  • Use as ações em lote da API Amazon SQS SendMessageBatchDeleteMessageBatch, e ChangeMessageVisibilityBatch para aumentar o limite de TPS de até 3.000 mensagens por segundo por ação de API e para reduzir custos. Para a ReceiveMessage API, defina o MaxNumberofMessages parâmetro para receber até dez mensagens por transação. Para ter mais informações, consulte Ações em lote do Amazon SQS.

  • Para filas FIFO com alta taxa de transferência, siga as recomendações para otimizar a utilização da partição. Envie mensagens com os mesmos IDs de grupo de mensagens em lotes. Exclua mensagens ou altere os valores de tempo limite de visibilidade da mensagem em lotes com identificadores de recebimento das mesmas solicitações de ReceiveMessage API.

  • Aumente o número de MessageGroupIdvalores exclusivos. Isso permite uma distribuição uniforme entre as partições de fila FIFO. Para ter mais informações, consulte Usar o ID do grupo de mensagens do Amazon SQS.

Para obter mais informações, consulte Por que minha fila FIFO do Amazon SQS não retorna todas as mensagens ou mensagens em outros grupos de mensagens? no Guia do Centro de AWS Conhecimento.