欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python進(jìn)程管理工具supervisor的安裝與使用教程

 更新時(shí)間:2017年09月05日 10:02:03   作者:火柴  
supervisor是用python寫的一個(gè)進(jìn)程管理工具,用來啟動,重啟,關(guān)閉進(jìn)程。下面這篇文章主要給大家介紹了關(guān)于python實(shí)現(xiàn)的進(jìn)程管理工具supervisor的安裝與使用的相關(guān)資料,需要的朋友可以參考借鑒,下面來一起看看吧。

前言

在一個(gè)分布式環(huán)境中,每臺機(jī)器上可能需要啟動和停止多個(gè)進(jìn)程,使用命令行方式一個(gè)一個(gè)手動啟動和停止非常麻煩,而且查看每個(gè)進(jìn)程的狀態(tài)也很不方便。如果有一個(gè)工具能夠?qū)崿F(xiàn)每臺機(jī)器上多個(gè)進(jìn)程的簡單高效中心化管理將是非常方便的。于是Supervisord工具應(yīng)運(yùn)而生。與Supervisord類似的工具包括monit, daemontools和runit。下面話不多說了,來一起看看詳細(xì)的介紹吧。

安裝

Supervisord是運(yùn)行在Python環(huán)境下的服務(wù)監(jiān)控程序,所以在安裝supervisord之前必須有python環(huán)境。

yum install python-setuptools
easy_install supervisor

如果安裝成功,鍵入: echo_supervisord_conf,會顯示一個(gè)superviscord_conf 的配置模板。

這里使用重定向運(yùn)算符將配置文件定向到/etc路徑下(方便管理)

echo_supervisord_conf>/etc/supervisord.conf

配置文件詳解

