何为supervisorctl以及我们如何使用它

介绍

Supervisor 是基于python开发的一套类unix os上通用的Client/Server模式的多进程监控和管理系统,我们可以很方便地使用该工具去启动、关闭和重启某个进程。当某个进程被意外kill,supervisor监听到该事件后,会让进程自动恢复,由此减少了开发人员手工编码对进程进行监控的工作量。

supervisord

因为 supervisor 是 C/S 模式的,所以分为服务端和客户端。supervisord即是supervisor的服务端,所以当supervisor处于运行状态时,supervisord会作为一个进程被启动,而被管理的进程将作为子进程被supervisord启动。

supervisorctl

supervisor的客户端便是我们会经常使用的 supervisorctl。该命令行管理工具可以让我们方便地使用相关命令对supervisor管理的进程进行操作,常见命令如下表所示:

|----------------------------------------|-----------------|
| supervisorctl status | 查看所有监控的子进程服务状态 |
| supervisorctl start | 启动所有子进程服务 |
| supervisorctl restart | 重启所有子进程服务 |
| supervisorctl stop all | 终止所有子进程服务的运行 |
| supervisorctl start [service-name] | 根据指定名启动某个特定的子进程 |
| supervisorctl restart [service-name] | 根据指定名重启某个特定的子进程 |
| supervisorctl stop [service-name] | 根据指定名终止某个特定的子进程 |

本篇博客仅对 supervisorctl 命令行工具的常见使用方式和使用背景做了一个大致介绍,若想了解有关 supervisor 的安装以及对服务端 supervisord 的配置等内容,请见下方参考博客。

参考:

supervisor简介

相关推荐
MAVER1CK2 小时前
Docker容器创建好后修改容器配置
运维·docker·容器
匆匆那年9673 小时前
VSCode 远程 Linux 使用Codex
linux·ide·vscode
それども3 小时前
Gradle 构建疑难杂症 Could not find netty-transport-native-epoll-linux-aarch_64.ja
java·服务器·gradle·maven
NightReader4 小时前
CPU 高使用率,怎么降下来
运维·服务器
SWAGGY..5 小时前
Linux系统编程:(七)Makefile入门:轻松掌握编译自动化
linux·运维·自动化
开开心心就好5 小时前
免费流畅的远程控制实用工具
linux·运维·服务器·网络·智能手机·excel
黑猫学长呀7 小时前
存储宝典第2篇:盲封TT wafer是什么意思?
linux·嵌入式硬件·项目·芯片·ufs·晶圆·产测
Strugglingler7 小时前
【Linux 用户态操作 UART】
linux·uart
代码熬夜敲Q7 小时前
ENSP 网络工程实验
linux·运维·服务器
銳昊城7 小时前
项目七: 配置与管理Web服务器(2) C2
运维·服务器