gpt4 book ai didi

azure - 我可以从 Azure Cosmos DB 读取/加载文档并同时获取其写入锁定吗?

转载 作者:行者123 更新时间:2023-12-02 05:54:21 24 4
gpt4 key购买 nike

基本上我想知道只有一方会更改该文档。我想避免这样的情况:一个辅助角色或不同辅助角色的 2 个不同实例将读取文档的相同状态,然后每个实例将编写自己的修改(可能不同)。顺序写入可能很容易一个接一个地顺利进行,但这不是我想要的。

如果由于某种原因未发生写入,此写入锁应在一段时间后自动过期。

我听到一些传言说这是可能的,但我在文档中找不到这一点。

最佳答案

据我所知,至少在撰写本答案时,Cosmos DB 不支持您正在寻找的内容(获取写锁定)。今天支持的是Optimistic Concurrency using ETags这适合顺序写入,但这不是您想要的。

只是大声思考,您可以使用 Lease Blob 存储中提供的功能,并将其与 Cosmos DB 写入操作结合使用。

本质上,您的工作进程将尝试在特定持续时间(15-60 秒)内获取 Blob 的租约。只有一名 worker 能够获得租约。该工作线程在获取锁期间将有机会更新 Cosmos DB 中的文档。其他工作进程必须等到租约到期或第一个工作人员明确破坏租约。

这有点类似于此处描述的领导者选举模式:https://learn.microsoft.com/en-us/azure/architecture/patterns/leader-election .

关于azure - 我可以从 Azure Cosmos DB 读取/加载文档并同时获取其写入锁定吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60147614/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com