暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

DM8达梦数据库操作系统内存性能诊断

原创 达梦 2021-01-31
329

​Linux 内核给每一个进程都提供了一个独立的虚拟地址空间,并且这个地址空间是连续的。这样,进程就可以很方便地访问内存,也就是虚拟内存。本文介绍常见内存性能分析命令,以及内存性能分析方法。

Linux 内存性能分析常用命令

  • top

top 命令经常用来监控 Linux 的系统状况,比如 CPU、内存的使用情况,如下图所示:

top命令

图中第四行显示为系统内存状态
total: 物理内存总量
used: 使用中的内存总量
free: 空闲内存总量
buffers: 缓存的内存量
图中第五行显示 swap 交换分区
total: 交换区总量
used: 使用的交换区总量
free: 空闲交换区总量
cached: 缓冲的交换区总量
  • vmstat

vmstat 是 Virtual Meomory Statistics(虚拟内存统计)的缩写,可对操作系统的虚拟内存、进程、IO 读写、CPU 活动等进行监视,如下图所示:

vmstat命令

memory 部分
swpd:切换到内存交换区的内存大小;
free:当前空闲的物理内存;
buff:baffers cached内存大小;
swap:
si:内存进入内存交换区的内存大小;
so:由内存进入磁盘,也就是由内存交换区进入内存的内存大小;

Linux 内存性能诊断

这里我们使用 vmstat 来进行分析,如下所示:

[root@dm8 ~]# vmstat 1 10
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 2273472 32968 701004 0 0 458 128 165 154 0 2 98 0 0
0 0 0 2273748 32968 701004 0 0 0 36 248 253 0 1 99 0 0
0 0 0 2273812 32976 701004 0 0 0 128 673 530 0 2 98 0 0
1 0 0 2274360 32976 701020 0 0 0 4 594 439 0 2 98 0 0
0 0 0 2274728 32976 701024 0 0 0 12 279 256 0 1 99 0 0
0 0 0 2274684 32976 701024 0 0 0 4 106 191 0 0 100 0 0
0 0 0 2274684 32976 701024 0 0 0 8 156 203 0 1 100 0 0
0 0 0 2273832 32984 701016 0 0 0 80 649 531 1 2 98 0 0
0 0 0 2274052 32984 701056 0 0 0 8 491 431 0 1 98 0 0
0 0 0 2274336 32984 701060 0 0 0 4 107 192 0 0 100 0 0
  • MEMORY

    • swap:切换到交换内存上的内存(默认以 KB 为单位)。如果 SWAP 的值不为 0,或者还比较大,比如超过 100 MB 了,但是 SI 和 SO 的值长期为 0,这种情况我们可以不用担心,不会影响系统性能。
    • free:空闲的物理内存。
    • buff:作为 buffer cache 的内存,对块设备的读写进行缓冲。
    • cache:作为 page cache 的内存,文件系统的 cache 如果 cache 的值大的时候,说明 cache 处的文件数多,如果频繁访问到的文件都能被 cache,那么磁盘的读 IO bi 会非常小。
  • SWAP

    • si:交换内存使用,由磁盘调入内存。
    • so:交换内存使用,由内存调入磁盘。
注意

内存够用的时候,这 2 个值都是 0,如果这 2 个值长期大于 0 时,系统性能会受到影响,磁盘 IO 和 CPU 资源都会被消耗。

空闲内存 (FREE) 很少的或接近于 0 时,并不能认定为内存不够用,Linux 是抢占内存的 OS,还要结合 si 和 so;如果 free 很少,si 和 so 也很少(大多时候是 0),那么不用担心,系统性能这时不会受到影响的。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论