TTL队列及消息介绍
本文是《RabbitMQ精讲系列》中第十六篇:RabbitMQ消息中间件技术精讲16 高级篇九 TTL队列及消息。如果想学习RabbitMQ的朋友建议从第一篇开始看起。
TTL:
TTL是Time To Live的缩写,也就是生存时间。也就是说RabbitMQ支持消息的过期时间,在消息发送的时候可以对过期时间进行指定;
同时RabbitMQ支持队列的过期时间,从消息入队列开始计算,超过了队列的超时时间配置,那么消息就会自动清除。
今天这篇文章,咱们就不用写代码演示。使用页面的方式进行配置发送消息。
登陆到页面管控台:
先创建一个队列queue.
设置队列名称为:test002
给arguments设参数:
x-max-length:最大长度。我们设置3000
x-message-ttl:设置超时时长。我们设置10000毫秒,也就是10秒。
具体如下图:
设置完成之后,我们点击Add.之后,在queues的列表中就可以看到,我们创建的test002队列。如下图:
接下来,我们创建交换机exchange:
设置name为:test002_texchange
设置类型type为:topic
设置Durability为durable.持久化
如下图:
设置完成之后,点击保存。我们可以在exchanges的列表中看到刚才创建的test002_exchange的交换机。如下图:
接着我们绑定交换机和队列的关系。
点击我们创建的队列,添加绑定
选择To queue值为我们上一步创建的队列名称:test002
设置routing key为ttl.#.
如下图:
点击bind之后,我们就可以看到绑定关系了。如下图:
接着我们来发送消息。
点击test002-exchange,我们可以看到Publish message.就可以在页面发送消息了。
我们进行设置:
可以看到在properties这个属性中,我们需要的都有的。
设置Routing key:ttl.abcd
设置Delivery mode:2-persistent。持久化
然后设置消息,Payload。
设置完成如下图:
点击publish message后:
发送成功。
我们看看队列:test002中已经有一条消息了。如下图:
我们等待10秒,发现消息自动消失了。如下:
下节我们讲解:死信队列
凯哥公众号:凯哥Java(kaigejava)
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。