系统性能监控 -- >system performance monitor
系统性能监控主要看那些指标?
* 查看linux系统性能(c语言构造)-->cpu,磁盘,内存,网络,进程,服务,
linux里面的数据源头来源于内核 /porc -->linux下内核数据
系统性能监控命令 --top ,htop
# top不需要下载 yum install htop -y htop ->top命令改良版本htop: 可以进行排序,更加人性化
tasks:任务
running--正在运行
sleeping--就绪
zombie--僵尸进程-- >进程被杀死的,但是操作系统没有被回收,pid号仍然存在。 -->pid是进程的唯一标识
%cpu:
us:表示用户态消耗,用户进程所消耗的cpu时间
sy:表示system 内核态的进程所消耗cpu的时间
ni,niced:运行已调整优先级的用户进程的CPU时间
id:表示99.5空闲
wa:IO-wait -->io等待所消耗CPU时间
hi: 硬件花费所需时间 hardware interrupts -->硬中断 处理硬件中断
si:软件花费所需时间 software interrupts -->软中断 软件
st:time stone from this vm by thr hypervisor 虚拟化进程 所消耗的CPU时间
Mem:物理内存使用情况 --> buffer,cache
缓冲区(Buffer): 内存 -->buffer -->磁盘 --> write data to disk
cache(缓存): disk-->cache -->内存 -->read data from disk to memory
Buffer就是在内存中预留指定大小的存储空间用来对输入/输出(I/O)的数据作临时存储,这部分预留的内存空间就叫做缓冲区:
使用缓冲区有这么两个好处: 1、减少实际的物理读写次数 2、缓冲区在创建时就被分配内存,这块内存区域一直被重用,可以减少动态分配和回收内存的次
swap分区(虚拟内存使用):是从磁盘里面拿出一块空间当做内存使用,当物理内存不足时将不活跃的数据挪到其中
[root@localhost ~]# cat /proc/sys/vm/swappiness 30 echo 0 >/proc/sys/vm/swappiness -->临时修改交换分区大小 vim /etc/sysctl.conf -->永久修改交换分区大小 sysctl -p 刷新服务PR:进程优先级 PR =PR+nice值(越大越好) ---> 进程优先级默认是20 -->pr值越小优先级越高
VIRT:虚拟内存的使用 ---->linux里的虚拟内存=真实内存+虚拟内存
RES:消耗了多少物理内存(真实的内存)
SHR:有多少共享内存
cpu>内存>磁盘
信号signal :进程与进程之间的通信方式
interrupt中断
1) SIGHUP给进程的子进程发送hup信号,所有收到hup信号的进程,都会被内核杀死
2)
[root@wsy ~]# free -m total used free shared buff/cache available Mem: 3789 280 204 0 3303 3225 Swap: 0 0 0df 命令的功能是用来检查linux服务器的文件系统的磁盘空间占用情况。
-a, --all include dummy file systems
[root@wsy ~]# df -a Filesystem 1K-blocks Used Available Use% Mounted on sysfs 0 0 0 - /sys proc -->消耗的是内存空间 0 0 0 - /proc devtmpfs 1929756 0 1929756 0% /dev securityfs 0 0 0 - /sys/kernel/security tmpfs 1940120 0 1940120 0% /dev/shm devpts 0 0 0 - /dev/pts tmpfs 1940120 756 1939364 1% /run tmpfs 1940120 0 1940120 0% /sys/fs/cgroup cgroup 0 0 0 - /sys/fs/cgroup/systemd pstore 0 0 0 - /sys/fs/pstore cgroup 0 0 0 - /sys/fs/cgroup/hugetlb cgroup 0 0 0 - /sys/fs/cgroup/devices cgroup 0 0 0 - /sys/fs/cgroup/net_cls,net_prio cgroup 0 0 0 - /sys/fs/cgroup/perf_event cgroup 0 0 0 - /sys/fs/cgroup/memory查看CPU前10位