Saltar al contenido principal

Servicio de Cola Simple de Amazon (SQS): Un tutorial completo

Este tutorial te enseña a crear, administrar y utilizar las colas de Amazon SQS para crear aplicaciones distribuidas escalables en AWS, con ejemplos prácticos que utilizan tanto la consola como la CLI.
Actualizado 23 sept 2024  · 29 min de lectura

Amazon Simple Queue Service (SQS) es un servicio de colas de mensajes totalmente gestionado proporcionado por Amazon Web Services (AWS). Permite desacoplar y escalar sistemas distribuidos, microservicios y aplicaciones sin servidor.

Esta guía proporciona una comprensión clara de AWS SQS, cubriendo sus características y el proceso de configuración y administración de colas. También analiza cómo enviar y recibir mensajes, examina los modelos de precios, explora la supervisión y las métricas, compara SQS con SNS y comparte las mejores prácticas para un uso óptimo. 

Para quienes no tengan experiencia en AWS, nuestro curso Introducción a AWS es un buen punto de partida. Te ayuda a descubrir el mundo de Amazon Web Services y a comprender por qué está a la vanguardia de la computación en nube.

¿Qué es AWS SQS?

Antes de entrar en detalles, entendamos primero qué es AWS SQS y por qué es tan valioso en el ecosistema de AWS.

Diagrama de arquitectura de AWS SQS

Diagrama de arquitectura de Amazon SQS

AWS SQS es un sistema de colas distribuido que permite a las aplicaciones de servicios web poner en cola de forma rápida y fiable mensajes generados por productores para ser consumidos por consumidores.

Una cola sirve como repositorio temporal de mensajes en espera de ser procesados. Amazon SQS también ofrece capacidades de reintento a través de su política redrive, que permite múltiples reintentos y el uso de colas de letra muerta (DLQ) utilizadas para administrar mensajes propensos a errores, notificando los problemas a los desarrolladores y, opcionalmente, almacenando los mensajes para su futuro reprocesamiento.

Características y ventajas de SQS

Utilizar SQS tiene varias ventajas, entre las que se incluyen las siguientes

Principales características y beneficios de AWS SQS

Principales características y beneficios de AWS SQS

  • Escalabilidad: SQS puede gestionar cualquier cantidad de tráfico sin que tengas que aprovisionar o gestionar infraestructura.
  • Durabilidad: Los mensajes se almacenan de forma redundante en varias zonas de disponibilidad.
  • Disponibilidad: Ofrece alta disponibilidad para producir y consumir mensajes.
  • Seguridad: Proporciona encriptación del lado del servidor (SSE) para proteger el contenido de los mensajes.
  • Flexibilidad: Admite múltiples formatos de mensaje y puede utilizarse con varios servicios de AWS.

Casos prácticos de desacoplamiento y escalado de microservicios

Varios casos de uso industrial pueden aprovechar las ventajas de SQS, y algunos de ellos se ilustran a continuación:

Casos de uso de AWS SQS en el desacoplamiento y escalado de microservicios

Casos de uso de AWS SQS en el desacoplamiento y escalado de microservicios

  • Cola de trabajo: Distribuye las tareas entre varios procesos de trabajo.
  • Memoria intermedia para escrituras en la base de datos: Protege una base de datos de una carga de escritura excesiva.
  • Solicitar descarga: Desplaza las operaciones lentas fuera de las rutas de petición interactivas.
  • Procesamiento por lotes: Recoge y procesa un grupo de mensajes a la vez.

Conviértete en Ingeniero de Datos

Desarrolla tus habilidades en Python para convertirte en un ingeniero de datos profesional.
Empieza Gratis

Configuración de AWS SQS

Ahora que ya sabemos qué es SQS, veamos cómo configurarlo. Esta sección te guiará a través de los requisitos previos y de cómo acceder a la consola SQS.

Requisitos previos

Antes de empezar a utilizar AWS SQS, asegúrate de que tienes:

  • Una cuenta AWS activa. Se puede crear desde la página oficial.
  • Los roles y permisos IAM necesarios configurados para el acceso a SQS.

Para configurar los permisos IAM:

  • Ve a la consola IAM.
  • Crea una nueva política.

