Linux系统性能的四个指标:CPU、内存、磁盘、网络_linux系统内存指标 linux cpu性能

Linux系统性能的四个指标:CPU、内存、磁盘、网络_linux系统内存指标[rootmaster79100 ~]# vmstat 3 5 procs ———–memory———- —swap– —–io

[root@master79100 ~]# vmstat 3 5

procs ————–内存———- –swap– —–io—- -system– ——cpu– —

r b swpd 空闲缓冲区高速缓存si so bi bo in cs us sy id wa st

1 6 0 70256 20 272432 0 0 3611 34 665 771 3 3 34 60 0

0 9 0 64700 20 276284 0 0 18383 17 2727 3192 0 2 7 91 0

1 8 0 72560 20 266804 0 0 20960 31 3370 3398 8 3 15 74 0

0 9 0 64128 20 275784 0 0 15827 8 3785 4706 1 3 25 70 0

0 8 0 63440 20 274000 0 0 16412 251 3608 4437 1 3 27 69 0

* **显示procs: 队列和等待状态**

**r**: 正在运行并等待CPU 时间片的进程数。如果该值长时间超过CPU 数量,则意味着CPU 即将耗尽。

**b**: 等待资源的进程数,例如I/O 等待和内存交换。

* **memory: 显示物理内存状态**

spwd: 切换到内存交换空间的内存量(以KB 为单位)。 spwd 不为0,si/so 为0。

free:当前可用物理内存量(以KB为单位)

buff:buffers 读取和写入块设备通常所需的高速缓存内存量。

缓存: 页缓存内存量通常缓存为文件系统,其中缓存经常访问的文件。更高的缓存值意味着更多的文件被缓存,更低的I/O Bi 意味着更高效的文件系统。

* **swap: 显示交换分区使用情况**

si:从磁盘传输到内存。这是进入内存交换空间的内存量。

so:从内存传输到磁盘。这是进入内存的内存交换空间的数量。

* **io:显示磁盘读写状态**

bi:(读磁盘)从块设备读取的数据总量(KB/秒)

bo:(写入磁盘)写入块设备的数据总量(KB/秒)

* **system: 采集间隔期间发生的中断数**

in: 在特定时间间隔内每秒观察到的设备中断数

cs: 每秒生成的上下文切换数

*CPU:

us: 用户进程消耗的CPU 时间百分比。如果用户进程长时间消耗CPU时间超过50%,我们的价值越高,你的程序或算法就越应该优化。

sy: 内核进程消耗的CPU时间百分比

id:CPU 空闲时间百分比

wa:I/O 等待占CPU 时间的百分比

**重要说明:procs中的r对应的值和CPU项中的us、sy、id值**

#### 2. 运行时间

[root@master79100 ~]# 正常运行时间

01:31:23 最多1:46, 2 个用户, 平均负载: 0.81, 0.54, 0.94

然后显示系统当前时间、运行了多长时间、登录系统的用户数以及1分钟/5分钟/15分钟内的平均负载。

**Load Average** :的3个值不能超过CPU的数量。如果这些值长期大于CPU的数量,则说明CPU负载非常高,会对CPU造成影响。系统性能。

#### 3.mpstat

[root@master79100 ~]# mpstat 3 5

Linux 3.10.0-693.el7.x86_64 (master79100) 05/03/2021 x86_64 (4 CPU)

01:35:29 AM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle

01:35:32 整个上午0.69 0.09 1.72 0.17 0.00 0.34 0.00 0.00 0.00 96.98

01:35:35 整个上午1.22 0.00 1.75 0.09 0.00 0.35 0.00 0.00 0.00 96.60

01:35:38 整个上午0.96 0.00 1.31 0.00 0.00 0.26 0.00 0.00 0.00 97.47

01:35:41 整个上午0.86 0.00 1.55 0.09 0.00 0.26 0.00 0.00 0.00 97.24

01:35:44 整个上午1.30 0.09 1.38 0.26 0.00 0.17 0.00 0.00 0.00 96.80

平均: 全部1.01 0.03 1.54 0.12 0.00 0.28 0.00 0.00 0.00 97.02

* CPU:处理器ID

* %usr:用户进程消耗CPU时间的百分比

* %nice:正常进程执行消耗的CPU时间百分比

* %sys:系统进程消耗CPU时间的百分比

* %iowait:I/O等待占用CPU时间的百分比

* %irq:用于中断时间的CPU时间百分比

* %soft:软中断占用CPU时间的百分比。

* %steal:在内存相对匮乏的环境中,分页强制在不同页面上进行窃取操作。

* %guest:运行虚拟处理器时CPU所花费时间点的百分比。

* %gnice:以nice优先级运行虚拟CPU所花费的时间百分比

* %idle:显示CPU空闲时间的百分比。

**如果%idle 较低,则可能没有足够的CPU。如果%iowait 较高,则I/O 子系统可能在当前负载下遇到问题。 **

### 2.内存性能调优工具

内存分析常用工具:free、smem

#### 1.免费

[root@master79100 ~]# 免费-g

可用的免费共享增益/缓存总数

mem: 0 0 0 0 0 0

交换: 0 0 0

[root@master79100 ~]# 免费

可用的免费共享增益/缓存总数

内存: 999720 589904 63688 13496 346128 140328

交换: 0 0 0

[root@master79100 ~]#

free命令的输出显示了系统的各种内存状态,包括物理内存和交换区。

