守护进程浅谈及应用举例

903 阅读1分钟

守护进程是指在后台运行,并且不受终端控制的进程。

创建守护进程几个关键步骤:

  1. 创建子进程,并终止父进程的运行。这样在终端中,当前输入框不会被继续占用,用户可以输入执行其他命令。

  2. 子进程中创建新会话,这样可以让子进程脱离原会话的控制,子进程可以脱离原进程组,子进程可以摆脱原控制终端的控制。这是因为在创建子进程时,子进程会继承父进程的会话,进程组和控制终端,没有实现真正的独立。

  3. 子进程创建时继承了父进程的工作目录,当前目录所在的文件系统无法卸载,可将工作目录设置为 /

Node.js

在做 Node.js 应用开发时,如果每次修改完代码都去重启 node 服务是一件很头疼的事情。所以 forever,supervisor,pm2 这样的工具帮助开发者实现进程后台、重启等功能,非常实用。

定时任务

cron 是 Linux 中一个很实用的守护进程,启用这个守护进程后,它会每分钟检查任务列表,看是否有可执行的命令或者脚本。

我们可以在任务列表中添加一条任务,将上边 Node.js 应用运行过程中生成的日志文件按一定的时间规律(例如:每周一)进行打包压缩处理,并使用 OSS(对象存储服务)存储日志压缩包。

关于 cron 的使用方法,可以参考链接

以上