“supervisord” 是 Supervisor 这个进程控制系统的守护进程名称,属于 Supervisor 项目。Supervisor 是一个用 Python 编写的进程管理工具,常用于在类 Unix 系统上管理和控制多个进程。

什么是 supervisord?

  • supervisord 是 Supervisor 的核心守护进程,负责启动、监控和管理它所配置的子进程(程序)。
  • 它读取配置文件(通常是 supervisord.conf),根据配置启动和控制多个子进程。
  • 它可以自动重启崩溃或退出的进程,保证服务的稳定运行。
  • 还提供了一个 HTTP 服务器接口,可通过命令行工具 supervisorctl 或 Web 界面与 supervisord 交互,查看进程状态、启动、停止或重启进程等。

主要功能特点

  • 简单易用的进程管理和守护机制
  • 支持日志管理,标准输出和错误输出可定向到日志文件
  • 进程崩溃时自动重启
  • 提供命令行工具和 HTTP 接口进行操作和监控

举个简单例子

假设有一个配置文件 supervisord.conf,里面配置了一个 Python 程序:

[program:myapp]
command=python myapp.py
autostart=true
autorestart=true
stderr_logfile=/var/log/myapp.err.log
stdout_logfile=/var/log/myapp.out.log

启动 supervisord 后,它会自动启动 myapp.py,如果程序崩溃,则自动重启,并将日志输出到指定文件。


总结

  • supervisord 是 Supervisor 的后台守护进程,用于启动和管理子进程。
  • Supervisor 常用于服务器环境下保证多进程服务的稳定运行,便于进程管理和监控。
作者:admin  创建时间:2025-10-20 17:45
最后编辑:admin  更新时间:2025-10-20 17:46