簡體:
我在activemq中有一個隊列。當從隊列中讀取某個消息時,我想鎖定隊列,直到該過程結束處理收到的消息。如何保留消息隊列
詳細解釋:
我有一個系統有大量的用戶。每次用戶更改系統狀態(配置文件,角色,訪問權限,資產所有權等)時,我還需要更新第三方服務器的更改。 該第三方與我們分開,它們暴露給我的api允許我一次只更新一個用戶,並且需要一秒左右的時間。
我正在使用ActiveMQ從更新第三方系統中分離主更新過程。
一晚上,我得到一個可能包含數千個用戶更改的提要文件。由於這是一項關鍵任務,並且更新第三方並不那麼時間敏感,並且由於更新第三方可能需要從同一個表中讀取主進程是批量更新,所以我需要鎖定隊列。 意思是說,我希望activeMQ爲我在主進程中更改的每個用戶獲取消息,但我也希望ActiveMQ能夠保留這些消息,直到主進程完成。
ActiveMQ中的任何內置機制如何實現?
如果我理解正確,您的系統是[更新過程] -AMQ-> [適配器] - > [第三方API],並且您不希望適配器運行,直到更新過程已經完成所有的信息在? –