Configuración de AWS SQS

Configuración de AWS SQS

  • Hay dos opciones principales para crear una política: un enfoque visual o JSON. En nuestro caso, utilizamos el enfoque visual, que es más intuitivo. 
  • Elige "SQS" en el área "Servicio" y ajusta el Efecto a "Permitir" los siguientes permisos: sqs:CreateQueue, sqs:DeleteQueue, sqs:SendMessage, sqs:ReceiveMessage, sqs:DeleteMessage.

Configuración de AWS SQS

Configuración de AWS SQS

  • Permite que las acciones accedan a "Todos" los recursos y elige "Siguiente".
  • Dale un nombre a la política, que en nuestro caso corresponde a "SQSHandsOnPolicies", y por último crea la política.

Configuración de AWS SQS

Configuración de AWS SQS

La política final debe tener este aspecto en formato JSON:

Configuración de AWS SQS

Configuración de AWS SQS

Veamos brevemente la definición de nuestra política:

  • “Version”: “2012-10-17” es la versión actual del lenguaje de la política IAM.
  • La política contiene un “Statement”, que define un conjunto de permisos.
  • “Sid”: “VisualEditor0” significa que esta política se ha creado mediante un editor visual.
  • “Effect”: “Allow” significa que estas acciones están permitidas.
  • “Action”: Esta lista especifica las operaciones SQS anteriores que están permitidas:
  • “Resource”: “*” significa que estas acciones están permitidas en todos los recursos SQS de la cuenta.

Esta política da acceso total para crear, eliminar, enviar y recibir mensajes de cualquier cola SQS de la cuenta. Es bastante permisivo, por lo que quizá queramos restringirlo a ARN de cola específicos para mejorar la seguridad en un entorno de producción.

Si quieres saber más sobre la configuración de IAM, el tutorial La guía completa de AWS Identity and Access Management (IAM) enseña cómo proteger tu entorno de AWS, administrar el acceso con usuarios, grupos y roles, y aplicar las mejores prácticas para una seguridad sólida.

Para profundizar tus conocimientos sobre la configuración de AWS, puedes consultar la página Cómo instalar y configurar AWS: Un tutorial completo sería útil para descubrir las configuraciones esenciales, las mejores prácticas para la seguridad y cómo aprovechar los servicios de AWS para el análisis de datos y el aprendizaje automático.

Acceder a la consola de Amazon SQS

Una vez establecidos los requisitos previos, el siguiente paso es acceder a la consola SQS para empezar a crear y gestionar colas. Estos son los pasos para acceder a la consola:

  • En la barra de búsqueda de la parte superior, escribe "SQS" y selecciona "Simple Queue Service" en el desplegable.
  • Se te dirigirá al panel de control de SQS.

Acceder a la consola de Amazon SQS

Acceder a la consola de Amazon SQS

Crear y gestionar colas SQS

Con acceso a la consola SQS, podemos empezar a crear y gestionar colas. En esta sección se explicará cómo crear colas estándar y colas FIFO.

Pero espera, ¿dónde entra en juego nuestra Política IAM?

La política IAM que creamos en la sección de requisitos previos es crucial para la creación y gestión de colas. Así es como influye:

  • Asociación de usuario o rol: La política debe adjuntarse al usuario o rol IAM que estés utilizando para acceder a la consola de SQS o a la CLI de AWS.
  • Comprobación de permisos: Cuando intentas crear una cola (o realizar cualquier otra acción de SQS), AWS comprueba esta política para asegurarse de que tienes los permisos necesarios.
  • Autorización de acción: El permiso sqs:CreateQueue de nuestra política permite específicamente la creación de colas. Sin esto, recibirías un error de "Acceso denegado" al crear una cola.
  • Operaciones en curso: Los demás permisos de la política (sqs:SendMessage, sqs:ReceiveMessage, sqs:DeleteMessage, sqs:DeleteQueue) te permiten realizar diversas operaciones en la cola tras su creación.

Una vez entendido esto, vamos a seguir creando nuestras colas, empezando por una cola estándar.

Crear una cola estándar

