进程管理

从零开始的进程管理(基本概念)

旧巷老猫 提交于 2019-11-26 14:30:34
进程管理的基本概念 1、进程与程序 程序:存储在磁盘上的文件,包含可执行指令和数据的静态实体 进程: 运行中的程序(一个程序可以执行多次,加载出多个进程) 进程就是处于活动状态的计算机程序 2、进程的分类: 交互进程(有输入,有输出,用户可以根据自己的情况输入数据,得到想要结果)(一般进程) 批处理程序(由脚本加载执行的程序)(Linux下的shell,windows下的bat) 守护进程(总是活跃在后台运行,一般由系统开机时或root用户手动加载)(为其他进程起守护工作) 3、查看进程: 简单方式:终端下ps,显示当前用户有终端控制权的进程信息 列表形式:ps aux,以列表形式显示详细信息 a是指所有用户控制终端的进程 u是以详细方式显示 x是所有用户无终控制的进程 4、进程的详细信息列表 USER 进程的用户名 PID 进程id %CPU 进程cpu使用率 %MEM 内存使用率 VSZ 占用虚拟内存大小 RSS 占用物理内存大小 TTY 终端的次设备号,如果无终端控制则显示? STAT 进程的状态 O:就绪态,等待被系统调用 R:运行态,Linux系统没有就绪态,就绪态用R表示 S:休眠态,可以被系统中断(信号)唤醒转入运行态 T:暂停态,是被SIGSTOP信号暂停的,当收到SIGCONT信号时才能再转入运行态 Z:僵尸态,已经结束停止运行,但父进程还没有回收 <

linux 下的进程管理工具 supervisor

百般思念 提交于 2019-11-26 11:35:19
在linux下监控进程: 1)yum install python-setuptools linux下的python安装工具 2)easy_install supervisor 安装supervisor 3) 测试安装是否成功: #echo_supervisord_conf 4)创建主配文件supervisord.conf     #echo_supervisord_conf > /etc/supervisord.conf 命令: 启动:supervisord -c /etc/supervisord.conf 关闭进程: supervisorctl shutdown 查看进程状态:supervisorctl 一般来说,我们会有好多个进程需要监控,这时候就需要再配置文件supervisord.conf里面进行配置,具体如下: vi /etc/supervisord.conf 找到program进行配置,如下我配置了三个进程gjs1、he、gjs22 查看进程状态: ok! 转载于:https://www.cnblogs.com/GuoJiaSheng/p/5239384.html 来源: https://blog.csdn.net/weixin_30194361/article/details/98825806

一个简单的多进程管理工具goreman

十年热恋 提交于 2019-11-26 01:05:44
goreman是一个go语言编写的多进程管理工具,是对Ruby下广泛使用的foreman的重写(foreman原作者也实现了一个golang版:forego,不过没有goreman好用)。 相比较monit、supervisor而言要简单的多,而且可以在项目级别管理进程,比较适合开发环境使用。比如快速运行和一项目相关的所有进程,goreman就可以派上用场。coreos的etcd就是使用的goreman来一键启停单机版的etcd集群。 安装 首先需要有go语言的环境,然后下载工具编译: go get github.com/mattn/goreman 编译后的文件放在$GOPATH/bin中,最好把$GOPATH/bin目录添加到$PATH中,以便方便执行命令。 使用 可以运行以下命令来查看帮助信息: goreman help 基本例子: 在我们的项目目录下创建一个名为Procfile文件,内容为: # 名称: 命令 hello1: ./helloworld hello2: ./helloworld hello3: ./helloworld 然后运行goreman start,就会启动三个运行helloworld命令的进程。 按ctrl-c会关闭所有的进程。 传入参数: 我可以携带多个参数来运行,比如Procfile文件为: hello1: ./helloworld --name=