Uso de FIFO con el marco de procesamiento de AWS mensajes para.NET - AWS SDK for .NET

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.

Uso de FIFO con el marco de procesamiento de AWS mensajes para.NET

Esta es una documentación preliminar para una característica en versión de vista previa. Está sujeta a cambios.

Para los casos de uso en los que el orden y la deduplicación de mensajes son fundamentales, el marco de procesamiento de AWS mensajes para .NET admite las colas de Amazon SQS first-in-first-out (FIFO) y los temas de Amazon SNS.

Publicación

Al publicar mensajes en una cola o tema de la FIFO, debe establecer el ID del grupo de mensajes, que especifica el grupo al que pertenece el mensaje. Los mensajes de un grupo se procesan en orden. Puede configurarlo en los editores de mensajes específicos de SQL y de SNS.

await _sqsPublisher.PublishAsync(message, new SQSOptions { MessageDeduplicationId = <message-deduplication-id>, MessageGroupId = <message-group-id> });

Suscripción

Al gestionar los mensajes de una cola FIFO, el marco gestiona los mensajes de un grupo de mensajes determinado en el orden en que se recibieron para cada llamada. ReceiveMessages El marco entra en este modo de operación automáticamente cuando se configura con una cola que termina en. .fifo

await Host.CreateDefaultBuilder(args) .ConfigureServices(services => { // Register the AWS Message Processing Framework for .NET. services.AddAWSMessageBus(builder => { // Because this is a FIFO queue, the framework automatically handles these messages in order. builder.AddSQSPoller("https://sqs.us-west-2.amazonaws.com/012345678910/MPF.fifo"); builder.AddMessageHandler<OrderMessageHandler, OrderMessage>(); }); }) .Build() .RunAsync();