如何使用C#发送带有自定义超时的AWS SQS消息

本文关键字:超时 AWS SQS 消息 自定义 何使用 | 更新日期: 2023-09-27 18:24:25

以下是我使用AWS.NET SDK从C#发送SQS消息的基本代码如何给消息一个不同于队列默认值的超时

    public async Task PostMessage(Uri queueUrl, string body)
    {
        var request = new SendMessageRequest()
                          {
                              MessageBody = body, 
                              QueueUrl = queueUrl.ToString(),
                          };
        var result = await this.client.SendMessageAsync(request);
    }

我可以发送一个单独的API调用来延长飞行中消息的超时时间。但如果可行的话,我想在创建时这样做。

如何使用C#发送带有自定义超时的AWS SQS消息

您不能用C#API或任何其他API来实现。消息可见性超时是在队列上全局设置的。

我建议创建2个队列。一个用于短期任务,一个用于长期任务。通过这种方式,您可以在队列上设置不同的可见性超时。