【问题标题】:How do I set/limit a number of retry attempts in RabbitMQ when sending a message if it fails?如果发送消息失败,如何在 RabbitMQ 中设置/限制重试次数?
【发布时间】:2021-07-14 20:15:04
【问题描述】:

我正在使用 RabbitMQ,并且我有一个保存消息的队列。如果消息失败,则进行 3 次尝试。我想将次数限制为 1,以便我可以重新排队要再次发送的消息。还有其他方法可以解决这个问题吗?提前致谢。

  bindings:
    documentrequest-policyinqadapter:
      destination: PI-DocumentRequestService-AdapterService-Exchange
      group: dcsnt-policyinquiryadapter-documentrequest-processessor
  rabbit:
    bindings:
      documentrequest-policyinqadapter:
        producer:
          routing-key-expression: headers['events-type']
        consumer:
          autoBindDlq: true
          republishToDlq: true
          default-requeue-rejected: false
          bindingRoutingKey: documentrequest.adapter.*.*.*.policyinq.req
          deadLetterQueueName: pi-adapter-dead-letter-queue
          deadLetterExchange: PI-DocumentRequestService-AdapterService-Exchange-dlx
          deadLetterRoutingKey: documentrequest.adapter.*.*.*.policyinq.req
          maxAttempts: 1
          maxConcurrency: 10

【问题讨论】:

    标签: java spring spring-boot rabbitmq spring-cloud-stream


    【解决方案1】:

    maxAttempts 是所有绑定程序通用的消费者绑定属性。

    https://docs.spring.io/spring-cloud-stream/docs/3.1.2/reference/html/spring-cloud-stream.html#_consumer_properties

    您已将其定义为特定于兔子的绑定属性。

    向上移动。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-02-08
      • 2014-06-03
      • 1970-01-01
      • 1970-01-01
      • 2012-05-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多