Linux系统性能优化
通过下面的命令能了解到CPU是否出现性能瓶颈,再结合top、ps等命令进一步检查,即可定位到那些进程导致CPU负载过大
vmstat命令:查看CPU负载。
[blackfox@localhost ~]$ vmstat 2 3 # 间隔2s,打印3次
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
4 0 0 244824 932 497892 0 0 0 0 3 9 0 0 100 0 0
0 0 0 244824 932 497892 0 0 0 0 38 91 0 1 99 0 0
0 0 0 244824 932 497892 0 0 0 0 40 90 0 1 99 0 0
sar命令:统计CPU性能。
场景:在一个多CPU的系统中,CPU的整体使用率不高,但是系统应用响应缓慢。 结论:单线程只使用一个CPU,导致这个CPU占用率为100%,无法处理其他请求,而其他的CPU却闲置,这就导致了整体CPU使用率不高,而应用缓慢现象的发生。
# sar -P 0 3 5 # 对第一个CPU进行统计
[blackfox@localhost ~]$ sar -u 3 5 # 显示CPU利用率,间隔3s,显示5次
Linux 3.10.0-327.el7.x86_64 (localhost.localdomain) 01/22/2017 _x86_64_ (1 CPU) 07:35:52 AM CPU %user %nice %system %iowait %steal %idle
07:35:55 AM all 0.00 0.00 0.00 0.00 0.00 100.00
07:35:58 AM all 0.00 0.00 0.34 0.00 0.00 99.66
07:36:01 AM all 0.34 0.00 0.34 0.00 0.00 99.32
07:36:04 AM all 0.00 0.00 0.34 0.00 0.00 99.66
07:36:07 AM all 0.34 0.00 0.00 0.00 0.00 99.66
Average: all 0.14 0.00 0.20 0.00 0.00 99.66
iostat命令:查看CPU使用情况
[blackfox@localhost ~]$ iostat -c
Linux 3.10.0-327.el7.x86_64 (localhost.localdomain) 01/22/2017 _x86_64_ (1 CPU) avg-cpu: %user %nice %system %iowait %steal %idle
0.13 0.00 0.23 0.01 0.00 99.63
uptime命令:1、5、15分钟平均负载
经验:8核CPU,load average三个值长期大于8,说明负载很高,会影响系统性能。
[blackfox@localhost ~]$ uptime
07:54:27 up 17 days, 16:56, 1 user, load average: 0.00, 0.02, 0.05
free命令:查看内存使用情况
经验:可用内存/物理内存<20%,说明内存紧缺,需要增加内存
[blackfox@localhost ~]$ free -m # -m 以MB为单位,-s 时间段内不间断监控
total used free shared buff/cache available
Mem: 977 249 240 49 487 488
Swap: 2048 0 2048
vmstat命令:监控内存 sar -r命令:监控内存
sar -d命令:统计磁盘I/O状态
[blackfox@localhost ~]$ sar -d
Linux 3.10.0-327.el7.x86_64 (localhost.localdomain) 01/22/2017 _x86_64_ (1 CPU) 12:00:01 AM DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
12:10:01 AM dev8-0 0.10 0.00 0.89 9.03 0.00 3.97 1.10 0.01
12:20:01 AM dev8-0 0.05 0.00 0.35 7.56 0.00 64.63 61.70 0.28
12:30:01 AM dev8-0 0.02 0.00 0.16 7.08 0.01 254.77 128.
iostat -d命令:
[blackfox@localhost ~]$ iostat -dx /dev/sda3
Linux 3.10.0-327.el7.x86_64 (localhost.localdomain) 01/22/2017 _x86_64_ (1 CPU) Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await r_await w_await svctm %util
sda3 0.00 0.01 0.01 0.05 0.21 0.34 17.98 0.00 41.36 30.56 42.60 7.77 0.05
ping命令:检测网络连通
netstat命令:-i 查看网络接口信息,-r 检测系统路由表信息
sar -n命令:显示系统网络运行状态
[blackfox@localhost ~]$ sar -n DEV 2 3 # DEV:网络接口,EDEV:网络错误统计数据,SOCK:套接字信息,FULL:显示所有
Linux 3.10.0-327.el7.x86_64 (localhost.localdomain) 01/22/2017 _x86_64_ (1 CPU) 09:26:26 AM IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
09:26:28 AM eno16777736 0.00 0.00 0.00 0.00 0.00 0.00 0.00
09:26:28 AM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
traceroute命令:跟踪数据包传输路径
nslookup命令:判断DNS解析信息
watch命令:动态监控,默认2秒钟执行一次,执行结果更新在屏幕上
[blackfox@localhost ~]$ watch -n 3 -d free # -n 重复执行时间,-d 高亮显示变动 Every 3.0s: free Sun Jan 22 09:21:48 2017 total used free shared buff/cache available
Mem: 1001332 256792 245500 50948 499040 498864
Swap: 2098172 0 2098172
Linux系统性能优化的更多相关文章
- Linux系统性能优化思路和方法
#影响Linux性能的CPU.内存.磁盘.网络等因素分析1.系统硬件资源:CPU,多核与超线程消耗CPU的业务:动态WEB服务,Mail服务器2.内存:物理内存与swap的取舍,64操作系统消耗内存的 ...
- Linux文件系统性能优化 (转)
http://blog.chinaunix.net/uid-7530389-id-2050116.html 由于各种的I/O负载情形各异,Linux系统中文件系统的缺省配置一般来说都比较中庸,强调普遍 ...
- Linux文件系统性能优化
本文绝大部分是转载自CSDN刘爱贵专栏: http://blog.csdn.net/liuben/archive/2010/04/13/5482167.aspx另外根据参考文档增补了一部分内容. 由于 ...
- linux系统性能调优第一步——性能分析(vmstat)
linux系统性能调优第一步--性能分析(vmstat) 分类: LINUX 性能调优的第一步是性能分析,下面从性能分析着手进行一些介绍,尤其对linux性能分析工具vmstat的用法和实践进行详细介 ...
- Linux系统性能10条命令监控
Linux系统性能10条命令监控 概述 通过执行以下命令,可以在1分钟内对系统资源使用情况有个大致的了解. uptime dmesg | tail vmstat 1 mpstat -P ALL 1 p ...
- 通过ulimit改善linux系统性能(摘自IBM)
本文介绍了 ulimit 内键指令的主要功能以及用于改善系统性能的 ulimit 用法.通过这篇文章,读者不仅能够了解 ulimit 所起的作用.而且能够学会怎样更好地通过 ulimit 限制资源的使 ...
- Linux 性能优化之 IO 子系统 系列 图
http://blog.sina.com.cn/s/articlelist_1029388674_11_1.html Linux 性能优化之 IO 子系统(一) 本文介绍了对 Linux IO 子系统 ...
- linux性能优化常用命令
作为一名linux系统管理员,最主要的工作是优化系统配置,使应用在系统上以最优的状态运行,但是由于硬件问题.软件问题.网络环境等的复杂性 和多变性,导致对系统的优化变得异常复杂,如何定位性能问题出在哪 ...
- linux性能优化cpu 磁盘IO MEM
系统优化是一项复杂.繁琐.长期的工作,优化前需要监测.采集.测试.评估,优化后也需要测试.采集.评估.监测,而且是一个长期和持续的过程,不 是说现在优化了,测试了,以后就可以一劳永逸了,也不是说书本上 ...
随机推荐
- SLAM(一)----学习资料整理
转自:http://www.cnblogs.com/wenhust/ 书籍: 1.必读经典 Thrun S, Burgard W, Fox D. <Probabilistic robotics& ...
- 如何自定义 maven中的archetype
1.首先使用eclipse创建一个新的maven project,然后把配置好的一些公用的东西放到相应的目录下面 比如说会将一些常用的java代码存放到src/main/java目录下面: 会将一些通 ...
- 基于设备树的controller学习(2)
作者 彭东林 pengdonglin137@163.com 平台 TQ2440 Linux-4.10.17 概述 上一篇大概介绍了一下demo-controller的结构,下面结合驱动分析. 正文 ...
- 下载企业级证书打包的app 出现“正在下载”或“等待中”的图标并且无法删除的问题
下载企业级证书打包的app 出现“正在下载”或“等待中”的图标并且无法删除的问题: 原因分析:手机上的bundleid 与后台plist文件中的bundleid不一致导致的. 解决方案:用plist文 ...
- 清除和新建WordPress数据库
由于在本地已经安装过一次wordpress.所以假设第二次安装的时候 localhost/wp-admin/install.php 会显示你已经安装过了.所以须要把MySQL的数据库信息清除掉,或者另 ...
- insert into select 多个表
INSERT INTO user_auth(userid, auth_plane_id) select user.user_id AS userid, plane.id AS auth_plane_i ...
- 关于android studio 出现Error:Execution failed for task ':app:preDebugAndroidTestBuild'. 的解决办法
Error:Execution failed for task ':app:preDebugAndroidTestBuild'. > Conflict with dependency 2018年 ...
- SQLite中的事务操作
关于SQLite事务可以解决一些问题,比如你要插入两个数据,可以将两个数据作为同一个事务进行插入,这样如果第二个数据错误了,便自动执行回滚操作,第一个数据也不会插入成功,保证了数据的同步! 一.实际的 ...
- Oracle行列转换小结
目录结构如下:行转列列转行[一].行转列 1.1.初始测试数据 表结构:TEST_TB_GRADE Sql代码 create table TEST_TB_GRADE ( ID NUM ...
- java转义符和正则表达式转义符
举例来说,连续相同的3位数字的正则表达式的标准语法是: ([\d])\1{2} 但是如果在java代码中这么写,就会出现语法错误,如下: String regEx = "([\d])\1{2 ...