我正在嘗試編寫MQ客戶端,它將抵抗意外情況。 我已創建客戶端CLIENT_ACKNOWLEDGE模式:XMS mq client_acknowledge - 分別確認消息
ISession session = conn.CreateSession(false, AcknowledgeMode.ClientAcknowledge);
在XMS文檔存在用於CLIENT_ACKNOWLEDGE信息:
應用程序可以確認收到每個消息 單獨,或它可以接收一個批次並僅對其收到的最後一條消息致電 確認方法。當 確認方法被調用時,自上次調用 以來收到的所有消息都被確認。
客戶端從隊列中提取例如10條消息並將它們寫入數據庫。
問題是如何在確認每條消息(用於確保消息傳遞)的情況下設置此模式?
您是否試圖做這樣的事情:您收到了10條消息,但您只想確認該批處理的一條消息,比如5或8位?如果這樣做是不可能的。正如doc所說,XMS將會收到所有收到的消息。 – Shashi
在當前實現中,我確認收到的每個單個消息。我需要確保不會丟失任何消息。如果第5條消息將被查詢並出現問題,例如我們失去了第3條(它將與第5條消息一起發送,而不是重新發送) 有什麼方法可以確定順序的順序嗎? – moniuh