当前位置: 首页 > article >正文

supervisor的安装与使用-todo

supervisor的安装与使用一、supervisor的组件二、安装 和配置supervisor环境Centos72.1 安装supervisor2.1.1 使用 yum 命令安装2.1.2 使用pip命令安装2.2 yum安装和pip安装对比2.3 查看supervisor版本三、supervisor的配置文件3.1配置文件所在3.1.1 yum命令安装的supervisor3.1.2 pip命令安装的supervisor3.2 配置文件说明四、supervisor的两种管理方式4.1 systemctl管理4.1.1 启动supervisor4.1.2 查看supervisor的启动状况4.1.3 停掉supervisor4.2 supervisord自己管理4.2.1 启动4.2.1 停掉五、supervisorctl 命令5.1更新了supervisord.conf 文件5.2 supervisorctl update和supervisorctl reload有什么区别5.3 执行了supervisorctl update 之后还有必要执行supervisorctl restart命令吗六、 ini文件的配置说明官方文档 https://supervisord.org/一、supervisor的组件supervisord 主管supervisor 的服务器部分名为 supervisord。它负责在自己的调用时启动子程序响应来自客户端的命令重新启动崩溃或退出的子进程记录其子进程 stdout 和 stderr output以及生成和处理与点对应的 “事件” 在子进程生命周期中。服务器进程使用配置文件。这通常位于 /etc/supervisord.conf 中。此配置文件是 “Windows-INI” 样式的配置文件。通过适当的文件系统权限确保此文件的安全非常重要因为它可能包含未加密的用户名和密码。supervisorctlsupervisor 的命令行客户端部分名为 supervisorctl 的它为 supervisord 提供的功能提供了一个类似 shell 的接口。 从 supervisorctl 中用户可以连接到不同的 Supervisord 进程一次一个获取 Supervisord 控制的子进程的状态停止和启动子进程并获取 Supervisord 正在运行的进程列表。Web Server 网页服务器激活配置文件的 [inet_http_server] 部分后访问服务器 URL例如 http://localhost:9001/以通过 Web 界面查看和控制进程状态二、安装 和配置supervisor环境Centos72.1 安装supervisor2.1.1 使用 yum 命令安装# 1、安装社区扩展源sudoyuminstall-yepel-release# 2、安装 Supervisorsudoyuminstall-ysupervisor2.1.2 使用pip命令安装pipinstallsupervisor2.2 yum安装和pip安装对比以下是格式化后的表格特性pip install supervisoryum install supervisor安装位置通常在/usr/local/bin或~/.local/bin固定在/usr/binSystemd 集成不会自动创建开机自启服务自动配置并关联systemctl解释器依赖强绑定于当前的 Python 解释器路径绑定系统环境更稳定适合场景本地开发、虚拟环境生产环境2.3 查看supervisor版本supervisord--version三、supervisor的配置文件3.1配置文件所在3.1.1 yum命令安装的supervisor配置文件:supervisord.conf配置文件通常在/etc目录下即/etc/supervisord.conf3.1.2 pip命令安装的supervisor用pip命令安装的supervisor的话通常不会生成 supervisord.conf配置文件需要通过执行 echo_supervisord_conf /etc/supervisord.conf 在 【制定好的路径】下生成配置文件3.2 配置文件说明注意/etc/supervisord.conf的注释使用的是;去掉分号才能起作用配置完配置文件需要使用supervisorctl reload 重启服务器才起作用[unix_http_server]# 配置supervisorctl和supervisord交互的尽量file参数尽量不要配置在tmp目录下避免被删除之后supervisorctl不能控制supervisordfile/run/supervisor/supervisor.sock[inet_http_server]# 配置web页面......[supervisord]# 配置supervisord 一些日志相关的配置logfile/var/log/supervisor/supervisord.log......[supervisorctl]# 配置supervisorctl用来和supervisord的交互serverurlunix:///run/supervisor/supervisor.sock# 应该和 unix_http_server的file参数一致......# 其它配置应该也与unix_http_server里的配置保持一致[include]# 要管理的进程文件配置多个文件写好路径用空格分割filessupervisord.d/*.ini /data/webroot/booking/supervisor/*.ini四、supervisor的两种管理方式4.1 systemctl管理4.1.1 启动supervisorsystemctl start supervisord4.1.2 查看supervisor的启动状况systemctl status supervisord4.1.3 停掉supervisorsystemctl stop supervisord4.2 supervisord自己管理4.2.1 启动# 1、启动/usr/bin/supervisord# 2、指定配置文件启动/usr/bin/supervisord-c/etc/supervisord.conf4.2.1 停掉# 筛选出进程然后kill掉ps-aux|grepsupervisord五、supervisorctl 命令5.1更新了supervisord.conf 文件执行 supervisorctl reload 命令会经历以下几个步骤重新读取配置文件首先它会重新读取Supervisor的配置文件以识别任何新增、删除或修改的程序配置。停止不再存在的程序如果某些程序在新的配置文件中被移除了Supervisor将会停止这些程序的运行。启动新配置中的程序对于配置文件中新添加的程序Supervisor将根据新的配置尝试启动它们。更新已存在程序的配置对于那些既没有被移除也没有被新增的程序如果有针对它们的配置项发生了变化比如环境变量、工作目录等Supervisor也会应用这些变化。总之supervisorctl reload 是一种确保你的进程管理配置与Supervisor当前运行状态同步的方法而不需要手动重启整个Supervisor服务。这使得可以在不影响其他正常运行服务的情况下对配置进行调整。supervisorctl reload5.2 supervisorctl update和supervisorctl reload有什么区别supervisorctl update 和 supervisorctl reload 都是 Supervisor 工具中的命令用于管理和更新由 Supervisor 控制的进程。然而它们之间有一些关键的区别supervisorctl update用途supervisorctl update 命令主要用于在你修改了配置文件通常是 supervisord.conf 或者其包含的任意 .conf 文件后将这些更改应用到正在运行的 Supervisor 实例中。行为它会根据当前的配置文件对比已经运行的服务然后执行以下操作启动配置文件中新添加但当前未运行的程序。如果某个程序在配置文件中被移除则停止该程序。不会重新加载整个配置文件或重启所有服务它仅对配置发生变化的部分进行调整。简单来说update 更像是一个增量更新命令只针对有变动的部分采取行动。supervisorctl reload用途supervisorctl reload 是用来重新加载 Supervisor 的主配置文件并且重新启动 Supervisor 的守护进程 (supervisord)以确保所有的配置更改都能生效。行为此命令会导致 Supervisor 进程完全重新读取其配置文件并根据新的配置来调整其管理的所有程序的状态。这包括重新加载配置文件。根据新配置启动或停止相应的程序。对于已运行的程序如果配置发生改变可能会尝试重启它们以应用新配置。与 update 相比reload 更加彻底因为它涉及到整个 Supervisor 守护进程的重启过程这意味着所有受管程序都可能受到一定影响。总结使用 supervisorctl update 当你需要根据最新的配置文件更新 Supervisor 管理的程序状态而不希望干扰其他正常运行的服务时。使用 supervisorctl reload 当你进行了较大的配置更改或者需要确保 Supervisor 完全按照最新的配置文件运行时尽管这可能导致所有服务暂时性中断。、5.3 执行了supervisorctl update 之后还有必要执行supervisorctl restart命令吗supervisorctl restart [program_name] 会强制停止并重新启动指定的程序或所有程序。这确保了程序以最新的配置文件运行。六、 ini文件的配置说明[group:booking]programsbooking_main[program:booking_main]directory/data/webroot/booking/scripts process_name%(program_name)scommandbashstart.sh autostarttrueautorestarttruenumprocs1redirect_stderrtruekillasgrouptruestopasgrouptruepriority1

