En este tutorial, aprenderá a configurar la mensajería asíncrona con Amazon Simple Queue Service (Amazon SQS). Amazon SQS es el servicio de AWS que permite a los componentes de las aplicaciones comunicarse en la nube. Utilizará la consola de Amazon SQS para crear y configurar una cola de mensajes, enviar un mensaje, recibir y eliminar dicho mensaje y, a continuación, eliminar la cola.

Los servicios de AWS que se utilizan en este tutorial están dentro de la capa gratuita de AWS.

El envío de mensajes en AWS requiere una cuenta

Crear una cuenta gratuita

La capa gratuita de AWS incluye un millón de solicitudes de Amazon Simple Queue Service.

Consulte los detalles de la capa gratuita de AWS»

 


a. Cuando haga clic aquí, se abrirá la consola de administración de AWS en una ventana nueva del navegador para que pueda seguir teniendo abierta esta guía paso a paso.  Cuando la pantalla se cargue, escriba su nombre de usuario y contraseña para comenzar. A continuación, escriba EC2 en la barra de búsqueda y seleccione Simple Queue Service para abrir la consola.

tmt_send-receive-async-messages_1a

(haga clic para ampliar).

tmt_send-receive-async-messages_1a

b.  Si se muestra la página de inicio de la consola de SQS, como se muestra en la captura de pantalla, haga clic en Empezar ahora. Si no aparece esta página, continúe con el siguiente paso.

tmt_send-receive-async-messages_1b

(haga clic para ampliar).

tmt_send-receive-async-messages_1b

En este paso, creará y configurará una cola de Amazon SQS. Una cola es un búfer alojado, fiable y altamente escalable que almacena los mensajes mientras viajan entre aplicaciones distribuidas o microservicios. Las colas ayudan a desacoplar aplicaciones, conectar microservicios, realizar tareas en lote o almacenar notificaciones.

Nuestro caso de uso de este tutorial simulará el almacenamiento de los pedidos entrantes de una aplicación de comercio electrónico.


a. En primer lugar, crearemos una cola simple que almacena pedidos realizados en la tienda. Escriba Pedidos en el campo Nombre de la Cola.  

tmt_send-receive-async-messages_2a

(haga clic para ampliar).

tmt_send-receive-async-messages_2a

b. Para este tutorial, no se requiere una ordenación estricta, por lo que no realizaremos ningún cambio en el tipo de cola. Deje la cola estándar seleccionada.  

tmt_send-receive-async-messages_2b

(haga clic para ampliar).

tmt_send-receive-async-messages_2b

c. Puede configurar su cola para modificar la configuración, como el periodo de retención, el tamaño máximo de mensaje y demoras en entregas. Para este tutorial, mantendremos los parámetros predeterminados. Seleccione Creación rápida de cola.

tmt_send-receive-async-messages_2c

(haga clic para ampliar).

tmt_send-receive-async-messages_2c

d. La nueva cola está creada y seleccionada en la lista de colas.

tmt_send-receive-async-messages_2d

(haga clic para ampliar).

tmt_send-receive-async-messages_2d

Una vez creada la cola, está listo para recibir mensajes de la tienda en línea que recopilen los detalles de cada pedido nuevo.


a.  Su cola ya está seleccionada en la lista. En Acciones para colas, seleccione Enviar un mensaje. Se muestra el cuadro de diálogo Enviar un mensaje a Pedidos.

tmt_send-receive-async-messages_3a

(haga clic para ampliar).

tmt_send-receive-async-messages_3a

b. Se muestra el cuadro de diálogo Enviar un mensaje a Pedidos. En la pestaña Cuerpo del mensaje, escriba el siguiente texto para representar un pedido de muestra:

1 x dispositivo de 29,99 USD
2 x cables para dispositivo de 4,99 USD

tmt_send-receive-async-messages_3b

(haga clic para ampliar).

tmt_send-receive-async-messages_3b

