superviosr管理websocket服务
x.X.supervisor简易版部署
- 下载superviosr, 本机默认使用python2进行setup
wget --no-check-certificate https://pypi.python.org/packages/source/s/supervisor/supervisor-3.0.tar.gz
tar -zxvf supervisor-3.0.tar.gz
cd supervisor-3.0
python setup.py install
- 目录结构
/root/etc
├── supervisor
│ ├── conf.d
│ └── var
│ ├── log
└── supervisord.conf
- 创建目录结构:
mkdir -p ~/etc/supervisor/conf.d
mkdir -p ~/etc/supervisor/var/log
- 生成supervisor默认配置文件
cd ~/etc
echo_supervisord_conf > supervisord.conf
-
进入superviosrd配置可以参照:https://www.cnblogs.com/xujunkai/p/12332834.html
-
编辑自定义supervisor配置
vim ~/etc/mysupervisor.conf
- 配置如下
# socket 启动服务
[program:websocketserver];我的websocekt服务启动
directory=/opt/env/bin/
command=/opt/env/bin/python3 /opt/bracelet_backstage/bracelet_serve.py run
stdout_logfile=/root/etc/supervisor/var/log/mysql-stdout.log
stderr_logfile=/root/etc/supervisor/var/log/mysql-stderr.log
numprocs=1
autostart=true
autorestart=true
startsecs=10
stopwaitsecs = 600
priority=15
# celery启动服务
[program:celeryworker]
directory=/opt/bracelet_backstage
command=/opt/env/bin/python3 -m celery worker -A bracelet_serve.celery --loglevel=info --logfile="/opt/celeryLog/celerylog.log"
stdout_logfile=/root/etc/supervisor/var/log/celery-stdout.log
stderr_logfile=/root/etc/supervisor/var/log/celery-stderr.log
process_name=%(program_name)s_%(process_num)02d
numprocs=1
autostart=true
autorestart=true
startsecs=10
stopwaitsecs = 600
priority=15
[supervisord]
loglevel=info ; (log level;default info; others: debug,warn,trace)
[inet_http_server]
port = :9001
username=root
password=123
[supervisorctl]
serverurl = http://0.0.0.0:9001# 这里直接可以通过web管理我服务的进程
username=root
passowrd=123
[rpcinterface:supervisor]
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
- 环境变量配置
vi /etc/profile
export PATH=$PATH:/usr/bin/supervisord
export PATH=$PATH:/usr/bin/supervisorctl
- 启动supervisor
先执行
supervisord -c ~/etc/mysupervisor.conf
开启交互模式管理
supervisorctl -c ~/etc/mysupervisor.conf
- 输入账号密码
-
管理进程
stop 进程名字 #关闭进程
start 进程名字 #开启进程
status #查看进程状态
- web页面管理进程:
http://<IP>:9001/
再输入用户名密码,如下图
- 查询superviosr启动状态
ps -ef | grep supervisor
- 杀死supervisor
pkill -9 -f supervisor
- 查询端口占用
netstat -anp | grep 端口号
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库