linux+swp最大分区,Linux性能分析之一(Vmstat)

前言

对于我们的服务器为什么要性能优化,这个不用多数,大家都懂的!在遇到性能问题的时候我们需要定位是哪里出现了性能瓶颈。下面让我们聊一聊解决瓶颈的思路。

一、影响服务器性能的因素CPU(cpu的运行速度直接影响服务器的性能)

硬盘(IO的读写速度是最直接的影响)

内存(尽量不要使用SWAP)

网卡(网卡的吞吐量)

二、性能分析的步骤

1、服务器需要长期的监控,采集服务器性能指标(可以使用zabbix)

2、遇到性能瓶颈的时候,我们需要使用一些工具来定位问题(Vmstat,top,iostat 等)

三、可能会造成性能瓶颈的因素

1、服务器硬件配置

2、程序设计缺陷(曾经遇到过死循环,CPU利用率增高,拖慢服务器)内存泄露。

3、物理内存不够时使用了交换分区,造成CPU和磁盘IO的开销

4、数据库查询sql没有走索引,或者索引建立的不合理

四、vmstat命令详解1

2

3

4

5

6

7[root@tshare365 ~]# vmstat   1 3

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----

r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st

0  0      0 776188  80316  39656    0    0    13     1   13   10  0  0 100  0  0

0  0      0 776148  80316  39676    0    0     0     0   17   10  0  0 100  0  0

0  0      0 776172  80316  39676    0    0     0     0   17   12  0  0 100  0  0

[root@tshare365 ~]#

注释:

vmstat 1 3 表示每隔一秒采集一次数据,共采集三次

procs:

r:表示正在运行的进程数和等待cpu时间片的进程数(如果r的值大于我们CPU的核心数,表示CPU不足,此时我们需要增加CPU)

b:等待运行的进程数(如果这个值较大,我们需要查看服务的内存使用情况,看看是否使用了交换分区,还用磁盘的IO情况)

memory:

swpd:虚拟内存使用大小,这个值最理想状态是为0,表示我们的内存足够

free:表示当前空闲的物理内存数量(以KB为单位)

buff:表示buffers cache的内存数量,一般对块设备的读写才需要缓冲

cache:表示page cached的内存数量,一般作文件系统的cached,频繁访问的文件都会被cached。如果cached值较大,就说明cached文件数较多。如果此时IO中的bi比较小,就说明文件系统效率比较好

swap:

si:每秒从交换分区写入内存的大小,也就是从硬盘写入内存

so:如si恰好相反,表示从内存写入交换分区的大小

swap 中的两个值,最理想的状态都是0,表示内存足够大,没有使用交换分区

io:

bi:每秒读取的块数

bo:每秒写入的块数

system:

in:每秒中断数包括时钟中断

cs:每秒上下文切换数

cpu:

us:用户空间消耗的CPU时间(如果这个值一直较高,就应该优化程序了)

sy:内核空间消耗CPU的时间 (这个值较高,说明系统不正常,需要查找原因)

id:CPU空闲状态的时间  (这个值越高,说明CPU跑的很欢)

wa:IO等待所占用的CPU时间(如果这个值较高,有可能是磁盘遇到了瓶颈)

st:虚拟机占用时间(很少关注)

vmstat到此就介绍完了,在vmstat中我们最关心的的指标也就是proc中的r,b,这也是许多面试官最喜欢问的问题,希望大家都能记住!vmstat在平时的工作中还是经常用到的,希望大家用心去体会各个参数的意义!

本博客至此结束,如有什么问题,请留言!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值