在沙发床中检测到锁释放?

菲利普·哈格隆德

这是我想做的:

try to lock a few documents
if any lock fails:
  unlock any docs we've locked so far
  wait until all locks are cleared
  retry from beginning
do something

但是,我不知道如何有效地等待所有锁被清除。除了使用“无限”循环来检查锁定尝试是否返回临时失败错误外,我在Couchbase文档中找不到任何内容。有什么好的方法可以等待正确的时间再重试?(加上一些随机时间以避免重复冲突)

重试之前等待15秒以上并不是那么用户友好。

马特·英格森(Matt Ingenthron)

没有直接。

两种可能的优化可以使其效率更高一些。

一种是,您可以在应用程序级别上制定一种方案,如果您无法获取该锁,则可以在该锁上由服务员维护一条记录,因此只有最顶层的一两个在尝试获取该锁。

二是您可能应该使用指数退避重试来有效地重试锁定。如果您真的想变得更复杂,则可以根据负指数在最有可能使用锁的时间构建和训练模型。随着“最后期限”的临近,您将在此处进行更频繁的轮询,并使用负指数函数来描述该数学。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在沙发床中检测到锁释放?

来自分类Dev

沙发床的油门XDCR

来自分类Dev

沙发床的油门XDCR

来自分类Dev

匹配沙发床设计中的任何键

来自分类Dev

包装沙发床访问功能

来自分类Dev

Sync_gateway沙发床requireRole

来自分类Dev

沙发床无法存储,因为太大

来自分类Dev

从沙发床视图获取柜台文件

来自分类Dev

Sync_gateway沙发床requireRole

来自分类Dev

通过python批量插入沙发床

来自分类Dev

如何通过给定的密钥来检索沙发床中的所有文档?

来自分类Dev

使用正则表达式形式的密钥删除沙发床存储桶中的条目

来自分类Dev

建议在多租户应用中使用沙发床模型

来自分类Dev

如何在沙发床视图中访问值?

来自分类Dev

为Hyperledger Fabric沙发床启用SSL

来自分类Dev

是否可以从沙发床参考javascript库?

来自分类Dev

为什么不能登录到沙发床?

来自分类Dev

使用带有boolean参数的沙发床视图时出现问题

来自分类Dev

有关沙发床复制品细节的一些问题

来自分类Dev

我怎样才能分组并更改沙发床中值的内容?

来自分类Dev

有关沙发床复制品细节的一些问题

来自分类Dev

网上有免费的免费沙发床商店可供学习吗?

来自分类Dev

如何使用批量获取从沙发床获取有序结果

来自分类Dev

要在N1QL沙发床情况下使用内部元素总和

来自分类Dev

当密钥不满足沙发床视图中的确切值时,响应自定义错误

来自分类Dev

使用适用于Python SDK的Twisted API异步N1QL沙发床查询

来自分类Dev

我在学习沙发床,有人能解释一下bucket和vbucket到底是什么吗?

来自分类Dev

我在学习沙发床,有人能解释一下bucket和vbucket到底是什么吗?

来自分类Dev

释放 QPushbutton 时未检测到插槽

Related 相关文章

热门标签

归档