RabbitMQ 高级篇九 TTL设置队列或消息有效期队列及消息

发布时间:2020-07-23 11:20:37 作者:凯哥Java
来源:网络 阅读:775

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秒。

具体如下图:

RabbitMQ 高级篇九 TTL设置队列或消息有效期队列及消息

设置完成之后,我们点击Add.之后,在queues的列表中就可以看到,我们创建的test002队列。如下图:

RabbitMQ 高级篇九 TTL设置队列或消息有效期队列及消息


接下来,我们创建交换机exchange:

设置name为:test002_texchange

设置类型type为:topic

设置Durability为durable.持久化

如下图:

RabbitMQ 高级篇九 TTL设置队列或消息有效期队列及消息

设置完成之后,点击保存。我们可以在exchanges的列表中看到刚才创建的test002_exchange的交换机。如下图:

RabbitMQ 高级篇九 TTL设置队列或消息有效期队列及消息

接着我们绑定交换机和队列的关系。

点击我们创建的队列,添加绑定

选择To queue值为我们上一步创建的队列名称:test002

设置routing key为ttl.#.

如下图:

RabbitMQ 高级篇九 TTL设置队列或消息有效期队列及消息

点击bind之后,我们就可以看到绑定关系了。如下图:


RabbitMQ 高级篇九 TTL设置队列或消息有效期队列及消息

接着我们来发送消息。

点击test002-exchange,我们可以看到Publish message.就可以在页面发送消息了。

RabbitMQ 高级篇九 TTL设置队列或消息有效期队列及消息

我们进行设置:

可以看到在properties这个属性中,我们需要的都有的。

RabbitMQ 高级篇九 TTL设置队列或消息有效期队列及消息

设置Routing key:ttl.abcd

设置Delivery mode:2-persistent。持久化

然后设置消息,Payload。

设置完成如下图:

RabbitMQ 高级篇九 TTL设置队列或消息有效期队列及消息

点击publish message后:

RabbitMQ 高级篇九 TTL设置队列或消息有效期队列及消息

发送成功。

我们看看队列:test002中已经有一条消息了。如下图:

RabbitMQ 高级篇九 TTL设置队列或消息有效期队列及消息

我们等待10秒,发现消息自动消失了。如下:

RabbitMQ 高级篇九 TTL设置队列或消息有效期队列及消息

下节我们讲解:死信队列

凯哥公众号:凯哥Java(kaigejava)

推荐阅读:
  1. rabbitmq延迟队列之php实现
  2. RabbitMQ消息中间件技术精讲17 高级篇十 死信队列

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

mq bit

上一篇:如何解决Spring事务管理配置文件问题

下一篇:python appium操作手机及app各种方法

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》