我們正試圖移動到Apache Camel集羣。到目前爲止,我們在一個節點上運行並且運行良好。集羣中的駱駝readlock策略
一個節點: 我已將readlock策略設置爲'changed',它跟蹤使用camelLock文件進行的文件更改,並且只有當文件完成下載後,它纔會被處理。但駱駝readlock戰略'改變'是不鼓勵聚類。根據駱駝文件「idempotent」被推薦。這是我用5GB文件測試時發生的情況。
兩個節點: 我已將readlock策略設置爲'idempotent',它將文件分發給其中一個節點,但駱駝甚至在文件下載完成之前開始處理該文件。
即使在文件下載之前,有沒有辦法阻止駱駝處理,當readlock策略是冪等的?
謝謝大流士。我們在集羣中使用hazelcast並且工作得很好,文件僅在集羣中的一個節點上進行處理。但是,問題在於readLock設置爲idempotent並且發件人發送5GB文件,文件使用者立即或在文件完成下載之前的幾秒鐘後立即處理它。我們擔心網絡問題等,如果發件人發送的文件中斷,我們的交易狀態將不完整。在文件消費者拿起文件之前,希望文件完全下載,就像readLock = changed時發生的那樣。 – Arjun
您是否嘗試過使用idempotent = true更改readLock =並將idempotentRepository指向Hazelcast? –
在羣集上嘗試過。這個設置'readLock =用idempotent = true改變,idempotentRepository指向Hazelcast'沒有幫助。即使在下載之前,消費者也會收到文件。 – Arjun