如何处理对同一MongoDB文档的并行更新?

时间:2019-01-15 05:38:16

标签: java mongodb spring-boot parallel-processing

带有MongoDB CrudRepository的Spring Boot应用程序。
我有多个线程并行更新同一文档。每个线程将按ID加载文档,进行更改 并尝试将其保存。

为了克服可以覆盖第一个线程所做更改的“最后获胜”行为,我实现了一种简单的版本控制机制,该机制仅在线程试图保存最新版本时才可以保存其更改,否则将引发异常。 >
这解决了多次写入可能导致的数据不一致,但是我正在失去工作。尝试使用旧版本保存文档的线程没有重试机制。

是否有针对此问题的通用解决方案?我不确定要采用哪种方法来解决此问题。

0 个答案:

没有答案