亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

MQ通信任務管理下發通知如何同步給Control層

MQ通信任務管理下發通知如何同步給Control層

一只斗牛犬 2018-08-07 10:13:46
項目中需要優化任務管理系統,項目由SSM框架搭建,Control層接受到前臺請求消息后,由任務管理Service 發送消息到子系統處理,子系統處理完畢后回執消息到任務管理層,任務管理層需要同步信息給Control,反饋到界面。比如瀏覽查詢下載,項目使用了RabbitMQ,集成了Spring上,監聽器實現了MessageListener接口,因為Control層調用任務管理發送消息后,需要等待子系統處理返回信息,所以Control層給任務管理Service提供了一個對象,對象中有Flag = false,當任務管理Service監聽到消息MessageListener ----void OnMessage函數反應后,Flag 置 為TRUE ,任務管理調用TaskService后發送消息,做了一個死循環校驗傳遞給Service的對象Flag,現在項目提出優化這一部分不用死循環,比如完成后觸發操作反饋給頁面,請問有什么好的方法。
查看完整描述

1 回答

?
四季花海

TA貢獻1811條經驗 獲得超5個贊

既然是這種模式肯定任務就不是短時間處理完的;

服務端內部處理既然異步了,那么httpService到客戶端也應該異步——如果采取空耗無疑白白浪費大把資源。因此適合的該場景的選擇應該用webSocket組件或者自己客戶端去輪詢任務列表(webSocket當然也有這種封裝,還取決于產品設計等因素)。

當然如果你們咸蛋的慌,任務本身執行很短,httpService服務器空耗也能滿足負載,那么你選取Controller Waite For TaskFinish 也不是不可以。


查看完整回答
反對 回復 2018-08-22
  • 1 回答
  • 0 關注
  • 898 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號