最新要闻
- 全球今日讯!没听妈妈话学了物理他拿了诺奖 丁肇中:坚持自己的兴趣和理想
- 【天天新视野】Intel超级APU:黄了!
- 越南打工人不加班 一天只干5小时:逼急中国老板 傻子一样
- 世界微动态丨广州高温费发放标准2023 广州高温补贴几月开始发放?
- 高空坠物致人死亡 36名住户赔偿!专家称非常危险:一定要避免
- 浙江一公司上4休3收到上千份简历:目前仅有三名员工、盈利只够工资 全球热闻
- 刀片电池走向全球 多国力邀比亚迪建厂!官方回应
- 《小美人鱼》IGN 7分:不完全成功 海洋生物太丑!
- 就在地球上 科学家培育出一个“黑洞”:结果有了惊人发现 环球观天下
- 环球讯息:你会相信人工智能医生吗
- carplay放歌没声音怎么回事_当前头条
- 全球快播:登陆iOS后:安卓版ChatGPT即将上线
- 家长投诉网红店打卡博主穿着暴露 离学校近影响孩子心理:网友吵翻-热文
- 世界热讯:华为完成14nm以上EDA替代 更强的国产EDA来了:部分已支持5nm
- 魅族618开启!魅族20限时直降200元:2999元起 3年超长质保_世界要闻
- 自拍神器!小米Civi 3前置双主摄:32MP美人镜+32MP超广角|世界速看料
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
聊聊ElasticeSearch并发写的乐观锁机制 天天快讯
概述
ES的多客户端并发更新是基于乐观并发控制,通过版本号机制来实现冲突检测。
关键对象
ES的老版本是用过_version
字段的版本号实现乐观锁的。现在新版增加了基于_seq_no
与_primary_term
字段,三个字段做乐观锁并发控制。
(资料图)
_version
:标识文档的版本号,只有当前文档的更新,该字段才会累加;以文档为维度。
_seq_no
:标识整个Index中的文档的版本号,只要Index中的文档有更新,就会累加该字段值;以Index为维度记录文档的操作顺序。
_primary_term
:针对故障导致的主分片重启或主分片切换,每发生一次自增1;已分片为维度。
原先修改指定版本的请求参数是_version
;目前修改指定版本的请求参数只能是
PUT user/_doc/1?if_seq_no=22&if_primary_term=2
乐观并发控制
乐观锁的操作主要就是两个步骤:
- 第一步:冲突检测。
- 第二步:数据更新。
参考乐观锁的版本号,JDK提供了一个AtomicStampedReference
类,在CAS的基础上增加了一个Stamp(印戳或标记),使用这个印戳可以用来觉察数据是否发生变化,给数据带上了一种实效性的检验。
为什么要说到这个?网上很多资料就是一笔带过ES是通过乐观锁版本号来实现并发控制的,我就纳闷,仅仅通过版本号怎么实现的?ES的乐观锁实现就是类似AtomicStampedReference
原理。其流程大致如下:
获取当前文档的最新版本号:在更新操作开始之前,Elasticsearch会获取当前文档的最新版本号。
检查版本号冲突:客户端在更新请求中提供了要更新文档的版本号,服务器会将客户端提供的版本号与实际文档的最新版本号进行比较。
如果客户端提供的版本号与实际文档的最新版本号一致,表示没有冲突,操作可以继续进行。
如果客户端提供的版本号与实际文档的最新版本号不一致,表示发生了版本冲突,更新操作会被拒绝并抛出
VersionConflictEngineException
异常。原子性更新版本号:如果没有发生版本冲突,Elasticsearch会对文档的版本号进行原子性的更新。这意味着在更新过程中,其他并发的更新请求会被阻塞,直到当前更新操作完成。
更新文档内容:在版本号更新完成后,Elasticsearch会执行实际的文档更新操作,包括更新字段的值、添加或删除字段等。
这个过程就是一个典型的read-then-update的过程,ES保证原子事务。其实在并发更新下,哪怕是基于乐观锁多版本号控制,是一定要通过某种机制保证冲突检测与数据更新的原子性;并不是简单的一句多版本控制实现了乐观锁(是我自己较真了)。
翻了下GPT,如下是给出的回复。佐证了我的猜想(源码看了下,翻不动!)
冲突检测的解决
乐观锁出现版本冲突时,ES提供了相应的机制获取冲突
List conflicts = response.getGetResult().getConflicts();
同时还可以配置重试策略,因为一般情况下,都是可以通过重试解决的,ES中配置retry_on_confict
即可。
关键词:
-
世界热点评!臭名昭著的“Hello,World!”
Windows平台下的c++集成开发环境(IntegratedDevelopmentEnvironment,IDE)有很多种,例如微软的Visualstu
来源: 聊聊ElasticeSearch并发写的乐观锁机制 天天快讯
世界热点评!臭名昭著的“Hello,World!”
全球今日讯!没听妈妈话学了物理他拿了诺奖 丁肇中:坚持自己的兴趣和理想
【天天新视野】Intel超级APU:黄了!
越南打工人不加班 一天只干5小时:逼急中国老板 傻子一样
世界微动态丨广州高温费发放标准2023 广州高温补贴几月开始发放?
人工智能将如何改变敏捷项目管理?|当前最新
2步轻松实现ASP.NET Core托管服务执行定时任务_天天资讯
互联网从业人员的知识图谱-天天观速讯
高空坠物致人死亡 36名住户赔偿!专家称非常危险:一定要避免
浙江一公司上4休3收到上千份简历:目前仅有三名员工、盈利只够工资 全球热闻
刀片电池走向全球 多国力邀比亚迪建厂!官方回应
《小美人鱼》IGN 7分:不完全成功 海洋生物太丑!
就在地球上 科学家培育出一个“黑洞”:结果有了惊人发现 环球观天下
环球讯息:你会相信人工智能医生吗
carplay放歌没声音怎么回事_当前头条
MSE 自治服务帮你快速定位解决 Dubbo 重复订阅导致 RPC 服务注册失败问题
springcloud~gateway网关
[css]总结-如何实现水平垂直都居中对齐?
闫衍:经济复苏由结构分化走向全面修复 全年经济增速有望达到5.7%
全球快播:登陆iOS后:安卓版ChatGPT即将上线
家长投诉网红店打卡博主穿着暴露 离学校近影响孩子心理:网友吵翻-热文
世界热讯:华为完成14nm以上EDA替代 更强的国产EDA来了:部分已支持5nm
魅族618开启!魅族20限时直降200元:2999元起 3年超长质保_世界要闻
自拍神器!小米Civi 3前置双主摄:32MP美人镜+32MP超广角|世界速看料
新动态:我国深海装备技术水平持续提升 为南海沉船遗址考古研究提供科技支撑
今日播报!数据驱动的军港革新:智慧可视化助力军事决策
子母钟系统(网络时钟系统)助力高考精准计时工作建设
天天微速讯:云计算遇上电动车,跑出新模式的数智化转型
天天观察:能力惊人!GPT-4通过注册会计师和内审师考试
“小而美”国民爆款车!五菱宝骏悦也售价曝光:或8.38万元起 当前播报
比亚迪研发公司更名方程豹汽车销售公司:王传福卸任董事长
环球观天下!5倍于ChaGPT Intel推出Aurora genAI大模型:1万亿参数
微信5个“隐藏”超强功能 你知道几个? 新资讯
怎么验证苹果手机是不是正品
css 中class包含某元素的选择器-速读
JS中的undefined 与 null_天天热门
世界微头条丨CoaXPress 协议的CRC及其具体实现
【全球独家】【一步步开发AI运动小程序】五、帧图像人体识别
中企承建的安哥拉最大水电站开启大坝主体施工 当前热议
12306教你买便宜的火车票 最高可省近200元
Redmi K60宣布最高降价500元:2299元起!-全球热讯
16GB内存+1TB存储仅2899元!Redmi K60 1TB顶配版图赏
618价格战提前开打 宏碁27寸2K 170Hz显示器到手999(Fast IPS面板)|环球观速讯
全球热讯:OPPO Reno10系列核芯公布:骁龙8+旗舰平台 配长寿续航
微信昵称怎么设置空白_微信昵称设置特殊符号_全球观天下
周口搅拌泵选购要注意什么 购买搅拌泵时要注意什么
上线近10年你听过吗?短视频制作神器逗拍宣布停止运营
雨量破历史极值!深圳凌晨突遇暴雨:电闪雷鸣 网友被吵醒
宠物猫被邻居高空扔下活活摔死 网友气愤行为可耻:为何虐猫 每日聚焦
本周五上!《小美人鱼》国内票房预售凉凉 15万都没到:口碑解禁 小黑美人鱼完美
国内人均工作时间48.7小时!专家称大家不是反对加班而是不给加班费
天天热推荐:欧盟外长会未就新一轮对俄制裁达成共识
学系统集成项目管理工程师(中项)系列24b_信息系统集成专业技术知识(下)
【读财报】一季度公募基金销售保有量透视:招行、蚂蚁基金领跑,银行系份额领先但占比下降 全球焦点
5月版号下发!86款国产游戏获批:腾讯、网易在列 天天快资讯
每日短讯:为了不再做噩梦 我试着给它编了个“好结局” 竟然真管用
葡萄牙一块大石头居然会“生孩子”?真相大白_当前信息
618让利16亿!小米12S Pro闪降900元:3199元买骁龙8+徕卡旗舰|微头条
20万的纯电SUV 彻底“杀疯了” 天天热点
当前速递!最高直降400元!小米13系列官方首次降价:3699元起
每日动态!茂硕电源:截至2023年5月19日,公司股东人数约3万多户
开源.NetCore通用工具库Xmtool使用连载 - 发送邮件篇
全球最资讯丨[Linux] CENTOS7设置Swap交换区
特斯拉必装脚部记录仪?挪威出租车司机指控Model Y自行加速撞车 天天视讯
3个月残忍杀死650头大象!为什么不能活着取象牙?
银河系中心 超级黑洞附近:恒星一颗颗地神秘消失了! 全球滚动
全球简讯:买这些新SSD的 十个里有九个是大怨种!
1TB“白菜价” 一加Ace 2V新版上架:2799元|世界速看
同房后多久可以用试纸测出怀孕_生产后多久可以怀孕
范式之魂和孟极哪个好(范式守信)
学厨师多少钱?_学厨师需要多少钱 每日观察
微软必应搜搜份额创历史新高 成为中国第一大桌面搜索引擎
乐高再次推出了实物大小超跑 精密极致且价格不菲
《碧海黑帆》现状惨淡“摇摇欲坠” 游戏或将面临推迟或被砍
全球首架C919大飞机飞抵南京机场 累计获得32家客户1035架订单
超级计算机Frontier蝉联了榜首 显示其运算性能增长至1.194 Exaflop/s
深入理解Kube-APIServer 世界视点
焦点信息:数据库设计三范式
文心一言 VS chatgpt (21)-- h264编码一帧数据的流程是怎样的?_今日讯
今日热议:盘点被时代淘汰的厨房产物!谁买谁后悔
超迷你的M.2 2230 SSD新品铠侠BG6发布:2TB容量!第6代闪存性能暴增
光追游戏实测 RTX 4060/70/80体验究竟相差多少_全球球精选
丰田霸道变速箱油哪个牌子好_丰田霸道变速箱油灯亮 世界快资讯
Java设计模式-组合模式 天天热推荐
陕西立夏后突然又降雪 游客只穿了短袖冻惨:专家释疑罕见气候
最成功主播!薇娅夫妇半年收获两家上市公司 价值约4.2亿_世界今头条
全球最资讯丨i7-13700K相当于游戏本的哪个U 结果有点意外
provide sth_provide
Go学习圣经:0基础精通GO开发与高并发架构(1)
Stream流体系
美国才是真正的“经济胁迫者”|天天快看
【聚看点】开锁公司上门多少钱海沧(开锁公司上门多少钱)
全球关注:俄罗斯新车销量暴跌 价格却狂涨:丰田凯美瑞卖到130万
杭州将拥有13座高铁站 但离中国第一还差得远
中国首个国际化影视级VP虚拟制片影棚落地上海 全套好莱坞技术_资讯
桌面版RTX 4070与移动版RTX 4080对比实测!谁更强一目了然|环球即时
孙子用爷爷苹果手机充7万手游退款遭拒:几个月就把钱弄没了 焦点播报
AcWing905.区间选点
python调用父类方法的三种方式(super调用和父类名调用)_当前速递