我遇到的問題是這樣的: 使用服務混合和駱駝路由我發送一個JSON消息通過activeMQ消費者。 問題是這個消費者處理這個消息的時間是X,因此消費者在消息消費期間可能會停止或崩潰。在這種情況下,消息將成爲消費者的一半,並且已經從隊列中刪除,因爲它已交付。ServiceMix,Apache ActiveMQ,駱駝發送「完成」消費消息
是否有可能使隊列在消耗時不移除消息,而是等待消費者的某些確認消息,在刪除消息之前完成此消息的處理?
在典型的文件系統導入文件中,您將刪除文件或將其重命名爲僅在文件完全處理完成並且事務完全提交時完成。那麼,如何在ESB世界中,我們可以說,保持消息,直到我完成,我告訴你刪除它。
我使用spring jms:listener-container和jms:listeners來消耗當前的消息。