Supervisor进程管理框架-总结、提炼和实践(190508更新)

Supervisor总览

 

我使用的场景

Supervisor框架图解

    Supervisor是一个典型的基于客户端、服务器的进程管理框架。supervisord是一个服务(功能非常强大),supervisorctl是一个客户端程序,方便本地或远程通过XML-RPC和supervisord服务进行通信从而在整体上实现supervisor提供的进程管理服务。

supervisorctl、supervisord、supervisor和supervisord.conf的交叉理解如下

190507 4:34补充

(1)在用Supervistor管理一些用到环境变量“LD_LIBRARY_PATH”的进程时,要注意在/etc/profile尾部加上export环境变量的语句,比如我用的是:

export LD_LIBRARY_PATH=./:./lib:/home/xhj/lib:/home/xhj/lib/ffmpeg-4.1/lib:/home/xhj/Qt5.12.3/5.12.3/gcc_64/lib:$LD_LIBRARY_PATH

(2) 容易忽略的一点是“Supervistord是运行在root用户环境下”,记住这点,在Supervistord启动进程失败时分析问题时很有用。图补如下:

190508 10:34补流:

问题提出:

正常的使用supervistord和supervistorctl是在root用户权限下,当用supervistord管理的进程在运行时(我称之为启动时)会搜索并加载动态库(x.so)时,supervistord极大机率会启动该进程失败,并提示FATE错误. 

分析:

在普通用户shell环境下运行一个需要在运行时加载动态库的正确实践是在~/.bashrc最后加上

export LD_LIBRARY_PATH=xx/lib

 这样,该项于shell启动的app就能在xx/lib中搜索动态链接库了。同样地,在root环境下也可以通过在/etc/profile(我是ubuntu)加入

export LD_LIBRARY_PATH=xx/lib

来解决。但是,虽然supervisord的启动是通过sudo supervisord启动,但是supervisord启动管理的进程(比如process1)时,给予process1的环境不是supervisord的环境,所以上面的做法行不通(已实测)。

做并解决:

在supervisor.conf中加入管理进程所需的环境变量, 比如下面的例子(第三行是解决问题的关键):

[program:x_process]
command=/home/qzm/NetAudio_PC2/build-X_Ring-Desktop_Qt_5_12_3_GCC_64bit-Debug/x_ring
environment=LD_LIBRARY_PATH="./:./lib:/home/qzm/lib:/home/qzm/Qt5.12.3/5.12.3/gcc_64/lib" #Key

然后kill supervisord,再sudo supervisord。或者在supervisorctl的>提示符下输入stop all,然后再输入reload,重启所有进程的同时加载设置。然后之前一直处于Fail状态的进程进入running状态

 

 

 

 

 

 

 

 

 

 