Las colas estándar son el tipo de cola por defecto en SQS. Aquí te explicamos cómo crear uno:

  • En el panel de control de SQS, haz clic en "Crear cola".
  • Elige "Estándar" como tipo de cola.
  • Introduce un nombre para la cola, que en nuestro caso es "SQSHandsOn".
  • Configura los ajustes de la cola: Tiempo de espera de visibilidad, Periodo de retención de mensajes, Tamaño máximo de mensaje y Retraso de entrega. Dejemos esos valores por defecto como están, y luego haz clic en "Crear cola".

Crear una cola estándar

Crear una cola estándar

Una creación de cola con éxito genera un mensaje confirmando su creación, como se muestra a continuación, junto con información adicional sobre la cola.

Crear una cola estándar

Crear una cola estándar

Crear una cola FIFO

Las colas FIFO se utilizan para garantizar el orden de procesamiento de los mensajes, y a continuación se indican los pasos para crear una: 

  • En el panel de control de SQS, haz clic en "Crear cola".
  • Elige "FIFO" como tipo de cola.
  • Introduce un nombre para tu cola (debe terminar en ".fifo"). Yo llamé al mío "SQSHandsOn.fifo".
  • De forma similar al escenario anterior, deja todo lo demás en su configuración por defecto y "Crear cola". 

Crear una cola FIFO

Crear una cola FIFO

De forma similar a la cola estándar, la creación con éxito del FIFO también proporciona los mismos detalles utilizados para enviar mensajes.

Crear una cola FIFO

Crear una cola FIFO

Diferencias entre las colas estándar y FIFO

Al elegir entre las colas estándar y FIFO en Amazon SQS, es importante comprender sus características y capacidades distintas. 

La tabla siguiente ofrece un análisis comparativo para ayudarte a decidir qué tipo de cola se adapta mejor a las necesidades de tu aplicación:

Diferencias entre colas estándar y colas FIFO

Diferencias entre las colas estándar y FIFO

Envío y recepción de mensajes en SQS

Ahora que todas nuestras colas están configuradas, empecemos a enviar y recibir mensajes. En esta sección se explica cómo hacerlo a través de la consola de administración de AWS y de la interfaz de línea de comandos (CLI) de AWS.

Enviar mensajes

Se muestra el proceso de envío de mensajes utilizando las colas estándar y FIFO.

Cola estándar

Utilizar la consola de administración de AWS
  • Selecciona tu cola en el panel SQS.
  • Haz clic en "Enviar y recibir mensajes".
  • En el campo "Cuerpo del mensaje", introducimos un mensaje, por ejemplo: "Esta cola se crea utilizando el tutorial Guía completa de Amazon Simple Queue Service (SQS)".
  • Haz clic en "Enviar mensaje".

Envío de mensajes mediante la consola de administración de AWS

Envío de mensajes mediante la consola de administración de AWS

Tras enviar el mensaje, una ventana emergente confirma que se ha enviado. Al hacer clic en "Ver detalles" se obtienen los detalles de nuestro mensaje, como se muestra a continuación.

Envío de mensajes mediante la consola de administración de AWS

Envío de mensajes mediante la consola de administración de AWS

Por último, en la sección "Recibir mensajes", podemos ver que hay un mensaje disponible.

Envío de mensajes mediante la consola de administración de AWS

Envío de mensajes mediante la consola de administración de AWS

Uso de la CLI de AWS SQS

Los pasos principales para enviar un mensaje a través de la CLI siguen la siguiente plantilla.

aws sqs send-message --queue-url [YOUR URL]--message-body "YOUR MESSAGE"

Para el método de cola estándar, nuestra URL aparece en la captura de pantalla correspondiente. Para la CLI, utilicemos un mensaje diferente:

  • URL: https://sqs.us-east-1.amazonaws.com/022499002265/SQSHandsOn
  • Mensaje: "Mensaje enviado a través de la CLI de AWS"

El primer paso para empezar a utilizar la CLI es configurarla para que pueda interactuar con nuestros recursos de AWS, y para ello se necesitan las siguientes credenciales:

  • ID de la clave de acceso
  • Clave de acceso secreta
aws configure

Una vez completada la configuración, ejecuta el siguiente comando con los valores de los argumentos correctos:

