Spring RabbitTemplate没有使用TTL创建死信队列

布里尼瓦斯

我正在使用spring-rabbit1.1和RabbitMQ 3.3.1,

我的春季配置将在Rabbit MQ上的RabbitTemplate的帮助下创建任何队列,但是如果已使用x-dead-letter-exchange和x-message-ttl配置了该队列,它将仅创建没有TTL和死信交换的队列。

例如:下面的队列将创建该队列,但不会创建TTL和死信交换。

<rabbit:queue name="hello.queue.dead">
    <rabbit:queue-arguments>
        <entry key="x-dead-letter-exchange" value="hello.activity-task.topic"/>
        <entry key="x-message-ttl" value="10000"/>
    </rabbit:queue-arguments>
</rabbit:queue>

因此,我不得不从Rabbit MQ中删除队列,并手动创建所有必需的值以使其工作。

如果可以解决这个问题,谁能帮助我?

加里·罗素

您必须明确声明队列并进行交换...

<rabbit:queue name="q.with.dlx">
    <rabbit:queue-arguments> 
        <entry key="x-dead-letter-exchange" value="dlx"/>
        <entry key="x-message-ttl" value="10000" value-type="java.lang.Long"/>
    </rabbit:queue-arguments>
</rabbit:queue>

<rabbit:queue name="dlq"/>

<rabbit:direct-exchange name="dlx">
    <rabbit:bindings>
        <rabbit:binding key="q.with.dlx" queue="dlq"/>
    </rabbit:bindings>
</rabbit:direct-exchange>

假设您使用默认的直接交换路由了原始邮件(按队列名称路由)。因此,死信路由使用相同的路由密钥(队列名称)。如果使用显式路由键进行路由,则可以使用它。

顺便说一句,RabbitTemplate没有声明这些元素,而是RabbitAdmin实例。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

带有RabbitMq的Spring amqp:从死信队列中掉下来后,消息没有圈出回到实时队列

来自分类Dev

带有RabbitMq的Spring amqp:从死信队列中消失后,消息没有被圈出回到活动队列

来自分类Dev

Hibernate没有使用Spring Boot在PostgreSql中创建数据库

来自分类Dev

ule子没有使用Spring找到属性文件

来自分类Dev

Spring Boot Test 没有使用测试属性

来自分类Dev

RabbitTemplate 没有结束 spring boot + spring 批处理作业应用程序

来自分类Dev

带有额外列的ManyToMany关系,并且没有使用Spring和Hibernate的复合键概念

来自分类Dev

为什么此Spring Aspect没有使用方法参数进行应有的打印?

来自分类Dev

HttpMessageNotWritableException:没有使用OpenApi Spring生成器的带有预设Content-Type'null'的转换器

来自分类Dev

带有额外列的ManyToMany关系,并且没有使用Spring和Hibernate的复合键概念

来自分类Dev

RabbitMQ队列大小没有Spring?(Java API)

来自分类Dev

Spring-AMQP两个具有不同TTL的队列

来自分类Dev

当应用程序没有生产者时,如何让 Spring Cloud Stream 创建 RabbitMQ 队列和绑定?

来自分类Dev

@Transactional Spring没有创建新的交易

来自分类Dev

没有创建Spring Roo项目

来自分类Dev

没有Spring数据的Spring Boot JPA

来自分类Dev

是否有使用其他Spring版本的简单方法?

来自分类Dev

在Spring3.0中有使用JavaDB的参考吗?

来自分类Dev

是否有使用其他Spring版本的简单方法?

来自分类Dev

是否有使用 Spring Security 将远程 SSO 集成到 Web 应用程序的示例?

来自分类Dev

带有多个队列的Spring amqp sendAndReceive

来自分类Dev

没有使用jpm创建插件的图标

来自分类Dev

spring-boot没有创建hsqldb数据库

来自分类Dev

创建没有JOINS的Spring Data Jpa Specification方法

来自分类Dev

没有“ id”属性的bean的Spring Bean创建失败

来自分类Dev

spring-boot没有创建hsqldb数据库

来自分类Dev

Spring TaskExecutor 无界队列

来自分类Dev

没有XML的Spring项目

来自分类Dev

没有XSD的Spring WS

Related 相关文章

  1. 1

    带有RabbitMq的Spring amqp:从死信队列中掉下来后,消息没有圈出回到实时队列

  2. 2

    带有RabbitMq的Spring amqp:从死信队列中消失后,消息没有被圈出回到活动队列

  3. 3

    Hibernate没有使用Spring Boot在PostgreSql中创建数据库

  4. 4

    ule子没有使用Spring找到属性文件

  5. 5

    Spring Boot Test 没有使用测试属性

  6. 6

    RabbitTemplate 没有结束 spring boot + spring 批处理作业应用程序

  7. 7

    带有额外列的ManyToMany关系,并且没有使用Spring和Hibernate的复合键概念

  8. 8

    为什么此Spring Aspect没有使用方法参数进行应有的打印?

  9. 9

    HttpMessageNotWritableException:没有使用OpenApi Spring生成器的带有预设Content-Type'null'的转换器

  10. 10

    带有额外列的ManyToMany关系,并且没有使用Spring和Hibernate的复合键概念

  11. 11

    RabbitMQ队列大小没有Spring?(Java API)

  12. 12

    Spring-AMQP两个具有不同TTL的队列

  13. 13

    当应用程序没有生产者时,如何让 Spring Cloud Stream 创建 RabbitMQ 队列和绑定?

  14. 14

    @Transactional Spring没有创建新的交易

  15. 15

    没有创建Spring Roo项目

  16. 16

    没有Spring数据的Spring Boot JPA

  17. 17

    是否有使用其他Spring版本的简单方法?

  18. 18

    在Spring3.0中有使用JavaDB的参考吗?

  19. 19

    是否有使用其他Spring版本的简单方法?

  20. 20

    是否有使用 Spring Security 将远程 SSO 集成到 Web 应用程序的示例?

  21. 21

    带有多个队列的Spring amqp sendAndReceive

  22. 22

    没有使用jpm创建插件的图标

  23. 23

    spring-boot没有创建hsqldb数据库

  24. 24

    创建没有JOINS的Spring Data Jpa Specification方法

  25. 25

    没有“ id”属性的bean的Spring Bean创建失败

  26. 26

    spring-boot没有创建hsqldb数据库

  27. 27

    Spring TaskExecutor 无界队列

  28. 28

    没有XML的Spring项目

  29. 29

    没有XSD的Spring WS

热门标签

归档