文章詳情頁
java - 多客戶端如何操作MQ比較合適
瀏覽:114日期:2023-12-18 17:37:19
問題描述
我有500個子應(yīng)用分別部署在500臺不同的服務(wù)器上,還有一個主應(yīng)用,現(xiàn)在有一個MQ。 我主應(yīng)用會給子應(yīng)用發(fā)消息。 子應(yīng)用上有很多功能,都需要用到不同的消息。
我是在子應(yīng)用開一個consumer好,還是為子應(yīng)用的每一個功能都開一個consumer好。
我目前打算是這樣,每個子應(yīng)用,只開一個consumer,然后在發(fā)送的消息里面定義,具體要操作的方法。格式如下:
{ 'header': {'action': 'scan_address' }, 'body': { 'id': 1234, 'name': 'xxxxxx' }}
當(dāng)子應(yīng)用拿到消息后,根據(jù)action來決定調(diào)用哪個方法。 然后body就是需要處理的業(yè)務(wù)數(shù)據(jù)。
問題解答
回答1:你這種情況屬于用MQ做松耦合的RPC調(diào)用。 我不知道你的mq選型是什么。就按照我熟悉的kafka來說吧,可以使用一個topic,然后單臺機器配置單個消費組,然后消息就按照RPC的那種去寫,基本可以做到不重不丟,且服務(wù)上下游解耦
標(biāo)簽:
java
上一條:java - 面試題,10w臺設(shè)備要求查詢在線狀態(tài),應(yīng)該用什么技術(shù)?下一條:java - bootstrap table分頁以后,下面的分頁按鈕消失怎么辦并且如何返回總頁數(shù)
相關(guān)文章:
1. docker網(wǎng)絡(luò)端口映射,沒有方便點的操作方法么?2. docker不顯示端口映射呢?3. javascript - nodejs調(diào)用qiniu的第三方資源抓取,返回401 bad token,為什么4. angular.js - angular內(nèi)容過長展開收起效果5. nignx - docker內(nèi)nginx 80端口被占用6. docker綁定了nginx端口 外部訪問不到7. thinkphp5.1學(xué)習(xí)時遇到session問題8. dockerfile - 我用docker build的時候出現(xiàn)下邊問題 麻煩幫我看一下9. java - 為什么此私有靜態(tài)變量能被訪問呢?10. docker - 各位電腦上有多少個容器?。咳萜饕欢?,自己都搞混了,咋辦呢?
排行榜

熱門標(biāo)簽