范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

一次ES故障排查过程

  作者:莫那鲁道
  原文:http://thinkinjava.cn/#blog
  某天晚上,某环境 ES 出现阻塞, 运行缓慢。于是开始排查问题的过程。
  开始
  思路:现象是阻塞,通常是 CPU 彪高,导致业务线程分配不到 CPU 时间片,或者内存吃紧,频繁 GC 导致的 STW。登录到目标服务器,由于 ES 的用户不是 LZ,因此找运维要了 root 权限,登录到服务器。sudo -i 切到 root,使用 ps -ef | grep Elasticsearch 找到该用户,然后 su - es 切到 es 用户(不切是无法处理 es 用户的 Java 进程的,例如打印 jstack 日志)。 top 查看服务器状态,发现 pid 4335 进程的 CPU 占用达到 180%,查看 CPU 核数:cat /proc/cpuinfo| grep "processor"| wc -l, 核数为 4,根据经验,通常是 C2 编译器,或者 GC 线程,最后是业务代码导致。因此需要定位该线程。使用 top -Hp 4335,得到线程号 30785,使用 printf "%x" 得到 16 进制数字 7841,方便在 jstack 日志查找线程。使用 jstack -l 4335 > jstacklog.txt 打印日志,然后找线程,vim jstacklog.txt, 开始查找,gg,/7841,enter,n, 找到 "Concurrent Mark-Sweep GC Thread" os_prio=0 tid=0x00007fd380063800 nid=0x7841 runnable 这个 CMS GC 线程,看来是内存不够了。 使用 jps -l 找到 es 启动类名称,然后使用 ps aux | grep Elasticsearch 找到启动详细信息,发现启动配置为 -Xmx2g -Xms2g, -XX:CMSInitiatingOccupancyFraction=50 ,这里为了防止串行 FGC,让 CMS 在 old 区达到 50% 时就开始 GC,所以 CMS 非常繁忙。为了验证此问题,使用 jstat -gcutil 4335 1000 查看 gc 状态,发现 fgc 频繁(5 秒一次),ygc 正常(3 秒一次) ,这里说一下,CMS 的 fgc 此时和我们想象的不一样,CMS GC 只工作在老年代,每次 GC 会对 FGC 次数加 2,一次是 init mark,一次是 remark,这两个阶段会影响暂停应用,其他的清理阶段是并行清理的,对业务线程无影响,所以,当使用 CMS GC ,如果 jstat 看到 FGC 次数很多,不用在意。但当 CMS 出现 concurrent mode failure(CMS GC 的速度赶不上对象晋升到 old 区的速度),则会使用备用收集器 Serial,开始串行 GC,此时将会彻底 STW。 因此,这个 ES 将 CMS 的阈值调的很低,就是为了防止出现 concurrent mode failure。
  原因
  原因已经找出,由于 CMS GC 频繁,导致 CPU 彪高,ES 查询速度变慢,最后业务阻塞。
  继续
  但是为什么频繁 CMS 呢?肯定是内存不够,为什么不够呢? 通常是通过 dump 内存文件查看,但是注意,jmap 和 jcmd dump 文件时,会导致 fgc,线上需要注意,我这里由于不是业务高峰,使用 jmap -dump:format=b,file=/tmp/dump.hprof 3445 , 导出该文件到 tmp 目录,方便从跳板机上下载。
  从跳板机下载文件,权限不够,使用 sudo chown -R username dump.hprof 修改权限,然后下载。
  LZ 使用的是 mac,使用 mat(Mac 的 mat 有 bug,需要替换一个 jar 包,具体自行搜索) 开始分析,发现内存中有 1个多 g 的 indexService 对象(600 多),即 ES 的索引对象,通过和 ES 同学的沟通,确实发现有 600 多索引,有很多都是国企索引,通常一台 ES 差不多配置 100-200 索引,大量索引引起更新,频繁更新索引对象。
  最后,将ES 内存升级到 4g,-XX:CMSInitiatingOccupancyFraction 修改为75,减少 CMS GC。删除 ES 无效索引。问题解决。
  后期为了检验结果,使用 jvisualvm 连上服务器 Java 进程: 登录到目标服务器,创建文件 jstatd.all.policy,文件内容:grant codebase "file:${java.home}/../lib/tools.jar" {
  permission java.security.AllPermission;
  };
  执行 jstatd -J-Djava.security.policy=jstatd.all.policy -p 1222 & , 启动 jstatd 后台服务,方便 jvisualvm 连接到这台服务器的 Java 进程。找到本机 Java 目录下的 VisualVM ,连接上目标 ip 和 1222 端口服务,安装 GC 插件,查看 GC 状态。扩展阅读
  从一次线上故障思考 Java 问题定位思路
  排查Java线上服务故障的方法和实例分析
  一次内存溢出的排查经历
  一次堆外OOM问题排查
  记一次线上gc调优的过程

