ENES

Amazon SQS

Una fila de espera para mensajes entre programas, para que ninguno se pierda.

Un productor dejando mensajes en una cola y un consumidor tomándolos de a uno

Amazon SQS (Simple Queue Service) es una cola de mensajes administrada. Un programa (el productor) deja mensajes en la cola; otro (el consumidor) los va tomando cuando está listo. Los dos nunca hablan directamente y ni siquiera necesitan estar corriendo al mismo tiempo.

Resuelve un problema muy común: una parte del sistema es más rápida que otra. Una tienda online recibe 5.000 pedidos por minuto en una liquidación, pero el servicio que imprime las etiquetas de envío procesa 50 por minuto. Con una cola en el medio, los pedidos esperan en fila en vez de fallar, y la impresora de etiquetas los va sacando a su ritmo.

SQS guarda cada mensaje hasta que un consumidor lo borra. Si el consumidor se cae a mitad de camino, el mensaje vuelve a hacerse visible después de un tiempo y otro consumidor lo reintenta. Los que fallan demasiadas veces van a una dead-letter queue para que una persona los revise. Se combina muy bien con AWS Lambda: una función se puede disparar por cada lote de mensajes que llega.

Hay dos tipos: colas estándar (muchísimo caudal, orden casi siempre respetado, un mensaje puede llegar dos veces muy de vez en cuando) y colas FIFO (orden estricto, sin duplicados, menos caudal).

Para quedarse

Para seguir leyendo

Términos relacionados

Más de AWS