elasticsearch学习笔记(十五)——Elasticsearch partial update内置乐观锁并发控制

栏目: 后端 · 发布时间: 5年前

内容简介:Elasticsearch partial update内置了乐观锁并发控制机制。同样是基于_version(新版本更新为if_seq_no和if_primary_term)进行乐观锁的并发控制。详细请看:这里多提一点就是使用partial update有一个参数叫retry_on_conflict,也就是可以基于retry策略:我们回顾一下之前说的乐观锁并发控制策略

Elasticsearch partial update内置了乐观锁并发控制机制。同样是基于_version(新版本更新为if_seq_no和if_primary_term)进行乐观锁的并发控制。详细请看: https://segmentfault.com/a/11...

这里多提一点就是使用partial update有一个参数叫retry_on_conflict,也就是可以基于retry策略:

我们回顾一下之前说的乐观锁并发控制策略

在高并发更新数据时,它基于最新的数据和if_seq_no,if_primary_term进行修改,可能这个过程会需要反复执行好几次,才能成功,特别是在多线程并发更新同一条数据很频繁的情况下。

而partial update就是再次基础上添加了一个参数retry_on_conflict,可以设置最多重复的次数。

示例:

POST /test_index/_update/3?retry_on_conflict=5
{
  "doc": {
    "test_field1": "update test1"
  }
}
GET /test_index/_doc/3
{
  "_index" : "test_index",
  "_type" : "_doc",
  "_id" : "3",
  "_version" : 3,
  "_seq_no" : 2,
  "_primary_term" : 1,
  "found" : true,
  "_source" : {
    "test_field1" : "update test1",
    "test_field2" : "update test2"
  }
}

以上所述就是小编给大家介绍的《elasticsearch学习笔记(十五)——Elasticsearch partial update内置乐观锁并发控制》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

深入理解计算机系统(原书第3版)

深入理解计算机系统(原书第3版)

Randal E.Bryant、David O'Hallaron / 龚奕利、贺莲 / 机械工业出版社 / 2016-11 / 139.00元

和第2版相比,本版内容上*大的变化是,从以IA32和x86-64为基础转变为完全以x86-64为基础。主要更新如下: 基于x86-64,大量地重写代码,首次介绍对处理浮点数据的程序的机器级支持。 处理器体系结构修改为支持64位字和操作的设计。 引入更多的功能单元和更复杂的控制逻辑,使基于程序数据流表示的程序性能模型预测更加可靠。 扩充关于用GOT和PLT创建与位置无关代码的......一起来看看 《深入理解计算机系统(原书第3版)》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具