相关文章:

supervisor的安装与使用-todo

supervisor的安装与使用一、supervisor的组件二、安装 和配置supervisor(环境:Centos7)2.1 安装supervisor2.1.1 使用 yum 命令安装2.1.2 使用pip命令安装2.2 yum安装和pip安装对比2.3 查看supervisor版本三、supervisor的配置文件3.1配置文件…...

如何高效清理重复文件:DupeGuru专业使用秘诀

如何高效清理重复文件:DupeGuru专业使用秘诀 【免费下载链接】dupeguru Find duplicate files 项目地址: https://gitcode.com/gh_mirrors/du/dupeguru 你是否曾因电脑中大量重复文件占用宝贵存储空间而烦恼?面对散落在各个文件夹中的重复照片、文…...

Java——文件和目录操作

文件和目录操作1、构造方法2、文件元数据3、文件操作4、目录操作1、构造方法 File既可以表示文件,也可以表示目录,它的主要构造方法有: //pathname表示完整路径,该路径可以是相对路径,也可以是绝对路径 public File(…...

Vaultwarden Docker部署全攻略:自托管密码库的安全实践

1. 项目概述:从 Bitwarden 到 Vaultwarden 的演进之路如果你和我一样,是个密码管理工具的重度依赖者,那么 Bitwarden 这个名字你一定不陌生。作为一款开源的密码管理器,它以其跨平台、功能强大和免费(基础版&#xff0…...

ARM PMU性能监控架构与PMCEID2寄存器详解

1. ARM PMU性能监控架构概述性能监控单元(Performance Monitoring Unit, PMU)是现代处理器中用于硬件级性能分析的核心模块。在ARM架构中,PMU通过一组可编程的事件计数器实现对处理器微架构行为的精确监控。这些计数器可以记录诸如指令执行周期、缓存命中/失效、分支…...

Sidekiq监控测试终极指南:如何全面检测系统状态与性能

Sidekiq监控测试终极指南:如何全面检测系统状态与性能 【免费下载链接】sidekiq Simple, efficient background processing for Ruby 项目地址: https://gitcode.com/gh_mirrors/si/sidekiq Sidekiq作为Ruby生态中最流行的后台作业处理框架,其强大…...

基于电容触摸与接近传感的无接触MIDI控制器设计与实现

1. 项目概述与核心价值如果你玩过电子乐器,或者对音乐制作、交互装置感兴趣,那你一定对MIDI控制器不陌生。传统的MIDI控制器,无论是键盘、打击垫还是旋钮,大多依赖于物理接触——你得实实在在地按下去、扭动它。但有没有想过&…...

终极 ChatGPT-Google 扩展日志分析指南:深度洞察用户行为与功能使用统计 [特殊字符]

终极 ChatGPT-Google 扩展日志分析指南:深度洞察用户行为与功能使用统计 🔍 【免费下载链接】chatgpt-google-extension This project is deprecated. Check my new project ChatHub: 项目地址: https://gitcode.com/gh_mirrors/ch/chatgpt-google-ext…...

飞书文档批量导出终极指南:3步实现自动化文档迁移

飞书文档批量导出终极指南:3步实现自动化文档迁移 【免费下载链接】feishu-doc-export 飞书文档导出服务 项目地址: https://gitcode.com/gh_mirrors/fe/feishu-doc-export 还在为飞书文档迁移而烦恼吗?飞书文档批量导出工具让你彻底告别手动下载…...

Display-Lock:智能防休眠工具的原理、实现与安全实践

1. 项目概述与核心价值最近在折腾一个挺有意思的玩意儿,叫Stateford/Display-Lock。乍一看这个项目名,可能有点摸不着头脑,但如果你是一个经常需要远程办公、或者对个人电脑的隐私和状态管理有强迫症的程序员或极客,那这个工具很可…...

终极PHPExcel性能优化指南:从512MB到1GB内存的突破技巧

终极PHPExcel性能优化指南:从512MB到1GB内存的突破技巧 【免费下载链接】PHPExcel ARCHIVED 项目地址: https://gitcode.com/gh_mirrors/ph/PHPExcel PHPExcel作为一款强大的PHP电子表格处理库,在处理大型数据时常常面临内存不足的挑战。本文将分…...

Node.js API错误处理库设计:标准化响应与中间件实践

1. 项目概述:为什么我们需要一个专门的API错误处理库?如果你写过一段时间的后端服务,尤其是基于RESTful或GraphQL的API,肯定对下面这种场景不陌生:客户端发来一个请求,你的服务因为某种原因(比如…...

Airbyte质量保证终极指南:10个关键策略确保数据管道代码质量与测试覆盖

Airbyte质量保证终极指南:10个关键策略确保数据管道代码质量与测试覆盖 【免费下载链接】airbyte Open-source data movement for ELT pipelines and AI agents — from APIs, databases & files to warehouses, lakes, and AI applications. Both self-hosted …...

CursorTouch融合交互:工业与医疗场景下人机协同新范式

1. 项目概述:从“CursorTouch/Operator-Use”看人机交互的范式革新最近在GitHub上看到一个名为“CursorTouch/Operator-Use”的项目,这个标题乍一看有点抽象,但作为一名长期关注人机交互(HMI)和工业自动化领域的老兵&a…...

京东自动抢购终极指南:Python脚本帮你告别“手慢无“的烦恼

京东自动抢购终极指南:Python脚本帮你告别"手慢无"的烦恼 【免费下载链接】autobuy-jd 使用python语言的京东平台抢购脚本 项目地址: https://gitcode.com/gh_mirrors/au/autobuy-jd 还在为心仪的商品总是抢不到而烦恼吗?当你看到"…...

Sidekiq工作分配与负载均衡终极指南:高效管理后台任务的10个技巧

Sidekiq工作分配与负载均衡终极指南:高效管理后台任务的10个技巧 【免费下载链接】sidekiq Simple, efficient background processing for Ruby 项目地址: https://gitcode.com/gh_mirrors/si/sidekiq Sidekiq是Ruby生态中最受欢迎的后台作业处理框架&#x…...

终极指南:ta-lib-python社区案例分享与实用应用技巧

终极指南:ta-lib-python社区案例分享与实用应用技巧 【免费下载链接】ta-lib-python Python wrapper for TA-Lib (http://ta-lib.org/). 项目地址: https://gitcode.com/gh_mirrors/ta/ta-lib-python ta-lib-python是一个强大的Python技术分析库,…...

如何使用Tutorial-Codebase-Knowledge实现Docker Swarm集群部署的终极指南

如何使用Tutorial-Codebase-Knowledge实现Docker Swarm集群部署的终极指南 【免费下载链接】Tutorial-Codebase-Knowledge Pocket Flow: Codebase to Tutorial 项目地址: https://gitcode.com/gh_mirrors/tu/Tutorial-Codebase-Knowledge Tutorial-Codebase-Knowledge&a…...

科技早报晚报|2026年5月14日:调试工作台、Agent 证据格式与多智能体编排,今晚更值得做成产品的 3 个技术机会

科技早报晚报|2026年5月14日:调试工作台、Agent 证据格式与多智能体编排,今晚更值得做成产品的 3 个技术机会 一句话导读:今晚真正值得看的,不是又一个“更会写代码”的 Agent,而是 AI 工具链开始补上的三块…...

FPGA技术知识管理:构建个人阅读仓库,实现体系化学习与创新

1. 项目概述:FPGA技术文献的体系化阅读与知识管理在数字电路设计和硬件加速领域,FPGA(现场可编程门阵列)以其独特的并行处理能力和硬件可重构性,始终占据着技术演进的前沿。然而,与成熟的软件生态不同&…...

Go语言算法复杂度分析:时间与空间

Go语言算法复杂度分析:时间与空间 1. 复杂度表示 // O(1) - 常数时间 func getFirstElement(arr []int) int {return arr[0] }// O(n) - 线性时间 func findMax(arr []int) int {max : arr[0]for _, v : range arr {if v > max {max v}}return max }// O(n^2) -…...

ARM GICv3中断控制器系统寄存器解析与应用

1. ARM GICv3中断控制器系统寄存器深度解析在ARMv8-A架构的嵌入式系统中,中断控制器扮演着至关重要的角色。作为硬件中断信号的中枢管理系统,GIC(Generic Interrupt Controller)从v3版本开始进行了革命性的架构革新,其…...

yargs状态机:终极复杂命令流程管理指南

yargs状态机:终极复杂命令流程管理指南 【免费下载链接】yargs yargs the modern, pirate-themed successor to optimist. 项目地址: https://gitcode.com/gh_mirrors/ya/yargs 🚀 你是否曾为Node.js命令行工具的复杂参数解析而烦恼?…...

GSE-Advanced-Macro-Compiler:重新定义魔兽世界技能管理的智能编排系统

GSE-Advanced-Macro-Compiler:重新定义魔兽世界技能管理的智能编排系统 【免费下载链接】GSE-Advanced-Macro-Compiler GSE is an alternative advanced macro editor and engine for World of Warcraft. 项目地址: https://gitcode.com/gh_mirrors/gs/GSE-Advan…...

掌握PRML中的贝叶斯推断:MCMC采样实战指南

掌握PRML中的贝叶斯推断:MCMC采样实战指南 【免费下载链接】PRML PRML algorithms implemented in Python 项目地址: https://gitcode.com/gh_mirrors/pr/PRML 贝叶斯推断是机器学习中的核心技术之一,而马尔可夫链蒙特卡洛(MCMC&#…...

深入解析 gRPC:高性能开源 RPC 框架的原理与实战

深入解析 gRPC:高性能开源 RPC 框架的原理与实战 文章目录深入解析 gRPC:高性能开源 RPC 框架的原理与实战引言一、gRPC 概览二、核心技术解析1. HTTP/2:传输层的革命2. Protocol Buffers:高效的序列化与契约3. 四种服务方法&…...

Nginx静态网站托管终极指南:5分钟极速部署HTML/CSS/JS网站

Nginx静态网站托管终极指南:5分钟极速部署HTML/CSS/JS网站 【免费下载链接】server-configs-nginx Nginx HTTP server boilerplate configs 项目地址: https://gitcode.com/gh_mirrors/se/server-configs-nginx 想要快速部署静态网站吗?Nginx服务…...

Agent史上最全八股,来啦!

涉及到 RAG、MCP、Skills 等 12 个方向,共计 200 多个问题。 因为最近一段时间,我越来越明显地感觉到,前端 AI 方面的面试已经越来越倾向语 AI 化了。 以前很多同学去面试,面试官问的还是比较浅的东西。 你用过哪些大模型&#xf…...

【maaath】 Flutter for OpenHarmony 饮水水质监测应用开发实战

Flutter for OpenHarmony 饮水水质监测应用开发实战欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.csdn.net 作者:maaath一、引言 随着人们对健康饮水的关注度日益提升,水质监测已成为日常生活中不可或缺的一部分。无论是家庭…...

测试Leader的进阶困境:从管事到管人,再到管战略

在软件测试领域,从一名优秀的测试工程师晋升为测试Leader,往往被视为职业生涯的一次重要跃迁。然而,这场跃迁并非终点,而是一段更为复杂、充满挑战的旅程的开端。许多新晋测试Leader很快就会发现,自己陷入了一种前所未…...