c. Seleccione la pestaña Atributos de los mensajes para agregar algunos metadatos opciones sobre este mensaje para un procesamiento fácil. Agreguemos un tipo de pedido al pedido. Escriba Order-Type en el campo Nombre, Cadena en el campo Tipo y En línea en el campo Valor . Haga clic en Agregar atributo.

tmt_send-receive-async-messages_3c

(haga clic para ampliar).

tmt_send-receive-async-messages_3c

d. Para enviar el mensaje inmediatamente, haga clic en Enviar mensaje. En el cuadro de diálogo Enviar un mensaje a Pedidos, se muestra la confirmación de envío de su mensaje. Haga clic en Cerrar.

tmt_send-receive-async-messages_3d

(haga clic para ampliar).

tmt_send-receive-async-messages_3d

Después de enviar un mensaje a la cola, otra aplicación puede utilizarlo y hacer algo con este mensaje. En este ejemplo, solo recuperará el mensaje para ver el pedido y luego eliminarlo.


a. Asegúrese de que su cola de Pedidos está seleccionada en la lista de cola. Luego, en Acciones para colas, seleccione Ver o eliminar mensajes.

tmt_send-receive-async-messages_4a

(haga clic para ampliar).

tmt_send-receive-async-messages_4a

b. Aparecerá el cuadro de diálogo Ver o eliminar mensajes en Pedidos. Cuando solicite un mensaje de una cola, no solicite un mensaje especifico. En su lugar, especifique la cantidad máxima de mensajes (hasta 10) que quiere recuperar.

Haga clic en Iniciar sondeo de mensajes para recuperar mensajes de la cola.  

tmt_send-receive-async-messages_4b

(haga clic para ampliar).

tmt_send-receive-async-messages_4b

c. Una vez que el consumidor reciba y procese un mensaje, se puede eliminar de la cola. Seleccione el mensaje que desea borrar y, luego, elija Eliminar 1 mensaje.

tmt_send-receive-async-messages_4c

(haga clic para ampliar).

tmt_send-receive-async-messages_4c

d. Se mostrará el cuadro de diálogo Eliminar mensajes . Marque la casilla junto al mensaje y haga clic en Sí, eliminar los mensajes seleccionados. Se eliminó el mensaje seleccionado. Seleccione Cerrar.

tmt_send-receive-async-messages_4d

(haga clic para ampliar).

tmt_send-receive-async-messages_4d

Cuando ya no necesite usar la cola de Amazon SQS, recomendamos que la elimine.


a. En la lista de cola, seleccione la cola de Pedidos. En Acciones para colas, seleccione Eliminar cola.

tmt_send-receive-async-messages_5a

(haga clic para ampliar).

tmt_send-receive-async-messages_5a

b. Se mostrará el cuadro de diálogo Eliminar colas. Puede borrar su cola incluso si aún tiene mensajes. Seleccione Sí, eliminar cola. Se eliminó la cola.

tmt_send-receive-async-messages_5b

(haga clic para ampliar).

tmt_send-receive-async-messages_5b

Ha creado su primera cola de mensajes de Amazon Simple Queue Service (Amazon SQS), enviado mensajes a su cola, recuperado y eliminado mensajes y, luego, eliminado la cola. Ahora puede usar las colas de Amazon SQS para almacenar y mover datos entre componentes de aplicaciones distribuidas y microservicios.

Ahora que sabe cómo usar Amazon Simple Queue Service para enviar y recibir mensajes, elija una de las siguientes opciones para perfeccionar aún más sus habilidades de mensajería.

Más información

Obtenga información general sobre las capacidades, los componentes y los casos de uso de las colas de mensajes en Amazon Web Services (AWS).

Visite la página web de Amazon SQS »

Profundice sus conocimientos

Explore los distintos tipos de colas, las características principales y la arquitectura de Amazon Simple Queue Service.

Lea la documentación »

Ver en acción

Averigüe de qué manera clientes como Capital One usan Amazon SQS y Amazon SNS para desacoplar aplicaciones y ajustar su escala.

Vea el seminario web »

No