成人AV在线无码|婷婷五月激情色,|伊人加勒比二三四区|国产一区激情都市|亚洲AV无码电影|日av韩av无码|天堂在线亚洲Av|无码一区二区影院|成人无码毛片AV|超碰在线看中文字幕

rocketmq隊(duì)列數(shù)量多少合適 java如何獲取rabbitmq隊(duì)列中消息數(shù)量?

java如何獲取rabbitmq隊(duì)列中消息數(shù)量?這里是rabbitmq的消息確認(rèn)機(jī)制:“為了保證消息不會(huì)丟失,rabbitmq支持消息確認(rèn)機(jī)制。在接收和處理消息之后,客戶機(jī)可以向rabbitmq發(fā)送一

java如何獲取rabbitmq隊(duì)列中消息數(shù)量?

這里是rabbitmq的消息確認(rèn)機(jī)制:“為了保證消息不會(huì)丟失,rabbitmq支持消息確認(rèn)機(jī)制。在接收和處理消息之后,客戶機(jī)可以向rabbitmq發(fā)送一條ACK消息,告訴它消息可以被安全刪除。如果客戶端在發(fā)送ACK之前意外死亡,rabbitmq將消息傳遞給下一個(gè)使用者客戶端。如果有多個(gè)客戶機(jī),則rabbitmq在傳遞消息時(shí)進(jìn)行輪詢。rabbitmq如何判斷客戶已經(jīng)死亡?唯一的依據(jù)是客戶端是否斷開連接。沒有超時(shí)機(jī)制,也就是說,客戶端可以長時(shí)間地處理消息。只要連接沒有斷開,rabbitmq將始終等待ACK消息?!拔椰F(xiàn)在面臨的問題是:我有幾個(gè)線程要從消息隊(duì)列中獲取數(shù)據(jù),但是會(huì)有異常數(shù)據(jù)導(dǎo)致線程掛起,即“客戶端在發(fā)送ack之前意外死亡”。Rabbitmq會(huì)將消息傳遞給下一個(gè)客戶機(jī),這樣的異常數(shù)據(jù)會(huì)掛斷我的所有線程?,F(xiàn)在我想實(shí)現(xiàn)這個(gè)功能是的:如果異常數(shù)據(jù)導(dǎo)致進(jìn)程掛起,我不會(huì)讓rabbitmq把這個(gè)消息傳遞給下一個(gè)客戶機(jī),而是把它放到另一個(gè)地方或者單獨(dú)處理它。我該如何實(shí)現(xiàn)這一點(diǎn)?

如何設(shè)計(jì)一個(gè)MQ消息隊(duì)列?

1. 在上圖中定義消息發(fā)送和消耗的過程

2。為消息定義消息協(xié)議,如ActiveMQ、stomp、XMPP等。定義消息協(xié)議,定義消息隊(duì)列需要滿足的場景

是否要保證消息的可靠性,必要時(shí)要保證存儲(chǔ)的高可用性

是否支持同步和異步消息

是否要保證消息的順序

是否需要延遲消息要支持

很多開源的實(shí)現(xiàn)功能可以參考詳細(xì)信息。例如,rocketmq是高度可靠的,Kafka是高吞吐量的,但不是高度可靠的。