

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.

# Tipos de colas de Amazon SQS
<a name="sqs-queue-types"></a>

Amazon SQS admite dos tipos de colas: [**estándar**](standard-queues.md) y [**FIFO**](sqs-fifo-queues.md). Use la siguiente tabla para determinar qué cola se adapta mejor a sus necesidades.


| Colas estándar | Colas FIFO | 
| --- | --- | 
|  **Rendimiento ilimitado**: las colas estándar admiten un número muy alto, casi ilimitado, de llamadas a la API por segundo y por acción ([https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html), [https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ReceiveMessage.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ReceiveMessage.html) o [https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_DeleteMessage.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_DeleteMessage.html)). Este alto rendimiento las hace ideales para casos de uso que requieren procesar grandes volúmenes de mensajes con rapidez, como el flujo de datos en tiempo real o las aplicaciones a gran escala. Si bien las colas estándar se escalan automáticamente en función de la demanda, es fundamental supervisar los patrones de uso para garantizar un rendimiento óptimo, especialmente en regiones con mayores cargas de trabajo. **At-least-once entrega: at-least-once entrega** garantizada, lo que significa que cada mensaje se entrega al menos una vez, pero en algunos casos, un mensaje puede entregarse más de una vez debido a reintentos o retrasos en la red. Debe diseñar su aplicación para administrar posibles mensajes duplicados mediante operaciones idempotentes, que garanticen que procesar el mismo mensaje varias veces no afecte al estado del sistema. **Orden de mejor esfuerzo**: permite orden de mejor esfuerzo, lo que significa que, si bien Amazon SQS intenta entregar los mensajes en el orden en que se enviaron, no lo garantiza. En algunos casos, los mensajes pueden llegar desordenados, especialmente en condiciones de alto rendimiento o por errores de recuperación. En el caso de las aplicaciones en las que el orden del procesamiento de los mensajes es crucial, debería administrar la lógica de reordenamiento dentro de la aplicación o utilizar colas FIFO para garantizar un orden estricto. **Durabilidad y redundancia**: las colas estándar garantizan una alta durabilidad al almacenar varias copias de cada mensaje en varias AWS zonas de disponibilidad. Esto garantiza que los mensajes no se pierdan, incluso en caso de que se produzcan fallos en la infraestructura. **Tiempo de espera de visibilidad**: Amazon SQS le permite configurar un tiempo de espera de visibilidad para controlar cuánto tiempo permanece oculto un mensaje después de recibirlo, lo que garantiza que otros consumidores no procesen el mensaje hasta que se haya procesado por completo o caduque el tiempo de espera.  | **Alto rendimiento**: si utiliza el [procesamiento por lotes](sqs-batch-api-actions.md), las colas FIFO procesan hasta 3000 mensajes por segundo por método de API ([https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessageBatch.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessageBatch.html), [https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ReceiveMessage.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ReceiveMessage.html) o [https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_DeleteMessageBatch.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_DeleteMessageBatch.html)). Este rendimiento se basa en 300 llamadas a la API por segundo, y cada llamada a la API administra un lote de 10 mensajes. Al habilitar el modo de alto rendimiento, puede escalar hasta 30 000 transacciones por segundo (TPS) con un orden flexible dentro de los grupos de mensajes. Sin el procesamiento por lotes, las colas FIFO admiten hasta 300 llamadas a la API por segundo, por método API (`SendMessage`, `ReceiveMessage` o `DeleteMessage`). Si necesita incrementar el rendimiento, puede solicitar un aumento de cuota a través del [Centro de soporte de AWS](https://console.aws.amazon.com/support/home#/case/create?issueType=service-limit-increase&limitType=service-code-sqs). Para activar el modo de alto rendimiento, consulte [Habilitación del alto rendimiento para las colas FIFO en Amazon SQS](enable-high-throughput-fifo.md). **Procesamiento único**: las colas FIFO entregan cada mensaje una vez y lo mantienen disponible hasta que usted lo procese y elimine. Al utilizar características como [https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html) o la desduplicación basada en contenido, se evitan los mensajes duplicados, incluso cuando se vuelven a intentar debido a problemas de red o a tiempos de espera. **First-in-first-out entrega**: las colas FIFO garantizan que reciba los mensajes en el orden en que se envían dentro de cada grupo de mensajes. Al distribuir los mensajes entre varios grupos, puede procesarlos en paralelo y, al mismo tiempo, mantener el orden dentro de cada grupo.  | 
|  ![\[Entrega mensajes de cola estándar.\]](http://docs.aws.amazon.com/es_es/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/sqs-what-is-sqs-standard-queue-diagram.png)  |  ![\[Entrega de mensajes de cola FIFO.\]](http://docs.aws.amazon.com/es_es/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/sqs-what-is-sqs-fifo-queue-diagram.png)  | 
| Utilice colas estándar para enviar datos entre aplicaciones cuando el rendimiento sea crucial, por ejemplo:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-types.html) |  Use colas FIFO para enviar datos entre aplicaciones cuando el orden de los eventos sea importante, por ejemplo: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-types.html)  | 

# Implementación de sistemas de solicitud-respuesta
<a name="implementing-request-response-systems"></a>

Al implementar un sistema de solicitud-respuesta o de llamada a procedimiento remoto (RPC), tenga en cuenta las siguientes prácticas recomendadas:
+ **Cree colas de respuesta al inicio**: en lugar de crear colas de respuesta por mensaje, créelas al inicio, por productor. Utilice un atributo de mensaje de ID de correlación para asignar las respuestas a las solicitudes de manera eficiente.
+ **Evite compartir las colas de respuestas entre los productores**: asegúrese de que cada productor tenga su propia cola de respuestas. Si se comparten las colas de respuesta, un productor puede recibir mensajes de respuesta destinados a otro productor.

Para obtener más información acerca de cómo implementar el patrón de solicitud de respuesta utilizando el Cliente de colas temporales, consulte [Patrón de mensajes de respuesta a solicitudes (colas virtuales)](sqs-temporary-queues.md#request-reply-messaging-pattern).