Detalles de pedido de Amazon SNS Message para FIFO temas - Amazon Simple Notification Service

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.

Detalles de pedido de Amazon SNS Message para FIFO temas

Un SNS FIFO tema de Amazon siempre entrega los mensajes a las SQS colas de Amazon suscritas en el orden exacto en que se publican los mensajes en el tema y solo una vez. Con una SQS FIFO cola de Amazon suscrita, el consumidor de la cola recibe los mensajes en el orden exacto en que se entregan los mensajes a la cola, sin duplicados. Sin embargo, si se suscribe a una cola SQS estándar de Amazon, el consumidor de la cola puede recibir mensajes desordenados y más de una vez. Esto permite desvincular aún más a los suscriptores de los publicadores, lo que proporciona a los suscriptores más flexibilidad en cuanto al consumo de mensajes y la optimización de costos, como se muestra en el siguiente diagrama, basado en Ejemplo de caso de uso de Amazon SNS FIFO topic.

Ejemplo del sistema de entrega de mensajes en un tema de Amazon SNS FIFO (primero en entrar, primero en salir), en el que se destaca cómo los mensajes se entregan de forma coherente y en un orden estricto a las colas de Amazon. SQS FIFO Esto contrasta con el comportamiento de una cola SQS estándar de Amazon, donde los mensajes pueden llegar desordenados y más de una vez. En el ejemplo se muestran tres tipos de suscriptores diferentes (una función de análisis, una aplicación de venta al por mayor y una aplicación de venta minorista), y se muestra cómo cada uno recibe los mensajes, ya sea por orden estricto o por el orden más adecuado, según el tipo de cola a la que estén suscritos.

Tenga en cuenta que no hay pedidos implícitos de los suscriptores. En el ejemplo siguiente, se muestra que el mensaje m1 se entrega primero al suscriptor mayorista, después al suscriptor minorista y, a continuación, al suscriptor de análisis. El mensaje m2 se entrega primero al suscriptor minorista, después al suscriptor mayorista y, a continuación, al suscriptor de análisis. Aunque los dos mensajes se entregan a los suscriptores en un orden diferente, se mantiene el orden de los mensajes para cada SQS FIFO suscriptor de Amazon. Cada suscriptor se percibe de forma aislada de cualquier otro suscriptor.

Ejemplo de cómo los SNS FIFO temas de Amazon y varios tipos de suscriptores, incluidas Amazon SQS FIFO y las colas estándar, gestionan el pedido y la entrega de los mensajes. Muestra que los mensajes se publican en un tema y se envían a distintos tipos de colas, lo que garantiza la entrega ordenada en el caso de las colas y el máximo esfuerzo en el caso de FIFO las colas estándar. Esta configuración es compatible con situaciones en una plataforma de comercio electrónico en las que distintos componentes necesitan una entrega fiable de los mensajes en un orden específico para poder procesarlos con precisión.

Si no se puede contactar con un suscriptor de Amazon SQS Queue, puede perder la sincronización. Por ejemplo, supongamos que el propietario de la cola de aplicaciones mayoristas cambia por error la política de SQS colas de Amazon de una manera que impide que el director de SNS servicio de Amazon entregue mensajes a la cola. En este caso, se producen errores en los envíos de actualizaciones de precios a la cola de mayoristas, mientras que los de las colas de minoristas y analistas se realizan con éxito, lo que provoca que los suscriptores no estén sincronizados. Cuando el propietario de la cola de aplicaciones mayoristas corrige su política de colas, Amazon SNS reanuda la entrega de mensajes a la cola de suscriptores. Se descartan todos los mensajes publicados en el tema que tengan como destino la cola configurada incorrectamente, a menos que la suscripción correspondiente tenga configurada una cola de mensajes fallidos.

Ejemplo del comportamiento de la entrega de mensajes en una SNS FIFO configuración de Amazon en la que los mensajes se publican para diferentes tipos de suscriptores (mayoristas, minoristas y analíticos) a través de SQS colas de Amazon. En él se destaca el impacto de una mala configuración de la política de colas en la sincronización de la entrega de mensajes entre las diferentes colas de suscriptores. El ejemplo muestra cómo la entrega de mensajes en el caso del suscriptor mayorista se debe a un error de política, pero continúa satisfactoriamente en el caso de los suscriptores minoristas y de análisis, lo que hace hincapié en la importancia de configurar correctamente las colas para mantener la entrega de datos sincronizada. Este escenario pone de relieve la capacidad de los FIFO temas para garantizar la entrega de los pedidos y la entrega una sola vez en circunstancias normales, así como las consecuencias de los errores de configuración.

Puede hacer que varias aplicaciones (o varios subprocesos dentro de la misma aplicación) publiquen mensajes en un SNS FIFO tema en paralelo. Al hacerlo, delega de manera efectiva la secuencia de mensajes al SNS servicio de Amazon. Para determinar la secuencia establecida de mensajes, puede verificar el número de secuencia.

El número de secuencia es un número grande y no consecutivo que Amazon SNS asigna a cada mensaje. La longitud del número de secuencia es de 128 bits y sigue aumentando para cada grupo de mensajes. El número de secuencia se pasa a las SQS colas de Amazon suscritas como parte del cuerpo del mensaje. Sin embargo, si habilitas la entrega de mensajes sin procesar, el mensaje que se entrega a la SQS cola de Amazon no incluye el número de secuencia ni ningún otro metadato de SNS mensajes de Amazon.

Ejemplo de varias funciones de Lambda: publicar mensajes en un tema de Amazon SNS FIFO (First In, First Out), que luego entrega estos mensajes a una SQS FIFO cola de Amazon, preservando el estricto orden de procesamiento de los mensajes. Esta configuración se utiliza para garantizar que los mensajes se procesen en el orden exacto en que se envían a los distintos componentes de una aplicación, con números de secuencia que indican el orden de cada mensaje dentro de un grupo. Este tipo de configuración es fundamental para las aplicaciones en las que el orden de las operaciones y los mensajes debe mantenerse estrictamente para garantizar la coherencia.

SNSFIFOLos temas de Amazon definen el orden en el contexto de un grupo de mensajes. Para obtener más información, consulte Agrupación de SNS mensajes de Amazon para temas FIFO.