性能调优一直是运维工程师最重要的工作之一,如果您所在的生产环境中遇到了系统响应速度慢,硬盘IO吞吐量异常,数据处理速度低于预期值的情况,又或者如CPU、内存、硬盘、网络等系统资源长期处于耗尽的状态,那么这篇文章将着实的能帮助到你,如果没有也请先收藏起来。
1、hdparm查看硬度读取速度
命令:hdparm-t/dev/sda5
打印:Timingbuffered disk reads:254MBin3.01seconds=84.34MB/sec
说明:能够指定具体的哪块硬盘进行查询的哦!
2、iostat检测磁盘IO情况
格式:iostat[ -c | -d ][ -k ][ -t ][ -V ][ -x [ device ]][ interval ]
描述:iostat是I/Ostatistics(输入/输出统计)的缩写,iostat工具将对系统的磁盘操作活动进行监视。它的特点是汇报磁盘活动统计情况,同时也会汇报出CPU使用情况,同vmstat一样,iostat也有一个弱点,就是它不能对某个进程进行深入分析,仅对系统的整体情况进行分析,每1秒检测统计一次(共5次)
blk_read/s 每秒读取的数据块数
blk_wrtn/s 每秒写入的数据块数
blk_read 表示读取的所有数据块数
blk_wrtn 表示写入的所有数据块数
3、vmstat报告内存以及CPU状况
名称:报告虚拟内存的统计信息格式:vmstat[-n][延时[次数]]
R:运行和等待CPU时间片的进程数。
B:等待资源的进程数
Swpd:切换到内存交换区的内存大小
free:当前空闲的物理内存数量
si:由磁盘调入内存
so:由内存调入磁盘
bi:从块设备读入数据的总量
bo:写到块设备的数据总量
bi+bo超过1000代表硬盘的读写速度有问题
in:每秒设备中断数
cs:列表示每秒产生的上下文切换次数
us+sy>80%代表CPU资源不足
us:用户进程消耗的CPU时间百分比
sy:内核进程消耗的CPU时间百分比
id:CPU处在空闲状态的时间百分比
wa:IO等待所占用的时间百分比
runq-sz:内存中可以运行的进程数
plist-sz:系统中活跃的任务个数
4、sar检测CPU资源
任务计划 /etc/cron.d/sysstat
日志目录 /var/log/sa
查看方法 Sar –q –f /var/log/sa/sa10
5、lscpu显示CPU信息
dmesg显示出开机启动的信息
lscpu显示CPU信息
lscpu-p 显示CPU对应的节点数
getconfLONG_BIT 获知主机的位数
getconf-a 查看全部的参数/sys/class/dmi/id可以查看Bios的信息 bios_*
6、strace显示程序的调用
strace –fc elinks –dumphttp://localhost
7、调优硬盘优先写入/读取数据用
blockdev--getra /dev/sda256
预先读取需要写入的量,然后再处理写请求,读到的值将会是设置值的一半。设置读取到缓存中的数值越大.写入时就会因为数据量大而速度变慢。
8、将Ext3文件系统的日志功能独立
1、创建200M的/dev/sdb1格式化为ext32、dumpe
2、fs/dev/sdb1查看文件系统功能中包含的has_journal
3、Tune2fs–O^has_journal/dev/sdb1去掉默认原有的日志功能
4、再分一个200M的分区./dev/sdb2.日志卷的block必须等于/dev/sdb1Mke2fs–Ojournal_dev–b1024/dev/sdb2
5、将/dev/sdb2作为/dev/sdb1的日志卷.Tune2fs–j–Jdevice=/dev/sdb2/dev/sdb1
9、关闭记录文件系统atime
对于网站文件,频繁的修改atime是没有意义的,会影响性能mount–o remount,noatime DEVICE 即可
10、修改文件日志的提交时间
默认是5秒提交一次日志,修改更长时间可以提高性能,但容易丢失数据。mount–o remount,commit=15 DEVICE
11、硬盘的block保留数
dumpe2fs/dev/sda1tune2fs–m 10 /dev/sda1 保留block百分比tune2fs–r 保留block数保留的block过少,影响性能,保留的过多又浪费硬盘,默认是5%
12、更多的系统优化分享在文档之中
1、关注微信公众号:山河编程
2、点赞 + 评论:干货
3、回复:1024 领取下载链接