tsar

运维救火必备:问题排查与系统优化手册(结合惨案现身说法)

与世无争的帅哥 提交于 2020-08-19 17:32:11
软件工程领域存在一个共识:维护代码所花费的时间要远多于写代码。而整个代码维护过程中,最惊心动魄与扣人心弦的部分,莫过于问题排查(Trouble-shooting)了。特别是那些需要 7x24 小时不间断维护在线业务的一线服务端程序员们,大大小小的问题排查线上救火早已成为家常便饭,一不小心可能就吃成了自助餐 —— 竖着进躺着出,吃不了也兜不住。 本文分享作者在服务端问题排查方面的一些经验,包括常见问题、排查流程、排查工具,结合实际项目中发生过的惨痛案例进行现身说法。 一 、问题排查 1、常见问题 Know Your Enemy:知己知彼,百战不殆。 日常遇到的大部分问题,大致可以归到如下几类: 逻辑缺陷:e.g. NPE、死循环、边界情况未覆盖。 性能瓶颈:e.g. 接口 RT 陡增、吞吐率上不去。 内存异常:e.g. GC 卡顿、频繁 FGC、内存泄露、OOM。 并发/分布式:e.g. 存在竞争条件、时钟不同步。 数据问题:e.g. 出现脏数据、序列化失败。 安全问题:e.g. DDoS 攻击、数据泄露。 环境故障:e.g. 宿主机宕机、网络不通、丢包。 操作失误:e.g. 配置推错、删库跑路(危险动作,请勿尝试..)。 上述分类可能不太完备和严谨,想传达的点是:你也可以积累一个这样的 checklist,当遇到问题百思不得其解时,耐心过一遍,也许很快就能对号入座。 2、排查流程

elasticsearch 性能测试

对着背影说爱祢 提交于 2020-08-15 16:00:51
最近花很大的经历来做性能测试,把结果整理到了ppt中,可能有个别地方不准,但是可以看看一个趋势。 主要分为两部分,一部分是写入elasticsearch性能,一部分是查询测试,elasticsearch的查询性能。 当然在elasticsearch1.3.0之后elasticsearch会提供benchmark来评估服务器性能实用情况。 硬件配置 主机 cpu mem disk system 192.168.32.243 POWER7 4228MHz*12 24G swap:1G IBMsas 600G Red Hat Enterprise Linux Server 6.4 192.168.32.244 POWER7 4228MHz*8 16G swap:1G IBMsas 600G Red Hat Enterprise Linux Server 6.4 192.168.32.245 POWER7 4228MHz*8 16G swap:1G IBMsas 600G Red Hat Enterprise Linux Server 6.4 测试样本说明 入库测试(bulk)、查询测试 1个服务~3个服务 3、6、9分片 1备份 2.4亿条记录 8g内存 jmeter压力测试工具(2.11) 入库测试 POST http://192.168.32.245:9200/performance

救火必备!问题排查与系统优化手册

点点圈 提交于 2020-08-14 01:36:27
云栖号资讯:【 点击查看更多行业资讯 】 在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来! 阿里妹导读:软件工程领域存在一个共识:维护代码所花费的时间要远多于写代码。而整个代码维护过程中,最惊心动魄与扣人心弦的部分,莫过于问题排查(Trouble-shooting)了。特别是那些需要 7x24 小时不间断维护在线业务的一线服务端程序员们,大大小小的问题排查线上救火早已成为家常便饭,一不小心可能就吃成了自助餐 —— 竖着进躺着出,吃不了也兜不住。本文分享作者在服务端问题排查方面的一些经验,包括常见问题、排查流程、排查工具,结合实际项目中发生过的惨痛案例进行现身说法。 一 问题排查 1 常见问题 Know Your Enemy:知己知彼,百战不殆。 日常遇到的大部分问题,大致可以归到如下几类: 逻辑缺陷:e.g. NPE、死循环、边界情况未覆盖。 性能瓶颈:e.g. 接口 RT 陡增、吞吐率上不去。 内存异常:e.g. GC 卡顿、频繁 FGC、内存泄露、OOM 并发/分布式:e.g. 存在竞争条件、时钟不同步。 数据问题:e.g. 出现脏数据、序列化失败。 安全问题:e.g. DDoS 攻击、数据泄露。 环境故障:e.g. 宿主机宕机、网络不通、丢包。 操作失误:e.g. 配置推错、删库跑路(危险动作,请勿尝试..)。 上述分类可能不太完备和严谨,想传达的点是

