Linux资源管理(一)
Windows任务管理器
在运维的日常工作当中,监控系统的运行状况是每天例行的任务,一个服务器的健康,从几个主要资源的利用率上,就可以得出结论,比如CPU使用率、内存使用率、磁盘使用率;使用任务管理器主要有三个目的
- 利用‘应用性能’和‘进程’标签来查看系统中到底运行了哪些程序,了解系统的运行状况
- 利用‘性能’和‘用户’标签来判断服务器的健康状态
- 在‘应用程序’和‘进程’标签中强制中止任务和进程
查看Windows的任务管理器
我们可以通过资源管理器,找到很占资源的应用,把它关掉
linux没有图形化让你点点点,基本都是通过命令来实现像Windows一样的操作,但是管理进程的目的都是一样的
Linux资源管理器
linux中的需要管理的资源信息如下
- 内存资源、使用率
free命令 - 磁盘资源、使用率
df - CPU资源、使用率
top
htop
glances - 进程资源、使用率
ps
pstree
pidof - 网络资源、使用率
Iftop - 所有资源的整体查看命令
top
glances
htop
linux的进程
- 进程就是一个个正在执行的程序或命令,每个进程都是一个运行的实体,并占用一定的系统资源
- 程序是人使用计算机语言编写的可以实现特定目标或解决特定问题的代码集合
我们的操作系统都是一堆进程而已,系统运行时就产生了0号进程,其他进程都是0号进程创建的子进程
操作系统的运行,就是不断的创建进程,以及销毁进程
孤儿进程
- 当父亲进程挂了,导致儿子进程成了孤儿,甚至是一个、或者多个孤儿进程。
- 孤儿进程会被系统的1号进程收养,并且有1号进程来回收,处理这些孤儿进程。
- 孤儿进程就是失去了原本父亲的进程,1号进程好比是孤儿院,专门处理孤儿进程的善后工作,因此孤儿进程不会对系统产生什么危害。
- 程序运行时,生成了父亲进程、儿子进程
- 父亲进程突然挂了、儿子成了孤儿,被1号进程收养
- 儿子进程的诞生是为了执行程序,程序结束后,被1号进程释放
僵尸进程
当父进程创建出子进程后,如果子进程挂了,父进程却不知道,就无法正确送走子进程,清楚它在系统中的信息,那么子进程就会变为僵尸进程,会对系统产生危害
僵尸进程状态为Z(zombie 僵尸进程),会占用大量的系统资源,如进程ID,系统就无法创建新的进程,完成任务,导致系统无法使用
解决僵尸进程
- 杀死父进程
- 优化代码,不再出错
- 如果程序自动结束,也会退出所有的进程