centos优化内容(持续更新)

性能调优

性能调优主要包含三个方面,包括硬件、操作系统、应用程序这三大块。

硬件(cpu、内存、磁盘、网卡)

操作系统(进程、文件系统、内核…)

应用程序(nginx、mysql…)

如何进行性能调优

通过性能分析工具,为性能调优提供有效的性能监控数据,常用的工具(命令)如下:

vmstat、 htop、iostat #检测cpu的瓶颈
free、vmstat、smem #检测内存瓶颈
iostat、iotop #检测磁盘I/O瓶颈
netstat、mtr、traceroute #检测网络连通性以及带宽瓶颈

cpu性能调优工具:
vmstat工具:

vmstat是Virtual Memory Statistics(虚拟内存统计)的缩写,可对操作系统的虚拟内存、进程、CPU活动进行监控。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SJQKEvPm-1676343425791)(C:\Users\1\AppData\Roaming\Typora\typora-user-images\image-20230214094944441.png)]

Procs(进程):r: 运行队列中进程数量 b: 等待IO的进程数量

Memory(内存):swpd: 使用虚拟内存大小 free: 可用内存大小 buff: 用作缓冲的内存大小 cache: 用作缓存的内存大小

Swap:si: 每秒从交换区写到内存的大小 so: 每秒写入交换区的内存大小

IO:(现在的Linux版本块的大小为1024bytes)bi: 每秒读取的块数 bo: 每秒写入的块数系统: in: 每秒中断数,包括时钟中断 cs: 每秒上下文切换数。

CPU(以百分比表示):us: 用户进程执行时间(user time) sy: 系统进程执行时间(system time) id: 空闲时间(包括IO等待时间),中央处理器的空闲时间 以百分比表示 wa: 等待IO时间。

内存评估工具:

free工具:free是指查看当前系统内存的使用情况,它显示系统中剩余及已用的物理内存和交换内存,以及共享内存和被核心使用的缓冲区。

每隔5秒打印一次,重复打印2次

老街头的猫。

total:是内存总大小
used:已经使用内存数,used = total - free - buffers - cache
free:未使用的空闲内存
shared:共享内存,大部分是tmpfs占用,tmpfs 就是内存实现的文件系统比如 /dev/shm
buff/cache: 缓冲、缓存区内存数,缓存在应用之中
available:真正剩余的可被程序应用的内存数

 -h      以人类可读的方式输出统计结果
 -t      使用该选项会多显示一行标题为Total的统计信息,该行统计的是(used、free、total的总和)此Total与total不同, 
 -o     禁止显示第二行的缓冲区调整值(-/+ buffers/cache) 
 -s      每个多少秒自动刷新结果
 -c      与-s配合使用,控制刷新结果次数
 -l       显示高低内存的统计详情
 -a      显示可用内存
磁盘评估工具:

iostat工具:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Y5FeAPrs-1676343425793)(C:\Users\1\AppData\Roaming\Typora\typora-user-images\image-20230214100257724.png)]

字段 说明
%user CPU处在用户模式下的时间百分比
%nice CPU处在带NICE值的用户模式下的时间百分比
%system CPU处在系统模式下的时间百分比
%iowait CPU等待输入输出完成时间的百分比
%steal 管理程序维护另一个虚拟处理器时,虚拟CPU的无意识等待时间百分比
%idle CPU空闲时间百分比

-c           显示cpu报告

-d          显示磁盘报告

-k           使用KB

-m          使用MB

-p            单个分区的统计信息

-t             时间戳输出

-x            扩展统计

-z            不显示空活动
网络性能评估工具

ping工具:

PING是一个网络工具,用来测试与网络主机俄连通性。PING通过发送ICMPECHO_REQUEST数据包到网络主机,并显示响应情况,程序会按时间和成功响应的次数估算丢失数据包率。

ping -dfnqrRv -c完成次数 -i间隔秒数 -I网络界面 -L前置载入 -p范本样式 -s数据包大小 -t存活数值主机名称或IP地址

-d:使用Socket的SO_DEBUG功能。

-f:极限检测,大量快速送网络封包给网络主机。

-n:只输出数值。

-q:不显示任何传送封包的信息,只显示最后结果。

-r:忽略普通Routing Table,直接将数据包送到远端主机上。通常是查看本机的网络接口是否有问题。

-R:记录路由过程。

-v:详细显示指令的执行过程。

-c:数目,指定要发送的IMCP数据包数量。

-i:秒数,设定发送网络数据包的间隔,默认一秒。

-I:指定网卡发送IMCP数据包。

-l:前置载入,指定发送IMCP数据包前,先行发出的数据包。

-p:范本样式,设置填满数据包的范本样式。

-s:字节数,指定发送数据字节数,预设值为56,加上8字节的ICMP头,一共是64字节ICMP数据包。

-t:存活数值,设置存活数值TTL大小。

系统性能综合监控工具

top工具:

top命令是Linux系统中常用的性能分析工具,可以实时地查看系统的运行情况,比如内存、CPU、负载以及各个进程的资源占用情况。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0HJg2wNI-1676343425794)(C:\Users\1\AppData\Roaming\Typora\typora-user-images\image-20230214101742712.png)]

第1行是任务队列信息,其参数如下:

05:43:27 表示当前时间
up 4:52 系统运行时间 格式为时:分
2 users 当前登录用户数
load average: 0.58, 0.41, 0.30 系统负载,即任务队列的平均长度。 三个数值分别为 1分钟、5分钟、15分钟前到现在的平均值。

第2、3行是任务队列信息,其参数如下:

159 total 进程总数
1 running 正在运行的进程数
158 sleeping 睡眠的进程数
0 stopped 停止的进程数
0 zombie 僵尸进程数
37.0 us 用户空间占用CPU百分比
3.7 sy 内核空间占用CPU百分比
0.0 ni 用户进程空间内改变过优先级的进程占用CPU百分比
59.3 id 空闲CPU百分比
0.0 wa 等待输入输出的CPU时间百分比
0.0 hi 硬中断(Hardware IRQ)占用CPU的百分比
0.0 si 软中断(Software Interrupts)占用CPU的百分比

第4、5行是任务队列信息,其参数如下:

KiB Mem: 1530752 total 物理内存总量
1481968 used 使用的物理内存总量
48784 free 空闲内存总量
70988 buffers(buff/cache) 用作内核缓存的内存量
KiB Swap: 3905532 total 交换区总量
267544 used 使用的交换区总量
3637988 free 空闲交换区总量
617312 cached Mem 缓冲的交换区总量。
3156100 avail Mem 代表可用于进程下一次分配的物理内存数量
内存调优机制(释放内存):
a)清理pagecache(页面缓存)
# echo 1 > /proc/sys/vm/drop_caches     或者 # sysctl -w vm.drop_caches=1

b)清理dentries(目录缓存)和inodes
# echo 2 > /proc/sys/vm/drop_caches     或者 # sysctl -w vm.drop_caches=2

c)清理pagecache、dentries和inodes
# echo 3 > /proc/sys/vm/drop_caches     
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值