aws sqs send-message --queue-url https://sqs.us-east-1.amazonaws.com/022499002265/SQSHandsOn --message-body "Message sent via AWS CLI"

Envío de mensajes mediante CLI

Enviar mensajes utilizando la CLI

La salida JSON de la ejecución del comando corresponde a los detalles del nuevo mensaje enviado, y podemos ver que ahora hay dos mensajes en la cola SQSHandsOn.

Envío de mensajes mediante CLI

Enviar mensajes utilizando la CLI

Cola FIFO

El proceso de envío de mensajes mediante FIFO difiere ligeramente del planteamiento de colas estándar.

Para ilustrar mejor este escenario, imagina que diriges una plataforma de comercio electrónico que vende dispositivos electrónicos. 

Tu sistema tiene que gestionar varias operaciones, como procesar pedidos, actualizar el inventario y gestionar los pagos. En este caso, podemos utilizar una cola SQS FIFO para garantizar que estas operaciones se procesan en el orden correcto y sin duplicados.

  • Ejemplo CLI 1 (Pedido de cliente): Este mensaje se envía cuando un cliente realiza un nuevo pedido. El sistema de procesamiento de pedidos recogerá estos mensajes y los cumplimentará en el orden en que fueron recibidos.
  • Ejemplo CLI 2 (Actualización del inventario): Después de procesar un pedido, se envía este mensaje para actualizar el inventario. Garantiza que los niveles de existencias se mantienen con precisión a medida que se venden los productos.
  • Ejemplo de consola (Procesamiento de pagos): Este mensaje se genera cuando hay que procesar el pago de un pedido. Garantiza que los pagos se gestionen en el orden en que se recibieron y evita que se cobren dos veces.

Utilizar una cola FIFO para estas operaciones garantiza que:

  • Los pedidos se procesan en el orden en que se realizaron.
  • Las actualizaciones de inventario se producen en el orden correcto, evitando la sobreventa.
  • Los pagos se procesan una vez y en el orden correcto.

Cuando envíes mensajes a una cola SQS FIFO, recuerda dos elementos clave:

  • ID del grupo de mensajes: Obligatorio para todos los mensajes. Determina qué mensajes se procesan en orden dentro de un grupo.
  • ID de deduplicación de mensajes: Garantiza que cada mensaje se procese sólo una vez dentro de una ventana de 5 minutos.

Entendido esto, procedamos con el enfoque CLI.

Uso de la CLI de AWS SQS

   Podemos ejecutar los siguientes comandos para enviar los dos primeros mensajes de la cola FIFO.

  • Ejemplo CLI 1: Enviar un pedido de un cliente:
aws sqs send-message --queue-url https://sqs.us-east-1.amazonaws.com/022499002265/SQSHandsOn.fifo --message-body "Process customer order: #A1001" --message-group-id "CustomerOrders" --message-deduplication-id "Order-A1001-20240817-1"

A continuación se muestra el resultado de esta primera ejecución.

Ejemplo 1 - Resultado del envío de mensajes mediante CLI con FIFO

Ejemplo 1 - Envío de resultados de mensajes mediante CLI con FIFO

  • Ejemplo CLI 2: Enviando una actualización del inventario:
aws sqs send-message --queue-url https://sqs.us-east-1.amazonaws.com/022499002265/SQSHandsOn.fifo --message-body "Update inventory: ProductX -5 units"  --message-group-id "InventoryUpdates" --message-deduplication-id "Inventory-ProductX-20240817-1"

A continuación se muestra el resultado.

Ejemplo 2 - Resultado del envío de mensajes mediante CLI con FIFO

Ejemplo 2 - Envío de resultados de mensajes mediante CLI con FIFO

Hasta ahora, se han enviado dos mensajes a la cola FIFO, y se pueden ver a continuación.

Resultado del envío de mensajes mediante CLI con FIFO - Número de mensajes

Resultado del envío de mensajes utilizando la CLI con colas FIFO - Número de mensajes

Utilizar la consola de administración de AWS

