当我们有多个实例时,如何在MongoDB中提高并发性



我们正在运行一个具有多个实例的微服务架构。我有一份由人名列表组成的mongo文件。如果文档不在集合中,我将创建一个新文档。但是,如果文档存在于集合中,我会将名称添加到现有数组中。但由于我使用了多个实例,因此可能存在竞争条件。我该如何处理,如有任何帮助,不胜感激。

代码的框架如下:

A a = repo.findById("");
if(Objects.nonNull(a))
do some operation
else{
a= new A();
}
a.getList.add("");
repo.save(a);

在这种情况下,当存在多个实例时,我如何处理并发性?

使用upstart更新,如果文档存在,则修改文档;如果不存在,则创建文档。

最新更新