daemontools pk supervisord
明白了,你想搞清楚 daemontools、svc、supervise、supervisord 之间的关系,我帮你整理成一个清晰的对比和关系图。
1️⃣ daemontools 体系
| 名称 | 类型 | 作用 | 关系/说明 | 
|---|---|---|---|
| daemontools | 工具集 | Linux 下守护进程管理工具 | 套件整体,包括 svscanboot、supervise、svc、svstat、multilog等 | 
| svscanboot | 进程 | 系统启动时扫描 /service下的服务目录 | 启动每个 supervise进程 | 
| supervise | 进程 | 核心守护进程 | 监控指定服务目录的 run脚本,保证服务一直运行 | 
| svc | 命令 | 控制工具 | 向 supervise的 FIFO 写命令,如启动/停止/重启 | 
| svstat | 命令 | 状态查看工具 | 读取 supervise/status查看服务是否在运行 | 
| multilog | 工具 | 日志收集 | 可选,把 stdout/stderr 管理成日志文件 | 
特点:
- 
服务的配置就是服务目录 + run脚本。
- 
默认无限拉起服务,崩溃自动重启。 
- 
systemd 只知道 daemontools.service,不关心每个业务服务。
2️⃣ supervisord 体系
| 名称 | 类型 | 作用 | 关系/说明 | 
|---|---|---|---|
| supervisord | 守护进程 | Python 实现的进程管理器 | 后台运行,管理所有 program 配置的服务 | 
| supervisorctl | 命令 | 控制工具 | 向 supervisord的 socket 发命令,启动/停止/重启服务 | 
| 配置文件 | 文件 | 服务列表及启动参数 | /etc/supervisord.conf或supervisord.d/*.ini | 
特点:
- 
配置中心化,用 ini 文件指定每个服务。 
- 
支持依赖、自动重启、日志收集。 
- 
与 daemontools 完全独立,不能互通。 
3️⃣ 对比 daemontools vs supervisord
| 特性 | daemontools | supervisord | 
|---|---|---|
| 配置方式 | 服务目录 + run脚本 | ini 配置文件 | 
| 服务拉起 | supervise进程无限拉起 | supervisord根据配置拉起 | 
| 启停命令 | svc -u/d/t | supervisorctl start/stop/restart | 
| 状态查看 | svstat | supervisorctl status | 
| 日志处理 | multilog(可选) | 内置 stdout/stderr 管理 | 
| 系统集成 | systemd 只管理 daemontools.service | supervisord 自己管理 socket,systemd 可做守护进程 | 
| 优势 | 极简、稳定、无需 Python | 配置灵活,适合复杂依赖 | 
| 典型用途 | 小型服务/脚本、内网守护 | Web 服务、应用服务、业务多样化场景 | 
4️⃣ 总结关系
[systemd] 
   └─ daemontools.service (svscanboot)
         ├─ supervise service1
         ├─ supervise service2
         └─ supervise serviceN
               └─ run script (实际业务程序)
supervisord (独立 Python 守护进程)
   ├─ program1 (配置文件)
   ├─ program2
   └─ programN
- 
daemontools 是进程级别、目录驱动, svc/svstat是操作/查看工具。
- 
supervisord 是配置驱动, supervisorctl是操作/查看工具。
- 
两者完全独立,互不影响。 
如果你需要,我可以帮你画一个 图解版流程图,把 systemd → daemontools → supervise → 服务 和 supervisord → 服务 的运行/控制关系直观画出来,让区别一眼看懂。
你希望我画吗?
 
                    
                     
                    
                 
                    
                 
                
            
         
 
         浙公网安备 33010602011771号
浙公网安备 33010602011771号