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 SendMessage
ReceiveMessage
, 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
SendMessageBatch
DeleteMessageBatch
, eChangeMessageVisibilityBatch
para aumentar o limite de TPS de até 3.000 mensagens por segundo por ação de API e para reduzir custos. Para aReceiveMessage
API, defina oMaxNumberofMessages
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
MessageGroupId
valores 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?