[unix_http_server]
file=/tmp/supervisor.sock ; UNIX socket 文件,supervisorctl 會使用
;chmod=0700 ; socket 文件的 mode,默認(rèn)是 0700
;chown=nobody:nogroup ; socket 文件的 owner,格式: uid:gid
;[inet_http_server] ; HTTP 服務(wù)器,提供 web 管理界面
;port=127.0.0.1:9001 ; Web 管理后臺運(yùn)行的 IP 和端口,如果開放到公網(wǎng),需要注意安全性
;username=user ; 登錄管理后臺的用戶名
;password=123 ; 登錄管理后臺的密碼
[supervisord]
logfile=/tmp/supervisord.log ; 日志文件,默認(rèn)是 $CWD/supervisord.log
logfile_maxbytes=50MB ; 日志文件大小,超出會 rotate,默認(rèn) 50MB
logfile_backups=10 ; 日志文件保留備份數(shù)量默認(rèn) 10
loglevel=info ; 日志級別,默認(rèn) info,其它: debug,warn,trace
pidfile=/tmp/supervisord.pid ; pid 文件
nodaemon=false ; 是否在前臺啟動,默認(rèn)是 false,即以 daemon 的方式啟動
minfds=1024 ; 可以打開的文件描述符的最小值,默認(rèn) 1024
minprocs=200 ; 可以打開的進(jìn)程數(shù)的最小值,默認(rèn) 200
; the below section must remain in the config file for RPC
; (supervisorctl/web interface) to work, additional interfaces may be
; added by defining them in separate rpcinterface: sections
[rpcinterface:supervisor]
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
[supervisorctl]
serverurl=unix:///tmp/supervisor.sock ; 通過 UNIX socket 連接 supervisord,路徑與 unix_http_server 部分的 file 一致
;serverurl=http://127.0.0.1:9001 ; 通過 HTTP 的方式連接 supervisord
; 包含其他的配置文件
[include]
files = relative/directory/*.ini ; 可以是 *.conf 或 *.ini

進(jìn)程Program配置

[program:usercenter]
directory = /home/leon/projects/usercenter ; 程序的啟動目錄
command = gunicorn -c gunicorn.py wsgi:app ; 啟動命令,可以看出與手動在命令行啟動的命令是一樣的
autostart = true ; 在 supervisord 啟動的時(shí)候也自動啟動
startsecs = 5 ; 啟動 5 秒后沒有異常退出,就當(dāng)作已經(jīng)正常啟動了
autorestart = true ; 程序異常退出后自動重啟
startretries = 3 ; 啟動失敗自動重試次數(shù),默認(rèn)是 3
user = leon ; 用哪個(gè)用戶啟動
redirect_stderr = true ; 把 stderr 重定向到 stdout,默認(rèn) false
stdout_logfile_maxbytes = 20MB ; stdout 日志文件大小,默認(rèn) 50MB
stdout_logfile_backups = 20 ; stdout 日志文件備份數(shù)
; stdout 日志文件,需要注意當(dāng)指定目錄不存在時(shí)無法正常啟動,所以需要手動創(chuàng)建目錄(supervisord 會自動創(chuàng)建日志文件)
stdout_logfile = /data/logs/usercenter_stdout.log
; 可以通過 environment 來添加需要的環(huán)境變量,一種常見的用法是修改 PYTHONPATH
; environment=PYTHONPATH=$PYTHONPATH:/path/to/somewhere

將進(jìn)程配置添加到supervisord.conf文件中

推薦將各個(gè)進(jìn)程配置放到單獨(dú)的文件中,然后通過[include]配置項(xiàng)引用

[include]
files = /etc/supervisor/*.conf

supervisor服務(wù)啟動

運(yùn)行命令

supervisord -c /etc/supervisord.conf

supervisor服務(wù)客戶端管理

可以使用supervisord的命令行客戶端管理工具supervisorctl,來管理進(jìn)程。

supervisorctl status
supervisorctl stop usercenter
supervisorctl start usercenter
supervisorctl restart usercenter
supervisorctl reread
supervisorctl update

supervisor web管理界面

;[inet_http_server] ; HTTP 服務(wù)器,提供 web 管理界面
;port=127.0.0.1:9001 ; Web 管理后臺運(yùn)行的 IP 和端口,如果開放到公網(wǎng),需要注意安全性
;username=user ; 登錄管理后臺的用戶名
;password=123 ; 登錄管理后臺的密碼

在瀏覽器中輸入http://127.0.0.1:9001,即可進(jìn)入web管理界面

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關(guān)文章

  • Python選擇網(wǎng)卡發(fā)包及接收數(shù)據(jù)包

    Python選擇網(wǎng)卡發(fā)包及接收數(shù)據(jù)包

    今天小編就為大家分享一篇關(guān)于Python選擇網(wǎng)卡發(fā)包及接收數(shù)據(jù)包,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-04-04
  • Python簡單生成8位隨機(jī)密碼的方法

    Python簡單生成8位隨機(jī)密碼的方法

    這篇文章主要介紹了Python簡單生成8位隨機(jī)密碼的方法,結(jié)合實(shí)例形式分析了2種簡單生成隨機(jī)密碼的方法,非常簡單實(shí)用,需要的朋友可以參考下
    2017-05-05
  • linux環(huán)境下安裝pyramid和新建項(xiàng)目的步驟

    linux環(huán)境下安裝pyramid和新建項(xiàng)目的步驟

    這篇文章簡單介紹了linux環(huán)境下安裝pyramid和新建項(xiàng)目的步驟,大家參考使用
    2013-11-11
  • Python3接口性能測試實(shí)例代碼

    Python3接口性能測試實(shí)例代碼

    在本篇文章里小編給大家整理的是一篇關(guān)于Python3實(shí)現(xiàn)簡單的接口性能測試的相關(guān)實(shí)例內(nèi)容,有興趣的朋友們可以跟著學(xué)習(xí)下。
    2021-06-06
  • Python中的默認(rèn)參數(shù)實(shí)例分析

    Python中的默認(rèn)參數(shù)實(shí)例分析

    這篇文章主要介紹了Python中的默認(rèn)參數(shù)實(shí)例分析,分享了相關(guān)代碼示例,小編覺得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下
    2018-01-01
  • Python?十大經(jīng)典排序算法實(shí)現(xiàn)詳解

    Python?十大經(jīng)典排序算法實(shí)現(xiàn)詳解

    排序算法是《數(shù)據(jù)結(jié)構(gòu)與算法》中最基本的算法之一。排序算法可以分為內(nèi)部排序和外部排序,內(nèi)部排序是數(shù)據(jù)記錄在內(nèi)存中進(jìn)行排序,而外部排序是因排序的數(shù)據(jù)很大,一次不能容納全部的排序記錄,在排序過程中需要訪問外存
    2022-01-01
  • Flask Web開發(fā)入門之文件上傳(八)

    Flask Web開發(fā)入門之文件上傳(八)

    這篇文章主要為大家詳細(xì)介紹了Flask Web開發(fā)入門之文件上傳的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-08-08
  • Python中的pandas表格模塊、文件模塊和數(shù)據(jù)庫模塊

    Python中的pandas表格模塊、文件模塊和數(shù)據(jù)庫模塊

    這篇文章介紹了Python中的pandas表格模塊、文件模塊和數(shù)據(jù)庫模塊,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-05-05
  • 關(guān)于微信小程序爬蟲token自動更新問題

    關(guān)于微信小程序爬蟲token自動更新問題

    本文主要介紹了關(guān)于微信小程序爬蟲關(guān)于token自動更新問題,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • Python中reset_index()函數(shù)的使用

    Python中reset_index()函數(shù)的使用

    本文主要介紹了Python中reset_index()函數(shù)的使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-05-05

最新評論