Linux性能查询常用指令
| 类别 | 监控指令 | 描述 | 备注 |
|
内存 瓶颈 |
free | 查看内存使用 | |
|
cpu 瓶颈 |
top -Hp | 查看cpu使用最高的进程 | |
| vmstat 3(间隔时间) 100(监控次数) | 查看swap in/out定位性能瓶颈 | 推荐使用 | |
| ps -Lp 进程号 cu | 查看某个进程的cpu消耗排序 | ||
|
cat /proc/cpuinfo |grep 'processor'|wc -l |
查看cpu核数 | ||
| top |
查看cpu总体消耗, 包括分项消耗 如user,system,idle, nice等消耗 |
top 然后shift+h: 显示java线程, 然后shift+M: 按照内存 使用进行排序; shift+P: 按照cpu时间排序; shift+T: 按照cpu累计 使用时间排序 多核cpu, 按“1”进入top视图 |
|
|
网络 瓶颈 |
cat /var/log/messages | 查看内核日志,查看是否丢包 | |
| watch more /proc/net/dev |
用于定位丢包,错包情况, 以便看网络瓶颈 |
重点关注drop(包被丢弃) 和网络包传送的总量, 不要超过网络上限 |
|
| netstat -i | 查看网络错误 | ||
| ping ip | 测试网络性能 | ||
|
磁盘 瓶颈 |
iostat -x -k -d 1 | 磁盘的io读写情况 |
当看到I/O等待时间所 占CPU时间的比重 很高的时候, 首先要检查的就是机器 是否正在大量 使用交换空间, 同时关注iowait 占比cpu的消耗是否很大, 如果大说明磁盘 存在大的瓶颈, 同时关注await, 表示磁盘 的响应时间 以便小于5ms |
| iostat -x | 查看系统各个磁盘的读写情况 |
重点关注await 和iowait的cpu占比 |
|
| iotop | 查看哪个进程在大量读取IO |
一般先通过iostat 查看是否存在io瓶颈, 再定位哪个进程在 大量读取IO |
|
| df -hl | 查看磁盘剩余空间 | ||
| du -sh | 查看当前磁盘的使用空间 | ||
|
应用 瓶颈 |
ps -ef|grep java | 查看某个进程的id号 | |
| ps -ef|grep java|wc -l | 查看特定进程的数量 | ||
| netstat -tln|grep 8080 | 查看端口占用情况 | ||
| lsof -i:8080 | 查看端口属于哪个进程 | ||
|
cat ***.log | grep ***Exception | wc -l |
统计日志文件中包含特定异常数量 | ||
| jstack -l pid | 用于查看线程是否存在死锁 | ||
| grep -v ‘HTTP/1.1″ 200′ | 取出非200响应码的URL | ||
| ps -efL | grep [PID] | wc -l | 查看某个进程创建的线程数 | ||
| find / type f -name "*.log"|xargs grep "ERROR" |
统计所有的log文件中, 包含Error字符的行 |
这个在排查问题 过程中比较有用 |
|
| jstat -gc [pid] | 查看gc情况 | ||
| jstat -gcnew [pid] |
查看young区的内存使用情况, 包括MTT(最大交互次数就 被交换到old区), TT是目前已经交换的次数 |
||
| jstat -gcold | 查看old区的内存使用情况 | ||
|
jmap -J-d64 -dump:format=b, file=dump.bin PID |
dump出内存快照 |
-J-d64防止jmap导致 虚拟机crash(jdk6有bug) |
|
| XX:+HeapDumpOnOutOfMemeryError |
在java启动时加入, 当出现内存溢出时, 存储内存快照 |
||
| jmap -histo [pid] | 按照对象内存大小排序 | 注意会导致full gc | |
| gcore [pid] | 导出完成的内存快照 |
通常和jmap -permstat /opt/**/java gcore.bin 一起使用,将core dump 转换成heap dump |
|
|
-XX:HeapDumpPath=/home/logs -Xloggc:/home/log/gc.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps |
在Java启动参数中加入, 打印gc日志 |
||
|
-server -Xms4000m -Xmx4000m -Xmn1500m -Xss256k -XX:PermSize=340m -XX:MaxPermSize=340m -XX:+UseConcMarkSweepGC |
调整JVM堆大小 | xss是栈大小 |
Linux性能查询常用指令的更多相关文章
- Linux基本操作及常用指令
今天复习了下Linux的基本操作及常用指令,上学期大数据云计算课一直也在用linux系统还是比较熟悉的,并在centos6.7虚拟机上部署了前几天做的web项目,了解了Nginx的反向代理与负载均衡, ...
- linux性能优化常用命令
作为一名linux系统管理员,最主要的工作是优化系统配置,使应用在系统上以最优的状态运行,但是由于硬件问题.软件问题.网络环境等的复杂性 和多变性,导致对系统的优化变得异常复杂,如何定位性能问题出在哪 ...
- Linux基础及常用指令
1.Linux目录结构 bin(usr/bin,user/local/bin) #存放常用指令,如cp.cat.chown等 sbin(usr/sbin,user/local/sbin) #高权限指令 ...
- linux下svn常用指令
windows下的TortoiseSVN是资源管理器的一个插件,以覆盖图标表示文件状态,几乎所以命令都有图形界面支持,比较好用,这里就不多说.主要说说linux下svn的使用,因为linux下大部分的 ...
- [转载]linux下svn常用指令
一下内容转载于:http://blog.chinaunix.net/space.php?uid=22976768&do=blog&id=1640924.这个总结的很好~ windows ...
- Linux下svn常用指令【转】
转自:http://blog.csdn.net/myarrow/article/details/8110858 Windows下的TortoiseSVN是资源管理器的一个插件,以覆盖图标表示文件状态, ...
- linux 性能分析常用命令汇总
CPU性能分析工具: vmstatpssartimestracepstreetop Memory(内存)性能分析工具:vmstatstracetopipcsipcrmcat /proc/meminfo ...
- Linux下的常用指令汇总
内容提纲: 1.ubuntu安装 2.linux目录结构 3.apt.dpkg 4.date.cal.tzselect 5.修改密码.忘记密码 6.注销/重启/关机 7.cd pwd 8.-h --h ...
- Linux 100个常用指令
1.ls 列出目录内容. 文件属性: -:普通文件 d:目录文件 b:块设备 c:字符设备文件 l:符号连接文件 p:命令管道 s:套接字文件 文件权限: 9位数字,每3位一组 文件硬链接次数 文件所 ...
随机推荐
- 2018.02.12 noip模拟赛T2
二兵的赌注 Description游戏中,二兵要进入了一家奇怪的赌场.赌场中有n个庄家,每个庄家都可以猜大猜小,猜一次一元钱.每一次开彩前,你都可以到任意个庄家那里下赌注.如果开彩结果是大,你就可以得 ...
- [AC自动机][学习笔记]
用途 AC自动机适用于一类用多个子串在模板串中匹配的字符串问题. 也就是说先给出一个模板串,然后给出一些子串.要求有多少个子串在这个模板串中出现过. KMP与trie树 其实AC自动机就是KMP与tr ...
- webpack中babel配置 --- runtime-transform和babel-pollfill
webpack - babel配置 babel是一个javascript编译器,是前端开发中的一个利器.它突破了浏览器实现es标准的限制,使我们在开发中可以使用最新的javascript语法. 通过构 ...
- python--数据类型bytes
在Python3以后,字符串和bytes类型彻底分开了.字符串是以字符为单位进行处理的,bytes类型是以字节为单位处理的. bytes数据类型在所有的操作和使用甚至内置方法上和字符串数据类型基本一样 ...
- django基于restframework的CBV封装
一.models数据库映射 from django.db import models # Create your models here. class Book(models.Model): titl ...
- 梯度提升树(GBDT)原理小结(转载)
在集成学习值Adaboost算法原理和代码小结(转载)中,我们对Boosting家族的Adaboost算法做了总结,本文就对Boosting家族中另一个重要的算法梯度提升树(Gradient Boos ...
- 快速傅里叶变换(FFT)_转载
FFTFFT·Fast Fourier TransformationFast Fourier Transformation快速傅立叶变换 P3803 [模板]多项式乘法(FFT) 参考上文 首 ...
- (Prim算法)codeVs 1078 最小生成树
题目描述 Description 农民约翰被选为他们镇的镇长!他其中一个竞选承诺就是在镇上建立起互联网,并连接到所有的农场.当然,他需要你的帮助. 约翰已经给他的农场安排了一条高速的网络线路,他想把这 ...
- vue(基础二)_组件,过滤器,具名插槽
一.前言 主要包括: 1.组件(全局组件和局部组件) 2.父组件和子组件之间的通信(单层) 3.插槽和具名插槽 ...
- python3.x 和pip3的安装
python3.x 和pip3的安装 本人在学习python3的时候,视频中使用的是python3,在讲解到有些第三方库的时候,无法使用到pip3 install来安装所需的库.由于系统是centos ...