最新要闻
- 上海妍秀国际医疗美容诊所医生以及擅长项目推荐
- 报道:上半年最后一个假 端午节放3天:假期后需连上6天班
- 《街霸6》新角色韩蛛俐介绍片:疯美人脚法了得-全球观天下
- 最新快讯!三星宣布多款旧设备停止更新支持
- 清仓特价 森马板鞋/运动鞋39元起、T恤29元起-要闻速递
- 今日快讯:又一个小米6钉子户消失 米粉给妈妈换小米13 雷军点赞
- “广州市十佳科普使者”出炉|全球观察
- 五一余额不足 最后一天返程现场排长队 网友:凌晨出门照堵不误
- “插队婆孙”被做成恶搞表情包:如此“网暴”是否合适?
- 母子争吵儿子走丢 机场民警15分钟帮找到孩子|播资讯
- 【世界速看料】最便宜的16GB显存显卡出现了!AMD、NVIDIA统统靠边站
- 焦点报道:苹果、谷歌起草追踪设备行业规范:打击滥用定位功能
- 当前短讯!实惨!男子拍演唱会:激光导致手机摄像头直接报废
- Realme 11 Pro+ 5G 曝光 在5月10日发布
- 66元的的钟薛高在东北只要3.8元一根!商家回应
- 开眼!丰田为混动车申请“手动挡”专利:只为保留驾驶乐趣 环球热推荐
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
ZooKeeper 避坑指南: ZooKeeper 3.6.4 版本 BUG 导致的数据不一致问题
作者:子葵
背景
ZooKeeper 作为分布式系统的元数据中心,对外服务的数据一致性需要得到很好的保证,但是一些老版本的 ZooKeeper 在一些情况下可能无法保证数据的一致性,导致依赖 ZooKeeper 的系统出现异常。
(资料图)
某用户使用 3.4.6 版本 ZooKeeper 做任务调度,ZooKeeper 实例的 tps 和 qps 都比较高,事务日志产生的速率很快,即使此用户配置了自动清理的参数,但是自动清理的最小间隔还是赶不上数据产生的速度,导致磁盘爆满。
在此用户清理了旧日志之后,重启节点,部分业务机器就报出 NodeExist,NoNode 的异常,并且报错只集中在部分机器,此次异常导致用户任务调度系统出现任务重复调度以及任务丢失问题,产生重大损失。
原因分析
仔细检查了这些客户端发现这些客户端都连接在同一台 ZooKeeper 节点上,通过 zkCli 手动排查节点上的数据,对比其他未清理磁盘的 ZooKeeper 节点,清理了磁盘的 ZooKeeper 节点中的数据和其他节点具有差异,此时确定此节点由于一些原因出现了数据不一致问题,导致连接到此节点的客户端读到了脏数据。
但是排查日志,没有发现异常日志。由于此节点之前清理过日志,并且重启过,磁盘上的数据被重新加载过,因此怀疑是 ZooKeeper 在启动加载数据的过程中出现了一些异常情况。通过分析 ZooKeeper 启动中加载数据的代码,继续排查具体原因。
public long restore(DataTree dt, Map sessions, PlayBackListener listener) throws IOException { snapLog.deserialize(dt, sessions); FileTxnLog txnLog = new FileTxnLog(dataDir); TxnIterator itr = txnLog.read(dt.lastProcessedZxid+1); long highestZxid = dt.lastProcessedZxid; TxnHeader hdr; try { while (true) { ... try { processTransaction(hdr,dt,sessions, itr.getTxn()); } catch(KeeperException.NoNodeException e) { throw new IOException("Failed to process transaction type: " + hdr.getType() + " error: " + e.getMessage(), e); ... return highestZxid; }
此处是 ZooKeeper 加载磁盘数据的代码,此方法的主要作用是,首先将磁盘中的 snapshot 文件加载进内存,初始化 ZooKeeper 内存中的数据结构,之后将加载事务日志应用日志中对数据的修改,最终还原磁盘中数据的状态。
但是在 3.4.6 版本的代码中snapLog.deserialize(dt, sessions);这行加载 snapshot 文件的代码有一个返回值,此处没有进行返回值校验,导致在 ZooKeeper 本身找不到有效的 snapshot 文件的情况下还是会继续加载事务日志,从而导致 ZooKeeper 在空数据的状态下直接应用事务日志,最终导致此节点的数据和其他节点的数据不一致。
此问题已经在 ZooKeeper 社区有对应的issue,在加载 snapshot 的文件列表为空的情况下,此问题已经得到了修复,但是由于磁盘爆满导致的 snapshot 文件不完整的其他的一些特殊情况下,此问题依然存在。解决此问题还需要从磁盘使用的角度解决。
issue:
https://issues.apache.org/jira/browse/ZOOKEEPER-2325
解决方案
为了避免 ZooKeeper 节点的磁盘被快速打满,可以增加磁盘的容量,配合 ZooKeeper 本身的清理机制,可以在一定范围内的 tps 下避免磁盘被写满的情景,但是增大磁盘容量会带来显著的使用成本的提高,并且即使磁盘容量提高了,也可能因为 ZooKeeper 本身清理机制不及时清理,导致磁盘被打满,最终需要通过人工的方式进行磁盘清理,运维起来很复杂,耗费人力物力,并且集群稳定性得不到显著提升。
MSE ZooKeeper 提供 ZooKeeper 实例的全托管,MSE ZooKeeper 实例的磁盘使用对用户完全透明,用户无需担心磁盘爆满问题,以及磁盘使用过程中的复杂运维。MSE ZooKeeper 通过定时清理,触发使用阈值清理等手段保证 ZooKeeper 实例在使用过程中磁盘始终处于安全水位,避免由于磁盘问题导致的数据不一致,实例不可用等问题。
MSE ZooKeeper 默认集成 Promethus 监控,提供丰富的指标信息,并且针对写多的场景,MSE ZooKeeper 提供 TopN 大盘,能够快速看到业务热点数据,以及高 tps 的客户端情况,能够通过这些统计数据快速定位业务使用过程中的问题。
关键词:
-
ZooKeeper 避坑指南: ZooKeeper 3.6.4 版本 BUG 导致的数据不一致问题
ZooKeeper作为分布式系统的元数据中心,对外服务的数据一致性需要得到很好的保证,但是一些老版本的ZooKeep
来源: 【2023 · CANN训练营第一季】昇腾AI入门Pytorch
世界微动态丨23 网络数据在内核中流转
ZooKeeper 避坑指南: ZooKeeper 3.6.4 版本 BUG 导致的数据不一致问题
5月3日全国铁路迎来返程客流高峰 预计发送旅客1935万人次 世界独家
上海妍秀国际医疗美容诊所医生以及擅长项目推荐
报道:上半年最后一个假 端午节放3天:假期后需连上6天班
《街霸6》新角色韩蛛俐介绍片:疯美人脚法了得-全球观天下
Bash—source命令&export命令&bashrc文件
最新快讯!三星宣布多款旧设备停止更新支持
清仓特价 森马板鞋/运动鞋39元起、T恤29元起-要闻速递
今日快讯:又一个小米6钉子户消失 米粉给妈妈换小米13 雷军点赞
22 URL到网卡:网络数据流动
“广州市十佳科普使者”出炉|全球观察
五一余额不足 最后一天返程现场排长队 网友:凌晨出门照堵不误
“插队婆孙”被做成恶搞表情包:如此“网暴”是否合适?
【全球聚看点】OpenAI API keys 的申请和测试小结
母子争吵儿子走丢 机场民警15分钟帮找到孩子|播资讯
【世界速看料】最便宜的16GB显存显卡出现了!AMD、NVIDIA统统靠边站
焦点报道:苹果、谷歌起草追踪设备行业规范:打击滥用定位功能
当前短讯!实惨!男子拍演唱会:激光导致手机摄像头直接报废
Realme 11 Pro+ 5G 曝光 在5月10日发布
66元的的钟薛高在东北只要3.8元一根!商家回应
开眼!丰田为混动车申请“手动挡”专利:只为保留驾驶乐趣 环球热推荐
游客停车31小时被收640元:明码标价 但已退还
Blazor学习之旅系列总结目录
国铁集团郑州局预计3日客流创历史新高
小学生写人作文开头结尾集锦_小学生写人作文-观速讯
【天天时快讯】阿维塔定金72小时内可退成空话 店长:“已锁单”
汽车盗窃案上升548% 纽约市免费发放500个苹果AirTag应对
【当前独家】 男子吐槽在景区停车场一路捡到26个螺丝钉 官方回应
青海省西宁市城西区西川南路消防救援站站长助理玛尼坚——磨砺技能 守护平安(劳动者之歌)
多地消费市场见闻
世界资讯:客户抛弃雷克萨斯LM来买 腾势D9 4月销量10526辆
19.99万元期待落空 打价格战的特斯拉为何突然涨价:利润下滑
观速讯丨Intel AVX-512指令集要回来!残血版?AMD正尽情享受
世界最资讯丨艾玛·沃森曝光新写真 透露2024年开拍新电影
24小时不打烊,365天对外接待……“临汾好办”不要太方便! 环球播资讯
每日热文:前缀和
可怜的欧美!RTX 3070上市两年半 终于破发|今头条
环球头条:雷蛇噬魂鲨极速版耳机发布:50mm驱动单元、30小时续航
别只会“王者峡谷五日游” 这几款游戏才是假期最佳解
每日关注!4月新能源销量:比亚迪、埃安、理想全线杀疯
全球要闻:巨亏236亿元!三星内存、闪存要减产25%
天天热头条丨“天空之城”游人如织
学系统集成项目管理工程师(中项)系列16b_风险管理(下)
世界观点:4年来首次下滑 AMD发布Q1季度财报:锐龙处理器成重灾区
五菱缤果营销比亚迪海豚话术曝光:颜值高、空间大
【速看料】五一后机票价格暴跌 飞三亚从2800降到280元 专家表态:很正常
联合国秘书长:呼吁以色列停止行政拘留的做法|全球观焦点
python图像处理库
Java读取数据库表
世界今热点:徊的拼音_徊怎么组词
流媒体时代谋生艰难!好莱坞编剧15年来将首次罢工
为何插电混动车主爱在外充电 理想高管分析:薅羊毛感觉爽
当前资讯!司机等红绿灯时看手机被罚200扣3分 车是静止状态:网友吵翻 但事实没错
NV一代神卡卷土重来!Steam新报告:RTX 40降价仍没存在感_当前热议
五一想在户外看电影、选购投影仪一定要注意这几点
浙商证券研究所所长助理陈杭离职:否认网传800万年薪,专心处理舆论_世界热资讯
81.数组 全球热门
Win11“颠覆性”功能被遗弃:失效三个月仍被微软无视
嘴硬还是明智?丰田高管:电动汽车技术不成熟、混动才实用
同花顺ai机构活跃度指标公式源码_活跃度100
Android-图片压缩(二)-纯干货
C# 常量 结构体 委托 热门看点
喝的二五八万是什么意思_二五八万是什么意思
性能达SteamDeck两倍!华硕ROG Ally掌机先行开箱来了
奇葩!插队发飙者称是换队 网友吐槽发飙发泼有理:景区称仍算插队
天天热议:手机就能跑!开源AI机器人MLC LLM发布:无需联网
喜欢玩手机 那就活该单身
沃尔沃首款全电动汽车现已准备好接触其首批英国客户
降价伤人伤己?特斯拉国内外突然涨价背后:实为去库存|每日短讯
ChatGPT导致信息泄露后:三星将开发内部AI工具
女子淄博吃烧烤排不上队被投喂饱 山东太热情:人民日报点赞
11.迷宫问题(BFS 储存路径)
哈弗的新款Boxy SUV由前路虎设计师设计|世界球精选
韩国大学生吃掉天价香蕉艺术品 称是行为艺术!原作者回应了 每日速读
焦点快报!最高热效率达44%:五菱柳机自研高热效发动机点火成功
私拆承重墙高楼已加固 居民称胆真大:多层裂纹被掩盖 还敢住吗
坏账损失核算方法有_坏账损失核算方法 世界即时看
卖不动很无奈?NVIDIA对RTX 4090官降:今年第三次了
华为重申保持创新:1年1615亿研发费下14nm以上EDA国产化 5G必要专利全球第一_全球观热点
appuploader iOS 应用自动发布
苹果酸酶_关于苹果酸酶的简介
Windows 12这般模样?概念设计出炉:任务栏/开始菜单无比舒服 天天头条
21 文件六大基本操作|焦点速读
Tomcat7安装基于jdk 1.7环境
全球资讯:STM32_5(中断)
ASML吓坏?俄罗斯放狠话加快自研光刻机 能产7nm芯片:合作伙伴敲定
画面瘆人!印度机场从一女子包中搜出22种蛇 环球百事通
《最终幻想16》召唤兽概念图曝光!极具设计感 世界热闻
显存容量很重要!RTX 3060 8GB魔改12GB显存后:性能提升22%-全球球精选
全球播报:长城魏玛奇朵dht-phev特调版外观设计精致,线条流畅
业主拆承重墙 裂缝已蔓延到21层行为被称谋杀:律师回应公共安全罪可刑拘-当前短讯
被指插队发飙当事人回应原委上热搜 是排队平移非插队:自己被冤枉 网友看醉
世界最新:物业公司在小区建简易摊位 合同到期 业主能不能收回?
哈希表与布隆过滤器
全球观热点:好客山东名不虚传!淄博0.85米志愿者喝着奶帮看行李
爱买不买?三星等国外大厂减产倒逼SSD等存储涨价 国产厂商不怕|焦点资讯
当前资讯!素质堪忧?垃圾站现1000万日元 日本12人前去冒领:最终结果意外
孔雀为躲游客拔毛被滑车碾压:为珍贵白孔雀!景区回应_全球速看