iotDevOps
关注 关注
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MPICH2 Hydra进程管理框架分析
wgbljl的专栏
04-22 5132
Supervisor守护进程离线脚本无脑安装
05-19
4. **日志记录**:Supervisor可以收集被管理进程的输出,将其重定向到指定的日志文件,便于问题排查和监控。 5. **多进程支持**:Supervisor不仅可以管理单个进程,还可以管理一组进程,如Python的多线程或多进程...
Python使用Supervisor管理进程的方法
09-22
主要介绍了Python使用Supervisor管理进程的方法,涉及Supervisor的相关使用技巧,需要的朋友可以参考下
supervisor(一)基础篇
weixin_34384557的博客
08-12 497
有阵子没写博客了,这段时间一直在研究python django框架和前端相关的东西。楼主学通信的,对web这一块啥也不懂,学了一个礼拜django,接着学了2个礼拜前端,感觉还是做不出来一个好看的页面。周末去了趟上海,蹭大神的讲课,学会了套用bootstrap框架和heighcharts,页面上也终于出来能看的东西了,也算是在web开发方面迈出了阶段性的一步。 ...
开源Linux进程管理框架,Linux进程管理
weixin_33988332的博客
05-03 608
一、概念:1、程序与进程:程序:由指令和数据组成的静态文件,程序是为了达到特定目的,可以被计算机运行并且由命令代码组成的序列;指令:用于调度CPU工作,使CPU可以处理所需要的数据;进程:运行中的程序;2、程序的工作模式:用户模式:用户态;内核模式:内核态;用户无权对硬件进行访问和操作,如果用户运行程序需要访问硬件,需要进行系统调用,通过内核来完成对硬件进行处理操作,此时程序由用户模式转入内核模式...
nginx + uwsgi + flask + supervisor 框架介绍
perry_h的博客
04-27 566
python版本: python 2.7.5 一、 nginx安装1. 下载 wget http://nginx.org/download/nginx-1.10.2.tar.gz tar -xvf nginx-1.10.2.tar.gz yum -y install pcre-devel openssl openssl-devel 2. 安装 cd nginx-1.10.2
进程体系与进程管理
u011616934的博客
02-05 1004
进程体系与进程管理
Go-进程管理工具supervisor的一个go-lang实现
08-14
在IT行业中,进程管理是系统运维和开发人员日常工作中不可或缺的一部分。Python的`supervisord`是一个广泛使用的进程管理工具,它提供了监控、自动重启、日志管理和配置管理等功能,使得开发者能够更加便捷地控制...
利用Supervisor管理Redis进程的方法教程
09-09
总结来说,Supervisor为Redis进程提供了一种稳定且自动化的管理方式,通过配置文件定制化进程启动参数,结合监控和自动恢复功能,提高了Redis服务的稳定性和运维效率。对于任何依赖Redis作为缓存或数据库的企业来说...
Docker 使用 Supervisor管理进程操作
01-20
本小节将使用进程管理工具 supervisor管理容器中的多个进程。使用Supervisor可以更好的控制、管理、重启我们希望运行的进程。在这里我们演示一下如何同时使用 ssh 和 apache 服务。 配置 首先创建一个Dockerfile...
进程管理工具(Supervisor)笔记
笔记
06-01 244
感谢GoFrame框架实战2群的 朽木自雕 大佬提供的Supervisor笔记 # 开发笔记 ## [进程管理工具(Supervisor)](http://supervisord.org/introduction.html) ### 1、安装Python包管理工具([easy_install](https://pypi.org/project/setuptools/)) ``` yum install python-setuptools ``` ### 2、安装Supervisor ```
多进程框架
lotus302的专栏
06-08 588
int main_run() {         int     stat;         int     i;         pid_t   pid;         int     fd[2];         char    c;         if(setjmp(exit_jb))                 goto shutdown;         //i
Storm系列(九)架构分析之Supervisor-同步Nimbus的事件线程
weixin_30698527的博客
09-11 102
Supervisor由三个线程组成,一个计时器线程和两个事件线程. 计时器线程负责维持心跳已经更新Zookeeper中的状态,还负责每隔一定的时间将事件线程需要执行的事件添加到其对应的队列中. 两个事件线程分别负责与Nimbus同步任务和根据任务变化同步管理Worker进程. 相关数据结构图: 同步Nimbus的事件线程 执行流程图: ...
一个多进程框架
非RD非PM
07-30 338
从别处找来的,记一下,学习~ /*============================================================================= # # Description: 多进程的一个框架,大家可以直接使用,已经经过功能测试和压力测试。 # 编译:g++ forkwork_use.cpp -o forkwork_use ...
多进程架构
shanlanxin的博客
05-01 227
Multi-process Architecture
多进程服务器框架
这是书生呀
11-04 364
服务器编写的框架: 网络层: 主要功能是接收网络来的数据包请求,将请求交于线程池中的线程去处理;线程处理完毕之后,将数据报发送回去
Taskbus - 基于Qt的跨平台多进程合作框架(一)基本原理
丁劲犇技术发布空间
11-17 3641
文章目录1. 什么是Taskbus 1. 什么是Taskbus Taskbus 是一种面向非专业开发者的跨平台多进程合作框架,具有进程切割、语言无关、编译器无关、架构无关四个特点。 非专业开发者是一个泛泛的概念,可以理解为没有受过专业化的软件工程化训练的开发者。诸如需要频繁自行开发小工具进行算法验证的高校教研团队,以及深入某一领域(化工、机械、通信、电子等)进行数据分析,需要长期从事非消费类工具软......
C/C++多进程高并发框架分享【内附可执行源码注释完整】
最新发布
Jacksqh的博客
11-19 2701
这篇文章带你了解多进程高并发的原理,并且提供一个通用框架供您参考,真的不来看看吗?
写文章

分类专栏

  • 机器人 3篇
  • DotNet专题 1篇
  • CCDP云计算部署实战 11篇
  • AI人工智能 1篇
  • 云计算基础 19篇
  • 编程语言工具箱(C、C++ ...) 14篇
  • 物联网SoC乐鑫ESP系列 7篇
  • 常用软件 1篇
  • 基于Arduino的智能硬件开发 6篇
  • OS 16篇
  • 嵌入式软硬件开发(专注于AIoT) 16篇

最新评论

  • JLink更新固件成砖头的Q&A

    ApathyX: 亲测好用,你是我亲哥

  • JLink更新固件成砖头的Q&A

    iotDevOps: 修复了就好。

  • JLink更新固件成砖头的Q&A

    Feng402: 最强修复 哈哈 救回来了

  • JLink更新固件成砖头的Q&A

    Feng402: 我愿称你为全网最强修改,谢谢老铁

  • QA:ubuntu22.04.4桌面版虚拟机鼠标丢失的解决方法

    _ycyc: 还真是,好神奇表情包

大家在看

  • Java | Leetcode Java题解之第503题下一个更大元素II
  • C语言 | Leetcode C语言题解之第502题IPO 195
  • Java | Leetcode Java题解之第504题七进制数
  • Golang | Leetcode Golang题解之第502题IPO 156
  • C++ | Leetcode C++题解之第503题下一个更大元素II

最新文章

  • Linux命令的补全和自动完成完全开启
  • ArmPiPro-多人同时开发
  • ArmPiPro-环境变量
2024年25篇
2023年21篇
2022年11篇
2021年7篇
2020年26篇
2019年21篇
2018年14篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

玻璃钢生产厂家平顶山玻璃钢商场美陈哪家好鼓楼玻璃钢雕塑厂家玻璃钢与铸造雕塑区别河北个性化玻璃钢雕塑平凉人物玻璃钢雕塑安装玻璃钢艺术雕塑制作价格天津喷泉雕塑玻璃钢水富市玻璃钢雕塑如何肇庆玻璃钢雕塑价格宝鸡肖像校园玻璃钢景观雕塑河南艺术商场美陈厂家供应聊城玻璃钢商场美陈玻璃钢花盆的设计要求红色玻璃钢花盆卢湾区酒店玻璃钢花盆中庭商场美陈批发成品玻璃钢花盆哪里买岳阳楼玻璃钢花盆花器济宁玻璃钢动物雕塑哪家买玻璃钢雕塑质保几年成都市玻璃钢雕塑厂家海南玻璃钢雕塑施工端午节商场门前美陈江门厂家批发玻璃钢雕塑商场玻璃钢花盆供货商平远玻璃钢花盆花器新余公园玻璃钢雕塑供应商晋城玻璃钢广场雕塑价格福建周年庆典商场美陈哪家好四川人物玻璃钢雕塑优势香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化