Solución de problemas de limitación de FIFO en Amazon SQS - Amazon Simple Queue Service

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Solución de problemas de limitación de FIFO en Amazon SQS

De forma predeterminada, las colas FIFO admiten 300 transacciones por segundo y por acción de la API para SendMessage, ReceiveMessage y DeleteMessage. Las solicitudes de más de 300 TPS reciben el error ThrottlingException incluso si los mensajes en la cola están disponibles. Para mitigar esto, puede usar los siguientes métodos:

  • Habilitación del alto rendimiento para las colas FIFO en Amazon SQS.

  • Utilice las acciones por lotes de la API Amazon SQS SendMessageBatch, DeleteMessageBatch y ChangeMessageVisibilityBatch para aumentar el límite de TPS hasta 3000 mensajes por segundo por acción de la API y reducir los costos. En el caso de la API de ReceiveMessage, defina el parámetro MaxNumberofMessages para recibir hasta diez mensajes por transacción. Para obtener más información, consulte Acciones por lotes de Amazon SQS.

  • En el caso de las colas FIFO con un alto rendimiento, siga las recomendaciones para optimizar la utilización de las particiones. Envíe mensajes con los mismos ID de grupo de mensajes por lotes. Elimine los mensajes o cambie los valores de tiempo de espera de visibilidad de los mensajes en lotes con identificadores de recepción procedentes de las mismas solicitudes de API ReceiveMessage.

  • Aumente el número de valores únicos de MessageGroupId. Esto permite una distribución uniforme entre las particiones de cola FIFO. Para obtener más información, consulte Uso del ID de grupo de mensajes de Amazon SQS.

Para obtener más información, consulte ¿Por qué mi cola FIFO de Amazon SQS no devuelve todos los mensajes o los mensajes de otros grupos? en la Guía del Centro de conocimiento de AWS.