De forma similar a la cola estándar, podemos enviar mensajes desde la consola de gestión como se indica a continuación:

  • En las páginas "Colas", elige la "SQSHandsOn.fifo".
  • Selecciona la pestaña "Enviar y recibir mensaje" para enviar un mensaje.
  • Se requieren campos adicionales como "ID de grupo de mensajes" e "ID de deduplicación de mensajes".

Envío de Mensajes Resultado Utilizando la Consola de Administración con FIFO

Resultado del envío de mensajes utilizando la consola de gestión con colas FIFO

Ahora, podemos ver que el número total de mensajes en la cola FIFO es tres.

Resultado del envío de mensajes utilizando la consola de gestión con FIFO - Número total de mensajes

Resultado del envío de mensajes mediante la consola de gestión con colas FIFO - Número total de mensajes

Recibir y borrar mensajes

Recibir y borrar mensajes es tan importante como enviarlos. He aquí cómo hacer ambas cosas.

Cola estándar

Utilizar la consola de administración de AWS
  • Selecciona tu cola en el panel SQS.
  • Haz clic en "Enviar y recibir mensajes".
  • Haz clic en "Sondear mensajes".
  • Los mensajes aparecerán en la sección "Mensajes".

Recepción de mensajes mediante la consola de gestión con la cola estándar

Recepción de mensajes mediante la consola de administración de AWS con cola estándar

Arriba puedes ver los dos mensajes de la cola estándar.

Uso de AWS CLI SQS

A continuación se muestra el comando general para recibir mensajes de una cola estándar.

aws sqs receive-message --queue-url [YOUR URL]

Utilizando nuestra cola estándar, el comando completo pasa a ser:

aws sqs receive-message --queue-url https://sqs.us-east-1.amazonaws.com/022499002265/SQSHandsOn

Cola FIFO

El proceso para recuperar mensajes a través de la consola de gestión sigue el mismo proceso que el enfoque estándar.

Para recibir mensajes de una cola FIFO utilizando la CLI de AWS, puedes utilizar el comando aws sqs receive-message. Ésta es la estructura básica:

aws sqs receive-message --queue-url https://sqs.us-east-1.amazonaws.com/022499002265/SQSHandsOn.fifo --attribute-names All --message-attribute-names All --max-number-of-messages 3
  • -attribute-names All: Recupera todos los atributos del mensaje.
  • -message-attribute-names All: Recupera todos los atributos personalizados de los mensajes.
  • --max-number-of-messages 3: Especifica el número máximo de mensajes a

La ejecución del comando anterior da los tres mensajes dentro de la cola FIFO.

Recepción del resultado de los mensajes mediante CLI con FIFO

Resultado de la recepción de mensajes utilizando la CLI con colas FIFO

Precios de AWS SQS

Comprender el modelo de precios es crucial para utilizar SQS de forma rentable. Esta sección desglosa los precios y ofrece consejos para gestionar los costes.

En general, el precio de AWS SQS se basa en el número de solicitudes de API realizadas, la transferencia de datos y las características opcionales utilizadas.

Solicitar precios

Las tablas siguientes ofrecen una visión general de los precios de las solicitudes de SQS:

 

Colas estándar 

(por millón de solicitudes)

Colas FIFO 

(por millón de solicitudes)

Primer millón de peticiones/mes

Gratis

Gratis

De 1 millón a 100.000 millones de peticiones/mes

$0.40

$0.5

De 100.000 a 200.000 millones de peticiones/mes

$0.30

$0.40

Más de 200.000 millones de peticiones/mes

0.24

$0.35

Precios de AWS Página de SQS

Precios de transferencia de datos

Para entender el precio de la transferencia de datos, consulta la tabla siguiente:

Transferencia de datos IN

Precios

Todas las transferencias de datos en

0,00 $ por GB

Transferencia de datos OUT

Precios

Primeros 10 TB/Mes

0,09 $ por GB

Siguiente 40 TB / Mes

0,085 $ por GB

Siguiente 100 TB / Mes

0,07 $ por GB

Más de 150 TB / Mes

0,05 $ por GB

Precios de AWS Página de SQS

Consejos para la gestión de costes

