Se ha publicado la versión 4 de AWS SDK para .NET.
Para empezar a usar la nueva versión del SDK, consulte la Guía para desarrolladores de AWS SDK para .NET (versión 4), especialmente el tema Migración a la versión 4.
Uso de FIFO con el Marco de procesamiento de mensajes de AWS para .NET
En aquellos casos de uso en los que el orden y la deduplicación de los mensajes son fundamentales, el AWS Marco de procesamiento de mensajes para .NET admite colas de Amazon SQS y temas de Amazon SNS FIFO (primero en entrar, primero en salir).
Publicación
Para publicar mensajes en una cola o tema FIFO, debe establecer el ID del grupo de mensajes, que determina el grupo al que pertenece el mensaje. Los mensajes de un grupo se procesan en orden. Puede establecerlo en los publicadores de mensajes específicos de SQS y SNS.
await _sqsPublisher.PublishAsync(message, new SQSOptions { MessageDeduplicationId = <message-deduplication-id>, MessageGroupId = <message-group-id> });
Suscripción
Para gestionar los mensajes de una cola FIFO, el marco gestiona los mensajes de un determinado grupo de mensajes en el orden en que se recibieron para cada llamada de ReceiveMessages. El marco entra en este modo de funcionamiento 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();