文章詳情頁(yè)
java - 并發(fā)操作下關(guān)于隊(duì)列的疑問(wèn)?
瀏覽:105日期:2023-10-26 15:47:21
問(wèn)題描述
常用的rabbitmq,activeMq隊(duì)列,多個(gè)消費(fèi)者或者多個(gè)線程去取隊(duì)列中的數(shù)據(jù),會(huì)不會(huì)出現(xiàn)不同消費(fèi)者同時(shí)到達(dá)取到同一個(gè)數(shù)據(jù)的情況?目前只知道redis由于是單線程的,做隊(duì)列的時(shí)候可以避免這種情況。
問(wèn)題解答
回答1:消息隊(duì)列的發(fā)布訂閱模式有多種,有一個(gè)消息多個(gè)消費(fèi)者都能獲取到的模式,有一個(gè)消息發(fā)送到指定消費(fèi)者模式,選擇合適你自己的~你說(shuō)的這種可以用rabbitmq的direct模式
回答2:任何消息隊(duì)列,只要自稱是消息隊(duì)列服務(wù)的,都會(huì)保證這點(diǎn),無(wú)須擔(dān)心。但要注意的是,消息隊(duì)列有兩種模式,生產(chǎn)者消費(fèi)者模式和發(fā)布者訂閱者模式,前者保證每條消息只會(huì)被消費(fèi)一次,后者保證每條消息能達(dá)到所有的訂閱者,因此被消費(fèi)的次數(shù)不確定。
標(biāo)簽:
java
相關(guān)文章:
1. 點(diǎn)擊頁(yè)面就自動(dòng)輸入到mysql.求解2. java - 多叉樹(shù)求值,程序高手,算法高手看過(guò)來(lái)3. node.js - nodejs使用formidable上傳文件問(wèn)題4. java如何生成token?5. java - IDEA從SVN檢出項(xiàng)目 并在tomcat上運(yùn)行 求詳細(xì)流程6. linux - 新手-----nginx怎么配置請(qǐng)求轉(zhuǎn)發(fā)?7. node.js - 帶有node_modules目錄的項(xiàng)目,用phpstorm打開(kāi)速度極慢,怎么解決?8. ubuntu為什么這個(gè)文件夾里面的文件都被鎖上了?9. javascript - windos下第一次用Django無(wú)法正確創(chuàng)建工程目錄10. JAX-RS,GlassFish,Eclipse。簡(jiǎn)單的Web服務(wù)不起作用
排行榜

熱門(mén)標(biāo)簽