Aquí tienes algunos consejos rápidos para gestionar tus costes de SQS:

  • Utiliza sondeos largos para reducir el número de recepciones vacías.
  • Realiza por lotes tus operaciones de envío y recepción.
  • Monitoriza tu uso con el Explorador de Costes de AWS.

Monitorización y métricas de AWS SQS

Una supervisión eficaz es fundamental para mantener una implantación saludable del SQS. Esta sección cubre métricas importantes y cómo configurar alarmas.

Métricas clave de AWS SQS

Aquí tienes algunas de las métricas más importantes que debes vigilar:

Métricas clave de AWS SQS

Métricas clave de AWS SQS

ApproximateNumberOfMessagesVisible

Esta métrica representa el número de mensajes disponibles para recuperar de la cola. Es un indicador del retraso en las colas y de la eficacia del procesamiento. Un número elevado puede indicar cuellos de botella en el procesamiento.

ApproximateAgeOfOldestMessage

Esta métrica muestra cuánto tiempo ha estado en la cola el mensaje más antiguo no borrado. Ayuda a identificar posibles problemas con el procesamiento de mensajes, como mensajes atascados o consumidores lentos. Para las colas FIFO, esta métrica es vital, ya que puede indicar grupos de mensajes bloqueados.

NúmeroDeMensajesEnviados

Registra el número de mensajes añadidos a la cola. Es útil para controlar las tasas de entrada en cola e identificar picos inusuales en la producción de mensajes. Ten en cuenta que los mensajes enviados manualmente a las colas de letra muerta se incluyen en este recuento.

NúmeroDeMensajesRecibidos

Esta métrica indica cuántos mensajes se han devuelto a los consumidores desde la cola. Ayuda a controlar la tasa de salida de la cola y puede compararse con NumberOfMessagesSent para medir la eficacia del procesamiento. Al igual que NumberOfMessagesSent, no incluye los mensajes movidos automáticamente a las colas de mensajes muertos debido a un procesamiento fallido

Configurar las alarmas de CloudWatch

Se ilustra la creación de una alarma CloudWatch para las cuatro métricas anteriores. El proceso es el mismo para todas esas métricas. De ahí que nos centremos en una sola métrica y sólo en la SQS Estándar ( SQSHandsOn) para simplificar .

Los pasos principales para configurar alarmas para el NúmeroAproximadoDeMensajesVisibles son los siguientes.

Las alarmas de CloudWatch pueden alertarte de posibles problemas. A continuación te explicamos cómo configurarlos desde la consola de gestión:

  • Busca "CloudWatch" y selecciónalo.
  • En el panel de navegación izquierdo, haz clic en "Alarmas".
  • Pulsa el botón "Crear alarma".
  • Haz clic en "Seleccionar métrica".
  • En la pestaña "Todas las métricas", busca y haz clic en "SQS".
  • Haz clic en "Métricas de cola". 
  • Busca tu cola y selecciona la métrica NúmeroAproximadoDeMensajesVisibles y la métrica estándar SQSHandsOn.

Configurar las alarmas de CloudWatch

Configurar las alarmas de CloudWatch

  • En la página anterior, selecciona "Métricas gráficas".
  • Elige la estadística y ajústala a "Media".
  • Establece el periodo, que en nuestro caso es de 5 minutos, y elige "Seleccionar métrica".

Configurar las alarmas de CloudWatch

Configurar las alarmas de CloudWatch

  • Dale un nombre a la métrica (por ejemplo, "SQS-AvgHighMessageCount-SQSHandsOn"), y establece el "Tipo de umbral" en "Estático".
  • Proporciona una condición a la alarma. Esto corresponde a "Mayor" en nuestro caso.
  • Fijemos el valor del umbral en "20" y seleccionemos "Siguiente".

Configurar las alarmas de CloudWatch

Configurar las alarmas de CloudWatch

La configuración anterior significa que esta alarma se activará cuando el número medio de mensajes visibles en tu colaSQSHandsOn supere los 20 para al menos un punto de datos en 5 minutos. El gráfico muestra el recuento actual de mensajes (línea azul) en relación con el umbral (línea roja a 20).

Esta configuración ayuda a controlar si nuestra cola acumula demasiados mensajes sin procesar, lo que podría indicar retrasos en el procesamiento o problemas con los consumidores. 

