注意 - 此問題擴展爲對另一個問題here的回答。在多線程環境中原子更新DB字段的計數
我正在通過將文件分成更小的組和導入每個塊(100行)的後臺作業來將文件導入到我的數據庫中。
我想要一種方法來跟蹤到目前爲止導入了多少塊的進度,所以我已經計劃在每個作業上將數據塊字段遞增1,這樣我知道已經處理了多少塊。
這有兩個並行作業同時遞增數據庫字段1和互相覆蓋的潛在情況。
避免這種情況並確保原子並行操作的最佳方法是什麼?上面的鏈接帖子建議使用Redis,這是一種好方法。對於這個問題我很好奇,如果有一種替代方法來使用持久性存儲。
我使用Rails的ActiveRecord與Postgres作爲我的數據庫。
謝謝!