国内手机市场销量进入深水区如何突破增长的烦恼央广网北京4月11日消息(记者万玉航)你有多久没换手机了?清明假期前,一则关于手机的热搜在微博引发广泛讨论。清明节假期期间,央广网记者走访了北京部分手机品牌的线下门店发现,店面销售Selenium上传文件有多少种方式?不信你有我全Selenium封装了现成的文件上传操作。但是随着现代前端框架的发展,文件上传的方式越来越多样。而有一些文件上传的控件,要做自动化控制会更复杂一些,这篇文章主要讨论在复杂情况下,如若不经学习之苦,必然承受生活痛苦茶小风写于22。03。16今儿被霸屏的莫过于腾讯和阿里几家互联网公司裁员的事情了,后疫情的时代,不确定性更多,也令人难以捉摸。不得不感慨,究竟什么是出路呢?想要去流浪,若是风子拥有华为一季度下架超2万款应用5月9日,华为发布了华为应用市场2022年第一季度安全隐私报告。其中数据显示,一季度期间,华为下架了超过2万款应用。手机中国了解到,今年第一季度,华为应用市场对72299款应用进行北汽蓝谷子公司汽车销量同比增长浙江建投中国信达拟减持北汽蓝谷子公司4月份汽车销量同比增长96。2概述泡财经获悉,5月9日晚间北汽蓝谷(600733。SH)公告,公司子公司北汽新能源4月汽车产量220辆,上年同期151辆4月汽车销量2新能源汽车乱象多发你被潜规则了吗?来源人民网近年来,新能源智能汽车销量与价格齐涨,但消费者遇到的问题也层出不穷。中消协近期发布中国消费者权益保护状况年度报告(2021)显示,新能源智能汽车消费正引发维权新问题。20惨!比特币暴跌55,40投资者的资产缩水机构已经接近底部了自去年十一月最高峰以来,比特币的价值已下降了55,而持有比特币的40人也因此而缩水。在过去六个月里,当比特币价格达到69,000美元顶峰时,这些人的数量将会更多。仅仅上个月,由于全TME华语音乐白皮书全年新歌总量114。5万同比增53新京报贝壳财经讯(记者白金蕾孙文轩)5月10日,腾讯音乐娱乐集团(以下简称TME)旗下腾讯音乐数据研究院推出2021华语数字音乐年度白皮书(以下简称白皮书)。本次白皮书共分为三个篇构筑数字经济治理的中国优势来源经济参考报数字经济发展事关国家发展大局,数字经济治理体系是国家治理体系和治理能力现代化的新疆域。如何构建具有中国特色的数字经济治理体系,培肥数字经济的制度土壤,已成为数字时代彰京东这第三方卖家我真是服了上个月月底在京东买的东西发的是第三方快递京东物流显示快递一直不动然后用别个软件查快递信息查不到问客服第二天了才给回信息,然后一直在那打太极。经过我不懈的努力追问最后跟我说我的件丢了微信怎么查看头像更换次数?微信头像更换次数查看方法微信作为国民级的软件,一点风吹草动都能引发网友们的关注!比如前但时间微信内测朋友圈内容转发和微信公众平台即将展示用户IP属地等话题纷纷登上了微博热搜,引发不少网友围观讨论。今日,微
快讯宜兴贴膜工厂起火或因特斯拉自燃?特斯拉回应与公司无关每经记者李星每经编辑孙磊4月24日晚间,一组关于宜兴一家贴膜工厂夜间燃烧的聊天记录和照片在网络上被曝光。从公开的照片来看,厂房内多辆车辆烧得只剩车壳,厂房内也一片狼藉。网名为饿了的重磅消息魅族将接入HMS服务,华为再获一同盟伴随着时间的推移,华为的研发工作受到了越来越多厂商的支持。在这些伙伴中,主要集中在一些第三方的设备上。由于这些伙伴的支持,使得华为在遭受打压之后依然可以较好地运营。就在3月21日有这就是被泄露的iPhone13,新功能还挺吸引人的如今互联网什么最精贵?当然是流量,一些厂商为了让自己的产品能受到更多人关注,总是会想尽各种办法炒作来创造流量,甚至会花钱去买流量,但有一家厂商的产品却自带流量,但凡有一点相关消息,iOS14。4。212。5。2双正式版更新建议突如其来的软件更新提示,我兴奋的以为iOS14。5正式版来了,这样我就可以通过AppleWatch解锁iPhone了,每次都要在公众场合输入密码,真的很不方便。认真看一下,竟然是i花4000买一加9不值?全国16个城市用户大排长队,只为买它最近这段时间,不少小伙伴都在打算着换一台新手机,而越来越多的人也开始瞄准了4000元段位的旗舰机型。当下,小米11魅族18荣耀V40iQOO7一加9等,算是比较受欢迎的五款热门手机柴油发动机的时代结束了吗?为何德国坚持使用柴油?在过去的12年中,电动汽车正在疯狂的进入市场,成为市场主流。关于纯电动汽车的消息几乎每天都在变化。关于汽车制造商与电池公司之间的竞争也变得日益激烈。好像所有人如果买车不买纯电动汽车中国移动2个罕见老板号段,很多人没用见过,记得保存好了前言随着科技与互联网的不断发展,智能手机已经广泛应用于人们的生活中,几乎每个人都拥有一部属于自己的手机。但手机的正常使用需要通过运营商,如果没有三大运营商为广大用户提供通信服务,可iPhone一共发售了多少款手机,iPhone型号大全目前到2021年初为止苹果公司总共生产的苹果手机一共有29款。型号分别为iPhoneiPhone3GiPhone3GSiPhone4iPhone4siPhone5iPhone5si荣耀HonorPad7WiFi版本开售1399元起联发科HelioP22T芯片荣耀最近推出了HonorPad7,这款设备已经开始销售。虽然该公司已经在市场上推出了WiFi和LTE版本,但目前只有WiFi版本可供购买。售价方面,4GBRAM64GB储存型号的售用魅族手机的小伙伴,你们的日历2021年清明节是几号?日历需要更新真TM操蛋。我用了好几部手机都是魅族,一直没出过问题,早了好几天我就准备清明节回家祭祖。都准备好了,本来打算今天下午向回走的。后来老家人打电话告诉我已经祭过祖了,还问我全球缺芯情况下,中国芯却迎来爆发期?美国只能接受现实本文原创,请勿抄袭和搬运,违者必究全球缺芯带来的现象全球各国都在加速科技发展,而作为科技创新的基石,芯片的重要性是不可忽略的。欧美国家由于对芯片产业的把控力度非常大,所以在各项科技