文章詳情頁
java - 多客戶端如何操作MQ比較合適
問題描述
我有500個子應用分別部署在500臺不同的服務器上,還有一個主應用,現在有一個MQ。 我主應用會給子應用發消息。 子應用上有很多功能,都需要用到不同的消息。
我是在子應用開一個consumer好,還是為子應用的每一個功能都開一個consumer好。
我目前打算是這樣,每個子應用,只開一個consumer,然后在發送的消息里面定義,具體要操作的方法。格式如下:
{ 'header': {'action': 'scan_address' }, 'body': { 'id': 1234, 'name': 'xxxxxx' }}
當子應用拿到消息后,根據action來決定調用哪個方法。 然后body就是需要處理的業務數據。
問題解答
回答1:你這種情況屬于用MQ做松耦合的RPC調用。 我不知道你的mq選型是什么。就按照我熟悉的kafka來說吧,可以使用一個topic,然后單臺機器配置單個消費組,然后消息就按照RPC的那種去寫,基本可以做到不重不丟,且服務上下游解耦
標簽:
java
相關文章:
1. 為什么我ping不通我的docker容器呢???2. webpack - vuejs+java前后臺分離實現及部署問題3. mysql - 這條聯合sql語句哪里錯了4. mysql改密碼失敗了,舊密碼新密碼都不能登錄了...5. 網站在移動的環境下手機,pc打不開6. php - TP5的登錄驗證問題7. mysql - 我的myeclipse一直連顯示數據庫連接失敗,不知道為什么8. javascript - 微信h5發送圖文信息,部分設備點擊“發送”按鈕時沒反應,問題較難重現,如何能找到可能存在問題的點?9. 在html文件的目錄下輸入代碼按回車后顯示這個,哪位大佬幫幫我 呀10. linux pdo 安裝配置中 make 遇到問題,請大家指教!
排行榜
