Linux性能优化之内存性能评估工具| 学习笔记

简介: 快速学习Linux性能优化之内存性能评估工具。

开发者学堂课程【线上Linux服务器优化经验Linux性能优化之内存性能评估工具】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/382/detail/4806


Linux性能优化之内存性能评估工具

 

内容介绍:

一、内存性能评估之free命令

二、内存性能评估之Sat/pidstat命令

三、磁盘性能评估

 

一、内存性能评估之free命令

(1)主要功能:

监控Linux系统内存使用状况

(2)使用方法:

①不加参数,直接输出  free

image.png

②free  -m

image.png

(3)输出字段分析:

①直接输出

按列分析:

total:总内存量

used:已使用内存量

free:空闲/剩余内存量

shared:共享内存量

buffers:对文件属性(大小、访问时间、修改时间、权限等)缓存量
cached:所有文件实际内容的缓存量

按行分析:

Mem:物理内存

-/+ buffers/cache:目前系统完全可用的物理内存大小

Mem 的 free 值+buffers 值+cached 值=-/+ buffers/cache 的 free 值

Linux下内存划分为5部分,即used、free、shared、buffers及cached,与windows 的内存管理机制有很大差别。Linux 作为一个服务器,其管理原则是最大使用内存原则,即任何访问过的文件均会被缓存下来,文件关闭后仍不会被释放,目的是更快读取文件,提高读取效率,而 windows 系统则会将这部分物理内存会被释放。但系统物理内存并不会超负荷,因为 Linux 系统会按照最近访问与最常访问原则释放一定量的 cached 内存。因此,判断内存是否充足,应将 free 值与cached 值相加作为参考值,或者直接看-/+ buffers/cache 的free值。

Swap:交换分区,或扩展内存

不论物理内存大小如何,都建议要设置Swap值。若物理内存足够大,可以将Swap设置到很小的数值,可以提高系统的性能,避免一些不必要的问题。Swap的判断方式比较单一,若其Used值较大,则说明内存不足。

②free  -m

分析方式相同,只是评估的单位不同,当前方式的单位为M(兆)。

 

二、内存性能评估之Sat/pidstat命令

(1)主要功能:

监控全部或制定进程占用系统资源的情况,如 cpu、内存、设备 IO。

(2)使用方法:

①全部进程占用内存状态:sar  -r  3  5    表示3秒输出一次,一共输出5次

image.png

②某一单一进程占用内存状态:首先之间输入pidstat,得到输出结果

image.png

再输入pidstat -r -p 28443 3 表示统计PID为28443的进程内存占用情况,每3秒输出一次,不终止。

image.png

③获取cpu状态:-u。

pidstat -u -p 28443 3表示每3秒统计一次PID为28443的进程cpu使用情况

image.png

④获取磁盘状态:-d。

(3)输出字段分析:

①全部进程

kbmenfree:空闲内存大小,单位kb

kbmenused:总内存大小,单位kb

%memused:使用内存占比

kbbuffers:对文件属性(大小、访问时间、修改时间、权限等)缓存量,单位kb

kbcached:所有文件实际内容的缓存量,单位kb

kbcommit:应用程序当前使用内存的大小,单位kb

%kbcommit:应用程序当前使用内存所占的百分比

其优点在于统计结果中包含一个测量值的平均值,能综合分析系统内存的使用情况。

②某一单一进程:

VSZ:该进程在该段时间内虚拟内存占用的大小

RSS:该进程在该段时间内物理内存占用的大小

%MEM:该进程占用的总物理内存的占比

 

三、磁盘性能评估

(1)所有进程磁盘使用状态:iostat -d组合

iostat -d 2 3表示每2秒统计一次磁盘的使用状态,一共统计3次

image.png

输出字段分析(第一次输出值是统计从系统启动开始磁盘使用状态,故数值较大,因此该次输出值可忽略):

tps:对 IO 评判最直观的标准

Blk_read/s:每秒读取的块的数目

Blk_wrtn/s:每秒写入的块的数目

Blk_read:统计频次内读取的块的数目

Blk_wrtn:统计频次内写入的块的数目

