占用Linux 64位系统内存利用率分析(linux64内存)
linux 64位系统的内存使用率分析一直受到系统管理员的关注,无论是应用程序,服务器,大数据平台还是任何其他工作负荷,只有提高内存的使用率,才能节省成本、提高性能和稳定性。下面我们就看看在linux64位系统中如何分析内存的使用率!
首先,我们使用linux命令行查询内存使用状况。使用free -w命令,我们可以查询到当前系统的内存利用率与内存可用状态:
“`sh
free -w
total used free shared buffers cached
Mem: 819806 640445 179361 268 15486 180798
-/+ buffers/cache: 441986 377820
Swap: 0 0 0
从命令输出的结果中,可以清楚的看到内存的使用情况:总共有819806 KiB的内存;其中640445 KiB被使用;179361 KiB可用,而buffer/cache占用了215485 KiB,也就是有441986 KiB被应用占用,剩余的则为377804KiB。
其次,我们可以使用vmstat命令把最近几秒内的内存使用量一步步累计起来:```sh
vmstat 1procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa 1 0 0 435060 11932 152816 0 0 4 11 138 187 8 8 82 2
从vmstat的输出中,我们可以看到buffers占用11,932KiB的内存,cached使用了152,816 KiB的内存。因此,系统可用内存为435,060 KiB,占总内存的53.4%。
最后,我们也可以用top命令来查看当前系统的内存利用率:
“`sh
top -Sb n1
top – 11:34:35 up 213 days, 10 min, 1 user, load average: 0.40, 0.07, 0.05
Tasks: 307 total, 1 running, 119 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.8%us, 0.3%sy, 0.0%ni, 98.8%id, 0.1%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 819806k total, 643877k used, 175929k free, 15616k buffers
Swap: 0k total, 0k used, 0k free, 182868k cached
在top的输出中,第三行的mem total与used,就可以看出总共有811980k的内存,可用的175920KiB,而缓存的182868KiB是可以释放的,那么当前系统的真正的内存使用率就是643877/819806 = 78.7%!
分析linux64位系统的内存使用率从多个角度分析后可以得出:当前系统的内存使用率达到78.7%,如果想节省成本,提高系统性能,就需要不断优化,减少内存的使用量。