Los consumidores se refieren a todas nuestras aplicaciones o componentes del sistema que recuperan y procesan mensajes de la cola.

Si el recuento medio de mensajes supera los 20, recibirás una alerta, que te permitirá investigar y tomar las medidas adecuadas para evitar atascos en tu cola.

  • La acción "Siguiente" anterior lleva a "Configurar acciones", por lo que no necesitamos configurar nada. Dejamos esa página como está.
  • Elige "Siguiente" e introduce un nombre único para la alarma, que en nuestro caso es "SQSHandsOn-HighMessageCount".
  • Opcionalmente, añade una descripción y selecciona "Siguiente".
  • Revisa tu configuración y haz clic en "Crear alarma".

Configurar las alarmas de CloudWatch

Configurar las alarmas de CloudWatch

  • Deberíamos ver el mensaje verde de confirmación de nuestra alarma, junto con el nombre de la alarma en la columna "Nombre".

Configurar las alarmas de CloudWatch

Configurar las alarmas de CloudWatch

  • Después de seleccionar el nombre de la alarma, se proporciona el detalle completo como sigue:

Configurar las alarmas de CloudWatch

Configurar las alarmas de CloudWatch

La alarma de nuestra colaSQSHandsOn está actualmente en estado "Datos insuficientes". Esto significa que CloudWatch carece de información suficiente para determinar si la alarma debe activarse. 

El gráfico no muestra puntos de datos, lo que indica que la cola es nueva. La alarma se activa cuando el recuento medio de mensajes supera los 20 en 5 minutos. 

CloudWatch recopilará datos y actualizará el estado de alarma a medida que la cola se active y se procesen los mensajes. 

AWS SNS vs SQS

Aunque tanto SQS como SNS son servicios de mensajería, tienen finalidades distintas. Esta sección aclara las diferencias y los casos de uso de cada uno.

Tabla comparativa SNS versus SQS

Tabla comparativa SNS versus SQS

Mejores prácticas de AWS SQS

Seguir las mejores prácticas es importante para sacar el máximo partido a SQS. Estos son algunos consejos para un uso óptimo:

  • Utiliza el sondeo largo para reducir costes y latencia.
  • Implementa colas de espera para mensajes problemáticos.
  • Utiliza operaciones por lotes siempre que sea posible.
  • Asegura tus colas con políticas de acceso adecuadas.
  • Controla la profundidad de la cola y ajusta tu capacidad de procesamiento en consecuencia.
  • Utiliza la encriptación en tránsito y en reposo para los datos sensibles.

Conclusión

AWS SQS es una potente herramienta para crear aplicaciones en la nube escalables y resistentes. Al desacoplar los componentes de tu aplicación, puedes conseguir mayor flexibilidad, tolerancia a fallos y escalabilidad. Gracias a su facilidad de uso, su sólido conjunto de características y su integración con otros servicios de AWS, SQS es un servicio esencial para las arquitecturas modernas en la nube.

Recuerda monitorizar tu uso, optimizar tu implementación y seguir las mejores prácticas para sacar el máximo partido a AWS SQS. A medida que tu aplicación crece y evoluciona, SQS puede adaptarse a tus necesidades cambiantes, lo que lo convierte en un valioso activo de tu caja de herramientas de AWS.

Continúa tu viaje por AWS inscribiéndote en nuestro curso de Tecnología y Servicios en la Nube de AWS. Este paso inicial te permitirá avanzar en tu carrera y más adelante obtener la certificación AWS.

Certifícate en el puesto de Ingeniero de Datos de tus sueños

Nuestros programas de certificación te ayudan a destacar y a demostrar que tus aptitudes están preparadas para el trabajo a posibles empleadores.

Consigue Tu Certificación
Timeline mobile.png

Preguntas frecuentes

¿Cuál es la diferencia entre una cola estándar y una cola FIFO en SQS?

Una cola estándar permite un rendimiento ilimitado y la entrega de mensajes al menos una vez, sin garantía del orden de los mensajes. Una cola FIFO, en cambio, asegura que los mensajes se procesan en el orden exacto en que se envían y garantiza que cada mensaje se procesa una sola vez.

