linux 服务器内存占用统计

当前内存占用率的计算,是根据top命令显示的Mem.used除以Mem.total得到。

  1. Mem.total:表示总物理内存。
  2. Mem.used: 表示内核控制的内存数,除了应用程序使用的内存外,还包括缓存。

Mem.used =  应用程序使用内存  + Mem.buffers + Mem.cached

Linux的内存管理机制,会尽可能缓存一些数据,就算程序本身已经释放相关内存,Buffers/cached也不会立即释放。

但在需要的时候Buffers/cached都是可以被丢弃并快速回收的。

  1. 反过来,Mem.free:   表示还未纳入内核管理范围的内存(完全未被使用)。

有时候看上去可用内存很少,但实际还是比较充足的。从应用程序角度,buffers和cached也属于可用。

实际可用内存 = Mem.free + Mem.buffers + Mem.cached.

所以, 由于buffeds/cached机制,服务器在运行一段时间以后uesd内存的值越来越大。

基于此计算的内存占用率结果比实际偏高,而且还可能偏高很多。

举例,在服务器用vi打开文件,此时文件数据纳入缓存,内存占用随之增加。但这并不是应用程序占用的内存。

linux139:/srv # free -m
             total       used       free     shared    buffers     cached
Mem:         19953       1133      18820          0         20         86
-/+ buffers/cache:       1025      18927
Swap:        16384          0      16384
linux139:/srv # vim test.log 
linux139:/srv # ll -sh test.log 
30M -rw------- 1 root root 30M Mar 29 11:24 test.log
linux139:/srv # free -m
             total       used       free     shared    buffers     cached
Mem:         19953       1162      18790          0         20        116
-/+ buffers/cache:       1025      18928
Swap:        16384          0      16384
lin # top
top - 11:25:34 up  3:49,  3 users,  load average: 0.21, 0.11, 0.09
Tasks: 128 total,   1 running, 127 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.1%us,  0.1%sy,  0.0%ni, 99.8%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:     19953M total,     1163M used,    18790M free,       20M buffers
Swap:    16384M total,        0M used,    16384M free,      116M cached

 

手工清理缓存方式:

sync ;echo 3 > /proc/sys/vm/drop_caches

 

转载于:https://www.cnblogs.com/eaglediao/p/6641811.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在 Linux 中可以使用以下命令查看 CPU 和内存的使用情况: 1. `top` - 实时显示系统资源使用情况。 2. `free` - 显示系统内存使用情况。 3. `htop` - 功能比 top 更强大的命令,可以更直观地显示系统资源使用情况。 4. `vmstat` - 显示系统内存、CPU、磁盘和网络使用情况的统计数据。 ### 回答2: Linux系统是一款常用的服务器操作系统,因其稳定性和扩展性优越,被广泛使用。在服务器运维和管理过程中,查看服务器的CPU和内存使用情况十分关键,因为这有助于优化服务器的性能和保障其稳定运行。 1. 查看CPU使用情况 a. 查看系统核心:在终端上输入cat/proc/cpuinfo命令并回车,该命令会输出包含CPU信息的文本文件。其中包含了处理器逻辑处理单元、型号、主频等信息。 b. 查看CPU使用情况:在终端上输入top命令并回车,该命令会输出CPU使用情况的实时监控信息。在输出信息中,我们可以看到系统当前运行的进程及其CPU占用情况。如果想要退出top命令,可以按下q键。 c. 查看CPU架构:输入uname-a命令并回车,该命令会输出CPU的架构信息。 2. 查看内存使用情况 a. 查看系统内存信息:在终端上输入free命令并回车,该命令会输出Linux系统的内存使用情况,包括总内存、已用内存和剩余内存等。 b. 查看进程占用内存:在终端上输入top命令并回车,进入进程实时监控页面。在这个页面中,我们可以看到每个进程占用内存的情况。按下Shift+m键可以根据内存占用情况对进程进行排序,便于查找内存占用量较大的进程。 c. 查看内存缓存:在终端上输入cat/proc/meminfo命令并回车,该命令会输出系统内存内存缓存的详细信息。 总之,Linux系统提供了许多工具帮助我们查看服务器CPU和内存使用情况。我们可以根据具体的需求选择不同的工具来获取所需的信息。而对于运维人员来说,及时查看服务器CPU和内存使用情况十分重要,因为这有助于优化服务器的性能和提升运行效率。 ### 回答3: Linux查看服务器CPU和内存的方法有很多,具体可以分为以下几种: 1. 使用top命令 top命令是Linux中用来查看系统资源使用情况的命令,可以用来查看当前CPU、内存、进程等的使用情况。使用top命令可以实时查看系统CPU和内存的使用情况。 2. 使用vmstat命令 vmstat命令是Linux中用来查看系统资源使用情况的命令之一,可以用来查看当前CPU、内存、磁盘等的使用情况。 使用vmstat命令可以实时查看系统CPU和内存的使用情况,并以统计数据的方式显示。 3. 使用sar命令 sar命令也是Linux中用来查看系统资源使用情况的命令之一,可以用来查看CPU、内存、磁盘等的使用情况。 使用sar命令可以实时查看系统CPU和内存的使用情况,并以日志文件的形式保存,以便后续分析。 4. 使用free命令 free命令是Linux中用来查看系统内存使用情况的命令,可以用来查看当前内存的总量、可用量和已使用量等信息。使用free命令可以实时查看系统内存的使用情况。 总之,Linux系统中有很多工具可以用来查看服务器的CPU和内存使用情况,选择合适的工具可以帮助我们更好地了解服务器的性能状况,并及时优化和维护。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值