【发布时间】:2021-03-08 12:28:56
【问题描述】:
我需要创建一个 api 来创建一个实体,该实体的数据中必须有一个唯一的名称。
exp:
{
name: "Reza",
...
}
问题是如何抛出该名称的错误已被采用。 我可以通过读取整个表并检查是否没有具有该名称的对象然后创建实体来处理它,但是我可以用并发做什么? 如果其他人同时调用 create api 并且同名它不在 db 中,那么我不会注意到它是重复名称,那么我们会遇到重复。 该项目在 baas 上,该服务使用 mongodb,但我不直接访问它,并且由于分片,我不能使用唯一索引。 这种情况有什么解决方法吗?
【问题讨论】:
-
也许你可以使用unique indices?
-
@Julia 该项目在 baas 上,服务使用 mongodb,但我不直接访问它,并且由于分片,我无法使用唯一索引
标签: database mongodb api unique