0
点赞
收藏
分享

微信扫一扫

[docker]一、前提系统性能监控

杏花疏影1 2022-04-02 阅读 59
docker

1、cpu

查看cpu

[root@fttsaxf ~]# top
top - 17:48:11 up 16 min,  2 users,  load average: 0.00, 0.01, 0.05
Tasks: 108 total,   2 running, 106 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.2 us,  0.2 sy,  0.0 ni, 99.7 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  1863032 total,  1533444 free,   195136 used,   134452 buff/cache
KiB Swap:  2097148 total,  2097148 free,        0 used.  1521024 avail Mem 

   PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                              
  1584 root      20   0       0      0      0 S   0.3  0.0   0:00.04 kworker/1:0                          
     1 root      20   0   43420   3844   2572 S   0.0  0.2   0:01.57 systemd                              
     2 root      20   0       0      0      0 S   0.0  0.0   0:00.01 kthreadd                             
     4 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 kworker/0:0H                         
     6 root      20   0       0      0      0 S   0.0  0.0   0:00.13 ksoftirqd/0                          
     7 root      rt   0       0      0      0 S   0.0  0.0   0:00.04 migration/0                          
     8 root      20   0       0      0      0 S   0.0  0.0   0:00.00 rcu_bh  

# load average: cpu的平均负载率,1分钟,5分钟,15分钟的ready和running队列里的进程的平均数量。每时每刻超过1个进程,就说明cpu很忙

这里边这个排序,默认情况下是根据CPU排序的。 

  • 若要按照内存排序(%MEM)按"M";
  • 若是想要根据CPU排序,按"P";
  • 看有几个cpu,按数字1

就绪队列或者阻塞队列中的进程都是"sleeping"的;stopped,是挂起的进程;zombie,是僵尸进程(子进程退出的时候,父进程没有回收它的空间,导致“死而不化”,死掉了还是占着空间。解决方法,kill它的父进程)。

%Cpu(s):  0.2 us,  0.2 sy,  0.0 ni, 99.7 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
"us",是用户进程所消耗的cpu;"sy",是系统内存消耗的cpu;"id",是空闲的。一般只看这三个就行了

1.1、内存

 系统开机之后,分两块空间,user space和kernel space;代码一般存放再磁盘(disk)中,当进程运行起来之后,把代码加载到内存中来,在内存中开辟一块空间存放。

[root@fttsaxf ~]# free -h  # 以人类可以识别的大小显示
              total        used        free      shared  buff/cache   available
Mem:           1.8G        190M        1.5G        9.5M        131M        1.5G
Swap:          2.0G          0B        2.0G
[root@fttsaxf ~]# free -m  # 所有单位都是兆
              total        used        free      shared  buff/cache   available
Mem:           1819         190        1497           9         131        1485
Swap:          2047           0        2047
  • 上面这"Mem"这一行代表着物理内存,
  • "Swap",交换分区,从磁盘中拿出一块空间来做内存使用,一般不要使用
  • "total",是总共有多少内存
  • used,使用了多少内存
  • free,剩余(空闲)多少内存可以使用
  • shared,共享内存占用的空间
  • buff/cache。buffer,从内存往磁盘写数据的时候的缓存(memory data write to disk);cache,从磁盘读数据到内存的缓存(read data from disk to memory)。它们都能起到加快读写速度,提高效率的作用。因为内存的数据速度快,磁盘的数据慢很多。减少了IO次数,即读写磁盘的速度。

例如这里有一个app,我们要写到磁盘里边去。首先会把数据写到buffer里边,buffer满了,kernel的代码就会操纵buffer,把buffer刷到disk里边;读数据的时候,先会读到cache中,要用的时候到cache里边去拿

  • available,等于free + buffer/cache里还没有使用的缓存空间。后面的程序还可以使用多少空间
举报

相关推荐

0 条评论