

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.

# Uso del ID de grupo de mensajes con las colas FIFO de Amazon SQS
<a name="using-messagegroupid-property"></a>

En las colas FIFO (primero en entrar, primero en salir), [https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html) es un atributo que organiza los mensajes en grupos distintos. Los mensajes de un mismo grupo siempre se procesan de uno en uno, siguiendo un orden estricto, lo que garantiza que no se procesen dos mensajes del mismo grupo simultáneamente. En las colas estándar, el uso de `MessageGroupId` permite crear [colas justas](sqs-fair-queues.md). Si se requiere un orden estricto, utilice una cola FIFO. 

**Topics**
+ [Intercalación de varios grupos de mensajes ordenados en Amazon SQS](interleaving-multiple-ordered-message-groups.md)
+ [Prevención del procesamiento duplicado en un sistema de varios productores y consumidores en Amazon SQS](avoding-processing-duplicates-in-multiple-producer-consumer-system.md)
+ [Elusión del volumen de tareas pendientes de mensajes con el mismo ID de grupo de mensajes en Amazon SQS](avoid-backlog-with-the-same-message-group-id.md)
+ [Cómo evitar reutilizar el mismo ID de grupo de mensajes con colas virtuales en Amazon SQS](avoiding-reusing-message-group-id-with-virtual-queues.md)

# Intercalación de varios grupos de mensajes ordenados en Amazon SQS
<a name="interleaving-multiple-ordered-message-groups"></a>

Para intercalar varios grupos de mensajes ordenados dentro de una única cola FIFO, asigne un [https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html) a cada grupo (por ejemplo, datos de sesiones para diferentes usuarios). Esto permite que varios consumidores lean de la cola simultáneamente, al tiempo que se garantiza que los mensajes del mismo grupo se procesen en orden.

Cuando se está procesando un mensaje con un `MessageGroupId` específico y este es invisible, ningún otro consumidor puede procesar mensajes de ese mismo grupo hasta que se agote el tiempo de espera de visibilidad o se elimine el mensaje.

# Prevención del procesamiento duplicado en un sistema de varios productores y consumidores en Amazon SQS
<a name="avoding-processing-duplicates-in-multiple-producer-consumer-system"></a>

En un sistema de alto rendimiento y baja latencia en el que el orden de los mensajes no es una prioridad, los productores pueden asignar un [https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html) único a cada mensaje. Esto garantiza que las colas FIFO de Amazon SQS eliminen los duplicados, incluso en una configuración con varios productores y varios consumidores. Si bien este enfoque evita la duplicación de mensajes, no garantiza el orden de los mismos, ya que cada mensaje se trata como un grupo independiente.

En cualquier sistema con varios productores y consumidores, siempre existe el riesgo de que se produzcan duplicados en la entrega. Si un consumidor no procesa un mensaje antes de que expire el tiempo de espera de visibilidad, Amazon SQS vuelve a hacer que el mensaje esté disponible, lo que posiblemente permita que otro consumidor lo recoja. Para mitigar esta situación, asegúrese de configurar correctamente la confirmación de mensajes y el tiempo de espera de visibilidad en función del tiempo de procesamiento.

# Elusión del volumen de tareas pendientes de mensajes con el mismo ID de grupo de mensajes en Amazon SQS
<a name="avoid-backlog-with-the-same-message-group-id"></a>

Las colas FIFO admiten un máximo de 120 000 mensajes en tránsito (mensajes recibidos por un consumidor, pero que aún no se han eliminado). Si se alcanza este límite, Amazon SQS no devuelve ningún error, pero el procesamiento puede verse afectado. Puede solicitar un aumento por encima de este límite poniéndose en contacto con [AWS Support](https://docs.aws.amazon.com/awssupport/latest/user/create-service-quota-increase.html).

Las colas FIFO escanean los primeros 120 000 mensajes para determinar los grupos de mensajes disponibles. Si se acumula un gran volumen de tareas pendientes en un solo grupo de mensajes, los mensajes de los demás grupos enviados posteriormente permanecerán bloqueados hasta que se procesen las tareas pendientes.

**nota**  
Puede haber tareas pendientes de mensajes cuando un consumidor no logra procesar un mensaje repetidamente. Esto puede deberse a problemas con el contenido de los mensajes o a errores por parte del consumidor. Para evitar retrasos en el procesamiento de los mensajes, configure una [cola de mensajes fallidos](sqs-dead-letter-queues.md) para trasladar los mensajes no procesados después de varios intentos fallidos. De este modo, se garantiza que los demás mensajes del mismo grupo puedan procesarse, lo que evita los cuellos de botella en el sistema.

# Cómo evitar reutilizar el mismo ID de grupo de mensajes con colas virtuales en Amazon SQS
<a name="avoiding-reusing-message-group-id-with-virtual-queues"></a>

Cuando utilice colas virtuales con una cola de host compartida, evite reutilizar el mismo [https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html) en distintas colas virtuales. Si varias colas virtuales comparten la misma cola de host y contienen mensajes con el mismo `MessageGroupId`, esos mensajes pueden bloquearse entre sí, lo que impide un procesamiento eficiente. Para garantizar un procesamiento fluido de los mensajes, asigne valores `MessageGroupId` únicos a los mensajes de las diferentes colas virtuales.