¿Cómo puedo controlar el acceso a mis colas SQS?

Puedes controlar el acceso a las colas SQS mediante políticas IAM y políticas de recursos SQS. Las políticas IAM te permiten gestionar los permisos para usuarios y roles, mientras que las políticas SQS gestionan el acceso a nivel de cola, restringiendo el acceso a cuentas o acciones específicas de AWS.

¿Cuáles son los costes asociados al uso de AWS SQS?

Los costes de AWS SQS se basan en el número de solicitudes de API y en la transferencia de datos. El primer millón de solicitudes al mes son gratuitas, y el precio aumenta en función del número de solicitudes y de las funciones adicionales, como las colas FIFO y el sondeo prolongado.

¿Cómo puedo mejorar el rendimiento de mis colas SQS?

Para optimizar el rendimiento, utiliza sondeos largos para reducir las recepciones vacías, implementa operaciones por lotes para enviar y recibir mensajes en bloque, y supervisa tu cola con CloudWatch para ajustar tu capacidad de procesamiento de mensajes según sea necesario.


Zoumana Keita 's photo
Author
Zoumana Keita
LinkedIn
Twitter

Zoumana desarrolla herramientas de IA LLM para ayudar a las empresas a llevar a cabo la diligencia debida en materia de sostenibilidad y evaluaciones de riesgos. Anteriormente trabajó como científico de datos e ingeniero de aprendizaje automático en Axionable e IBM. Zoumana es la fundadora de la plataforma tecnológica educativa de aprendizaje entre iguales ETP4Africa. Ha escrito más de 20 tutoriales para DataCamp.

Temas

¡Aprende más AWS con estos cursos!

curso

Introduction to AWS

2 hr
11.8K
Discover the world of Amazon Web Services (AWS) and understand why it's at the forefront of cloud computing.
Ver detallesRight Arrow
Comienza El Curso
Ver másRight Arrow
Relacionado

blog

Los 13 mejores proyectos de AWS: De principiante a profesional

Explora 13 proyectos prácticos de AWS para todos los niveles. Mejora tus conocimientos sobre la nube con aplicaciones prácticas del mundo real y la orientación de expertos.
Joleen Bothma's photo

Joleen Bothma

12 min

blog

Las 20 mejores preguntas y respuestas de la entrevista sobre AWS Lambda para 2024

AWS Lambda es un servicio de computación sin servidor y un tema cada vez más común en las entrevistas técnicas. Tanto si eres nuevo en la computación en la nube como si eres un profesional experimentado, comprender AWS Lambda es esencial.
Zoumana Keita 's photo

Zoumana Keita

12 min

blog

AWS Certified Cloud Practitioner: guía completa

Comprende la certificación y el examen AWS Certified Cloud Practitioner con nuestra guía completa. Descubre consejos, recursos y estrategias para garantizar tu éxito.
Srujana Maddula's photo

Srujana Maddula

27 min

blog

AWS vs Azure: Una comparación en profundidad de los dos principales servicios en la nube

Explora las principales diferencias y similitudes entre Amazon Web Services (AWS) y Microsoft Azure. Este exhaustivo análisis abarca el rendimiento, los precios, las ofertas de servicios y la facilidad de uso para ayudar a los aspirantes a profesionales a determinar qué computación en nube se adapta mejor a sus necesidades.
Kurtis Pykes 's photo

Kurtis Pykes

12 min

tutorial

Primeros pasos con AWS Athena: Guía práctica para principiantes

Esta guía práctica te ayudará a empezar a utilizar AWS Athena. Explora su arquitectura y características y aprende a consultar datos en Amazon S3 utilizando SQL.
Tim Lu's photo

Tim Lu

28 min

tutorial

Ejemplos y tutoriales de consultas SQL

Si quiere iniciarse en SQL, nosotros le ayudamos. En este tutorial de SQL, le presentaremos las consultas SQL, una potente herramienta que nos permite trabajar con los datos almacenados en una base de datos. Verá cómo escribir consultas SQL, aprenderá sobre
Sejal Jaiswal's photo

Sejal Jaiswal

21 min

See MoreSee More