- Más nuevo
- Más votos
- Más comentarios
En las colas FIFO de Amazon SQS, no es posible acceder directamente a mensajes específicos utilizando ReceiveMessage. El procesamiento de mensajes en colas FIFO sigue estrictamente el orden en que fueron enviados (primero en entrar, primero en salir).
Cuando se utiliza ReceiveMessage en una cola FIFO, Amazon SQS intenta devolver tantos mensajes como sea posible con el mismo ID de grupo de mensaje en una sola llamada, manteniendo el orden FIFO dentro de ese grupo. El sistema está diseñado para preservar el orden de procesamiento, lo que significa que los mensajes se entregan en la secuencia exacta en que fueron enviados.
La lógica de entrega de las colas FIFO funciona de la siguiente manera:
- Cuando un mensaje se recupera pero no se elimina, permanece invisible hasta que expire el tiempo de visibilidad.
- No se devuelven mensajes adicionales del mismo ID de grupo de mensaje hasta que el primer mensaje se elimina o vuelve a ser visible.
- Las colas FIFO permiten el procesamiento paralelo de mensajes a través de diferentes IDs de grupo de mensaje.
Para maximizar la concurrencia, puede diseñar su sistema con múltiples IDs de grupo de mensaje para flujos de trabajo independientes. Si necesita un procesamiento secuencial estricto de todos los mensajes, puede utilizar un único ID de grupo de mensaje para todos los mensajes en la cola.
Cada mensaje recibe un ID de mensaje asignado por el sistema que Amazon SQS devuelve en la respuesta SendMessage, pero este identificador es útil para identificar mensajes, no para acceder a ellos directamente.
Sources
FIFO queue delivery logic in Amazon SQS - Amazon Simple Queue Service
Amazon SQS FIFO queues - Amazon Simple Queue Service
FIFO queue and message identifiers in Amazon SQS - Amazon Simple Queue Service
Contenido relevante
- preguntada hace un mes