物理内存分为已用内存(used)、空闲内存(free)、共享内存(shared)、系统缓存(buff/cache)、当前可用内存(available)。

总计=已用+ 可用+ 增益/缓存

#### 2. smem命令

smem是一个命令行内存使用报告工具,可以为用户提供有关Linux系统上内存使用情况的各种报告。

RSS(Resident Set Size):这是最常用的内存指标,可以用top命令查询,显示一个进程占用的物理内存量。然而,由于RSS 涉及进程之间的共享内存,因此将每个进程的RSS 值相加通常会超过系统总体内存消耗。

PSS(Proportional Set Size):所有使用共享库的程序均等地共享该共享库所占用的内存。显然,所有进程的PSS之和就是系统的内存使用量。通过平均共享内存的大小并将其分布到进程之间,它会更加准确。

USS(Unique Set Size):只计算进程占用的内存大小,不包括共享部分。

smem -k -s 美国

**-k参数用于显示内存单元

-s 表示排序

uss 表示USS 排序**

[root@master79100 ~]# smem -k -s uss

PID 用户命令交换USS PSS RSS

1789 路线/暂停0 40.0K 44.0K 68.0K

1802 路由/暂停0 40.0K 44.0K 68.0K

1785 路线/暂停0 44.0K 48.0K 72.0K

1788 根音/暂停0 44.0K 48.0K 72.0K

2063 路线/暂停0 60.0K 64.0K 88.0K

904根/sbin/rngd -f 0 132.0K 135.0K 240.0K

* **显示每个进程占用系统内存的百分比**

[root@master79100 ~]# smem -p -s uss

PID 用户命令交换USS PSS RSS

1789 路线/暂停不适用0.00% 0.00% 0.01%

1802 路线/暂停不适用0.00% 0.00% 0.01%

* **显示进程占用的内存大小**

[root@master79100 ~]# smem -k -P kube-controller-manager

PID 用户命令交换USS PSS RSS

5759 根Python /usr/bin/smem -k -P 0 5.2M 5.5M 6.3M

4472 根kube-controller-manager –a 0 42.0M 42.0M 42.0M

### 3.磁盘性能调优工具

磁盘性能评估常用工具:iotop、iotop等

#### 1.iotop

iotop 类型和top 命令。

iotop 和几个选项用于自定义输出结果。

-p: 指定进程

-u: 指定用户名

-P: 只显示进程,默认显示所有进程

-k: 以千字节为单位显示

-t: 表示在每行之前添加当前时间。

#### 2.iostat

我们整理了数百道**【运维技术栈面试题】**,成为您运维面试的得力助手。这将帮助您在面试时不慌不忙,并为高质量的面试做好准备。付费报价!

这些面试问题范围从Shell 和MySQL 到K8s 和其他云原生技术堆栈。这些不仅适合刚刚进入行业的运维初学者,也适合您想要进一步进步的运维朋友。换工作以获得更高的薪水。 **

![](https://img-blog.csdnimg.cn/img_convert/a6ba3ef90c3c8e806044d882f46738b1.png)

本次访谈集内容为

* **174 运维工程师面试题**

* **128道k8s面试题**

* **108 个shell 脚本面试问题**

* **200 个Linux 面试问题**

* **51 个Docker 面试问题**

* **35 个Jenkis 面试问题**

* **78 MongoDB 面试问题**

* **17 Ansible 面试问题**

* **60 个Dubbo 面试问题**

* **53 次卡夫卡访谈**

* **18道mysql面试题**

* **40 个nginx 面试题**

* **77 个Redis 面试问题**

* **28 守门员**

**总共1000多道面试题,内容丰富、信息丰富**

* **174 运维工程师面试题**

1.什么是运维?

2、运维人员在工作场所经常需要与操作人员进行交互。运营人员做什么工作?

3. 您目前有300台服务器,您如何管理它们?

4. 简要说明RAID0和Raid1raid5这两种工作模式的工作原理和特点。

5、LVS、Nginx、HAproxy有什么区别?

6. Squid、Varinsh、Nginx 有什么区别,你在工作中如何选择?

7.Tomcat和Resin有什么区别?

8.什么是中间件?

9、Tomcat中的8005、8009、8080这三个端口是什么意思?

10.什么是CDN?

11.什么是网站灰度发布?

12、请简单说明一下DNS域名解析的过程。

13.什么是RabbitMQ?

14.Keepalived如何工作?

15.描述LVS工作流程的三种模式。

16、mysql的innodb如何识别锁定问题以及mysql如何减少主从复制延迟?

,工作中你如何选择?

8.什么是中间件?

9、Tomcat中的8005、8009、8080这三个端口是什么意思?

10.什么是CDN?

11.什么是网站灰度发布?

12、请简单说明一下DNS域名解析的过程。

13.什么是RabbitMQ?

14.Keepalived如何工作?

15.描述LVS工作流程的三种模式。

16、mysql的innodb如何识别锁定问题以及mysql如何减少主从复制延迟?

17.如何重置mysql root密码?

#以上Linux系统性能的四个指标:CPU、内存、磁盘、网络_Linux系统内存指标相关内容摘自网络,仅供参考。相关信息请参见官方公告。

原创文章,作者:CSDN,如若转载,请注明出处:https://www.sudun.com/ask/92075.html

(0)
CSDN's avatarCSDN
上一篇 2024年6月24日 下午7:03
下一篇 2024年6月24日 下午7:03

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注