詳解rabbitmq創(chuàng)建queue時(shí)arguments參數(shù)注釋
1、x-max-length:
消息條數(shù)限制,該參數(shù)是非負(fù)整數(shù)值。限制加入queue中消息的條數(shù)。先進(jìn)先出原則,超過(guò)10條后面的消息會(huì)頂替前面的消息。
2、x-max-length-bytes
消息容量限制,該參數(shù)是非負(fù)整數(shù)值。該參數(shù)和x-max-length目的一樣限制隊(duì)列的容量,但是這個(gè)是靠隊(duì)列大小(bytes)來(lái)達(dá)到限制。
3、x-message-ttl
消息存活時(shí)間,該參數(shù)是非負(fù)整數(shù)值.創(chuàng)建queue時(shí)設(shè)置該參數(shù)可指定消息在該queue中待多久,可根據(jù)x-dead-letter-routing-key和x-dead-letter-exchange生成可延遲的死信隊(duì)列。
4、x-max-priority
消息優(yōu)先級(jí),創(chuàng)建queue時(shí)arguments可以使用x-max-priority參數(shù)聲明優(yōu)先級(jí)隊(duì)列 。該參數(shù)應(yīng)該是一個(gè)整數(shù),表示隊(duì)列應(yīng)該支持的最大優(yōu)先級(jí)。建議使用1到10之間。目前使用更多的優(yōu)先級(jí)將消耗更多的資源(Erlang進(jìn)程)。
設(shè)置該參數(shù)同時(shí)設(shè)置死信隊(duì)列時(shí)或造成已過(guò)期的低優(yōu)先級(jí)消息會(huì)在未過(guò)期的高優(yōu)先級(jí)消息后面執(zhí)行。該參數(shù)會(huì)造成額外的CPU消耗。
5、x-expires
存活時(shí)間,創(chuàng)建queue時(shí)參數(shù)arguments設(shè)置了x-expires參數(shù),該queue會(huì)在x-expires到期后queue消息,親身測(cè)試直接消失(哪怕里面有未消費(fèi)的消息)。
6、x-dead-letter-exchange和x-dead-letter-routing-key
創(chuàng)建queue時(shí)參數(shù)arguments設(shè)置了x-dead-letter-routing-key和x-dead-letter-exchange,會(huì)在x-message-ttl時(shí)間到期后把消息放到x-dead-letter-routing-key和x-dead-letter-exchange指定的隊(duì)列中達(dá)到延遲隊(duì)列的目的。
創(chuàng)建queue的時(shí)候,就可以設(shè)置以上參數(shù)
@Bean
public Queue queue() {
Map<String, Object> arguments = new HashMap<>();
//消息條數(shù)限制,該參數(shù)是非負(fù)整數(shù)值。限制加入queue中消息的條數(shù)。先進(jìn)先出原則,超過(guò)10條后面的消息會(huì)頂替前面的消息。
arguments.put("x-max-length", 10);
//消息容量限制,該參數(shù)是非負(fù)整數(shù)值。該參數(shù)和x-max-length目的一樣限制隊(duì)列的容量,但是這個(gè)是靠隊(duì)列大?。╞ytes)來(lái)達(dá)到限制。
arguments.put("x-max-length-bytes", 1024);
/**
* 消息存活時(shí)間,該參數(shù)是非負(fù)整數(shù)值.創(chuàng)建queue時(shí)設(shè)置該參數(shù)可指定消息在該queue中待多久,
* 可根據(jù)x-dead-letter-routing-key和x-dead-letter-exchange生成可延遲的死信隊(duì)列。
*/
arguments.put("x-message-ttl", 10000);
* 消息優(yōu)先級(jí),創(chuàng)建queue時(shí)arguments可以使用x-max-priority參數(shù)聲明優(yōu)先級(jí)隊(duì)列 。該參數(shù)應(yīng)該是一個(gè)整數(shù),表示隊(duì)列應(yīng)該支持的最大優(yōu)先級(jí)。
* ??建議使用1到10之間。目前使用更多的優(yōu)先級(jí)將消耗更多的資源(Erlang進(jìn)程)。
* 設(shè)置該參數(shù)同時(shí)設(shè)置死信隊(duì)列時(shí)或造成已過(guò)期的低優(yōu)先級(jí)消息會(huì)在未過(guò)期的高優(yōu)先級(jí)消息后面執(zhí)行。
* 該參數(shù)會(huì)造成額外的CPU消耗。
arguments.put("x-max-priority", 5);
* 存活時(shí)間,創(chuàng)建queue時(shí)參數(shù)arguments設(shè)置了x-expires參數(shù),該queue會(huì)在x-expires到期后queue消息,
* 親身測(cè)試直接消失(哪怕里面有未消費(fèi)的消息)。
arguments.put("x-expires", 60000);
* 創(chuàng)建queue時(shí)參數(shù)arguments設(shè)置了x-dead-letter-routing-key和x-dead-letter-exchange,
* 會(huì)在x-message-ttl時(shí)間到期后把消息放到x-dead-letter-routing-key和x-dead-letter-exchange指定的隊(duì)列中達(dá)到延遲隊(duì)列的目的。
arguments.put("x-dead-letter-exchange", "TopExchangeName");
arguments.put("x-dead-letter-routing-key", "ttl.*.value");//這里的routing-key也可以是隊(duì)列名稱(chēng),當(dāng)消息過(guò)期后會(huì)轉(zhuǎn)發(fā)到這個(gè)exchange對(duì)應(yīng)的routing-key,達(dá)到延時(shí)隊(duì)列效果
return new Queue(topDDL, true, false, false, arguments); //隊(duì)列持久
}來(lái)源:https://blog.csdn.net/qq_26656329/article/details/77891793
到此這篇關(guān)于rabbitmq創(chuàng)建queue時(shí)arguments參數(shù)注釋的文章就介紹到這了,更多相關(guān)rabbitmq arguments參數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java實(shí)現(xiàn)提取HTML文件中的文本內(nèi)容
從?HTML?文件中提取文本內(nèi)容是數(shù)據(jù)抓取中的一個(gè)常見(jiàn)任務(wù),本文主要和大家分享了如何使用免費(fèi)?Java?API?從HTML?文件中提取文本內(nèi)容,需要的可以參考下2024-04-04
深入了解SpringAOP中的jdk動(dòng)態(tài)代理與CGlib
這篇文章主要介紹了深入了解SpringAOP中的jdk動(dòng)態(tài)代理與CGlib,一般我們編寫(xiě)程序的思想是縱向的,也就是一個(gè)方法代碼從該方法第一行開(kāi)始往下一步一步走,直到走完最后一行代碼,也就是說(shuō)很多業(yè)務(wù)都需要的比如用戶(hù)鑒權(quán),資源釋放等,需要的朋友可以參考下2023-12-12
簡(jiǎn)單實(shí)現(xiàn)Spring的IOC原理詳解
這篇文章主要介紹了簡(jiǎn)單實(shí)現(xiàn)Spring的IOC原理詳解,具有一定借鑒價(jià)值,需要的朋友可以參考下。2017-12-12
實(shí)現(xiàn)Servlet程序的三種方法(小結(jié))
這篇文章主要介紹了實(shí)現(xiàn)Servlet程序的三種方法(小結(jié)),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-01-01
使用@TransactionalEventListener監(jiān)聽(tīng)事務(wù)教程
這篇文章主要介紹了使用@TransactionalEventListener監(jiān)聽(tīng)事務(wù)教程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-09-09
解決IntellIJ IDEA提示內(nèi)存不足的圖文教程
現(xiàn)在越來(lái)越多的人投入了 IntellIJ Idea 的懷抱, 它給我們的日常開(kāi)發(fā)帶來(lái)了諸多便利,但是我們?cè)陂_(kāi)發(fā)過(guò)程中,總是能碰到idea內(nèi)存不足問(wèn)題,所以本文給大家介紹了解決IntellIJ IDEA提示內(nèi)存不足的圖文教程,需要的朋友可以參考下2025-03-03