(2)某一进程中磁盘使用状态:pidstat -d -p

pidstat -d -p 34777 3表示每3秒统计一次PID为34777的进程磁盘的占用情况(若访问量为0,则无输出值)

image.png

输出字段分析:

kB_rd/s:该进程在该段时间内的读取速率

kB_wr/s:该进程在该段时间内的写入速率

 

(3)某一进程中磁盘使用状态:sar -d -p

sar -d -p 1 3表示每3秒统计一次PID为1的进程磁盘的占用情况,不终止

image.png

输出字段(仅显示部分)分析(相较于 pidstat ,输出结果更为全面):

tps:对 IO 评判最直观的标准

rd_sec/s:读取速度

wr_sec/s:写入速度

await:等待值

结果显示在该统计区间内,sda 盘存在写入进程,等待值为0.50

相关文章
|
2月前
|
安全 Linux Shell
四、Linux核心工具:Vim, 文件链接与SSH
要想在Linux世界里游刃有余,光会“走路”还不够,还得配上几样“高级装备”。首先是Vim编辑器,它像一把瑞士军刀,让你能在命令行里高效地修改文件。然后要懂“软硬链接”,软链接像个快捷方式,硬链接则是给文件起了个别名。最后,SSH是你的“传送门”,不仅能让你安全地远程登录服务器,还能用scp轻松传输文件,设置好密钥更能实现免-密登录,极大提升效率。
282 3
|
2月前
|
安全 Linux iOS开发
SonarQube Server 2025 Release 5 (macOS, Linux, Windows) - 代码质量、安全与静态分析工具
SonarQube Server 2025 Release 5 (macOS, Linux, Windows) - 代码质量、安全与静态分析工具
138 0
SonarQube Server 2025 Release 5 (macOS, Linux, Windows) - 代码质量、安全与静态分析工具
|
2月前
|
Unix Linux 程序员
Linux文本搜索工具grep命令使用指南
以上就是对Linux环境下强大工具 `grep` 的基础到进阶功能介绍。它不仅能够执行简单文字查询任务还能够处理复杂文字处理任务,并且支持强大而灵活地正则表达规范来增加查询精度与效率。无论您是程序员、数据分析师还是系统管理员,在日常工作中熟练运用该命令都将极大提升您处理和分析数据效率。
159 16
|
2月前
|
消息中间件 存储 关系型数据库
千亿消息“过眼云烟”?Kafka把硬盘当内存用的性能魔法,全靠这一手!
Apache Kafka 是由 LinkedIn 开发并捐赠给 Apache 基金会的分布式消息队列系统,具备高吞吐、可扩展和容错能力。其核心设计围绕主题、分区、分段和偏移量展开,通过顺序写入磁盘和 Page Cache 提升性能,广泛应用于大数据实时处理场景。
101 0
|
3月前
|
数据采集 编解码 运维
一文讲完说懂 WowKey -- WowKey 是一款 Linux 类设备的命令行(CLT)运维工具
WowKey 是一款面向 Linux 类设备的命令行运维工具,支持自动登录、批量执行及标准化维护,适用于企业、团队或个人管理多台设备,显著提升运维效率与质量。
|
缓存 监控 Linux
linux性能监控:IO性能监控命令之sar命令
linux性能监控:IO性能监控命令之sar命令
1740 1
linux性能监控:IO性能监控命令之sar命令
|
监控 Linux
linux性能监控:内存监控命令之free命令
linux性能监控:内存监控命令之free命令
340 1
linux性能监控:内存监控命令之free命令
|
监控 Linux
linux性能监控:CPU监控命令之nmon命令
linux性能监控:CPU监控命令之nmon命令
1218 1
linux性能监控:CPU监控命令之nmon命令
|
缓存 监控 算法
linux性能监控:CPU监控命令之top命令
linux性能监控:CPU监控命令之top命令
776 1
linux性能监控:CPU监控命令之top命令
|
监控 Ubuntu Linux
linux性能监控:IO性能监控命令之iotop命令
linux性能监控:IO性能监控命令之iotop命令
1977 0
linux性能监控:IO性能监控命令之iotop命令
下一篇
开通oss服务