RabbitMQ高級篇九TTL設置隊列或消息有效期隊列及消息
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秒,發現消息自動消失了。如下:
下節我們講解:死信隊列
※怎麼將本地項目放到碼雲 gitee上面?圖文詳解
※RabbitMQ學習系列教程五四:Topic的使用
TAG:凱哥java |