一份详尽的 Java 问题排查工具清单,值得收藏!

微笑、不失礼 提交于 2020-08-12 20:59:45
作者:红魔七号 https://yq.aliyun.com/articles/69520 前言 平时的工作中经常碰到很多疑难问题的处理,在解决问题的同时,有一些工具起到了相当大的作用,在此书写下来,一是作为笔记,可以让自己后续忘记了可快速翻阅,二是分享,希望看到此文的同学们可以拿出自己日常觉得帮助很大的工具,大家一起进步。 闲话不多说,开搞。 Linux命令类 tail 最常用的tail -f tail -300f shopbase.log #倒数300行并进入实时监听文件写入模式 grep grep forest f.txt #文件查找 grep forest f.txt cpf.txt #多文件查找 grep 'log' /home/admin -r -n #目录下查找所有符合关键字的文件 cat f.txt | grep -i shopbase grep 'shopbase' /home/admin -r -n --include *.{vm,java} #指定文件后缀 grep 'shopbase' /home/admin -r -n --exclude *.{vm,java} #反匹配 seq 10 | grep 5 -A 3 #上匹配 seq 10 | grep 5 -B 3 #下匹配 seq 10 | grep 5 -C 3 #上下匹配,平时用这个就妥了 cat f

阿里内部员工,排查Java问题常用的工具单

青春壹個敷衍的年華 提交于 2020-07-28 01:51:32
这是一篇来源于阿里内部技术论坛的文章,原文在阿里内部获得一致好评。作者已经把这篇文章开放到云栖社区中供外网访问。Hollis对文章内容做了部分删减,主要删减掉了其中只有阿里内部才能使用的工具的介绍,并删减掉部分只有通过阿里内网才能访问到的链接。 前言 平时的工作中经常碰到很多疑难问题的处理,在解决问题的同时,有一些工具起到了相当大的作用,在此书写下来,一是作为笔记,可以让自己后续忘记了可快速翻阅,二是分享,希望看到此文的同学们可以拿出自己日常觉得帮助很大的工具,大家一起进步。 闲话不多说,开搞。 Linux命令类 tail 最常用的tail -f tail -300f shopbase.log #倒数300行并进入实时监听文件写入模式 grep grep forest f.txt #文件查找 grep forest f.txt cpf.txt #多文件查找 grep 'log' /home/admin -r -n #目录下查找所有符合关键字的文件 cat f.txt | grep -i shopbase grep 'shopbase' /home/admin -r -n --include *.{vm,java} #指定文件后缀 grep 'shopbase' /home/admin -r -n --exclude *.{vm,java} #反匹配 seq 10 | grep 5

调试排错

青春壹個敷衍的年華 提交于 2020-04-23 08:11:52
本文原创,更多内容可以参考: Java 全栈知识体系 。如需转载请说明原处。 Java 在线问题排查主要分两篇:本文是第一篇,通过linux常用命令排查。@pdai 文本操作 文本查找 - grep grep常用命令: # 基本使用 grep yoursearchkeyword f.txt #文件查找 grep 'KeyWord otherKeyWord' f.txt cpf.txt #多文件查找, 含空格加引号 grep 'KeyWord' /home/admin -r -n #目录下查找所有符合关键字的文件 grep 'keyword' /home/admin -r -n -i # -i 忽略大小写 grep 'KeyWord' /home/admin -r -n --include *.{vm,java} #指定文件后缀 grep 'KeyWord' /home/admin -r -n --exclude *.{vm,java} #反匹配 # cat + grep cat f.txt | grep -i keyword # 查找所有keyword且不分大小写 cat f.txt | grep -c 'KeyWord' # 统计Keyword次数 # seq + grep seq 10 | grep 5 -A 3 #上匹配 seq 10 | grep 5 -B 3 #下匹配