婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識(shí)庫 > 利用Supervisor管理Redis進(jìn)程的方法教程

利用Supervisor管理Redis進(jìn)程的方法教程

熱門標(biāo)簽:竹間科技AI電銷機(jī)器人 地圖標(biāo)注如何即時(shí)生效 最簡單的百度地圖標(biāo)注 百度商家地圖標(biāo)注怎么做 西藏教育智能外呼系統(tǒng)價(jià)格 小紅書怎么地圖標(biāo)注店 太原營銷外呼系統(tǒng) 玄武湖地圖標(biāo)注 地圖標(biāo)注費(fèi)用

前言

Supervisor 是一個(gè)用 Python 實(shí)現(xiàn)的進(jìn)程管理工具,可以很方便地啟動(dòng),關(guān)閉,重啟,查看,以及監(jiān)控進(jìn)程,當(dāng)進(jìn)程由于某種原因崩潰或者被誤殺后,可以自動(dòng)重啟并發(fā)送事件通知。Supervisor 可謂運(yùn)維利器,使用 Supervisor 來管理進(jìn)程,可以提高系統(tǒng)的高可用特性。

隨著 Redis 越來越流行,越來越多的公司都使用上了 redis,因此 Redis 的進(jìn)程管理就成了很多公司都需要面臨的問題,本文介紹如何使用 Supervisor 來管理 Redis 進(jìn)程。

Supervisor 簡介

Supervisor 包括以下四個(gè)組件。

1、supervisord

服務(wù)端程序,主要功能是啟動(dòng) supervisord 服務(wù)及其管理的子進(jìn)程,記錄日志,重啟崩潰的子進(jìn)程,等。

2、supervisorctl

命令行客戶端程序,它提供一個(gè)類似 shell 的接口,通過 UNIX 域套接字或者 TCP 套接字并使用 XML_RPC 協(xié)議與 supervisord 進(jìn)程進(jìn)行數(shù)據(jù)通信。它的主要功能是管理(啟動(dòng),關(guān)閉,重啟,查看狀態(tài))子進(jìn)程。

3、Web Server

實(shí)現(xiàn)在界面上管理進(jìn)程,還能查看進(jìn)程日志和清除日志。

4、XML-RPC 接口

可以通過 XML_RPC 協(xié)議對(duì) supervisord 進(jìn)行遠(yuǎn)程管理,達(dá)到和 supervisorctl 以及 Web Server 一樣的管理功能。

進(jìn)程被 Supervisor 管理后,其運(yùn)行狀態(tài)的轉(zhuǎn)化圖如下圖 1 所示:

圖 1 :子進(jìn)程狀態(tài)轉(zhuǎn)移圖

我們挑幾個(gè)重要的進(jìn)程狀態(tài)來說明。

  • running:進(jìn)程處于運(yùn)行狀態(tài)
  • starting:Supervisor 收到啟動(dòng)請(qǐng)求后,進(jìn)程處于正在啟動(dòng)過程中
  • stopped:進(jìn)程處于關(guān)閉狀態(tài)
  • stopping:Supervisor 收到關(guān)閉請(qǐng)求后,進(jìn)程處于正在關(guān)閉過程中
  • backoff:進(jìn)程進(jìn)入 starting 狀態(tài)后,由于馬上就退出導(dǎo)致沒能進(jìn)入 running 狀態(tài)
  • fatal:進(jìn)程沒有正常啟動(dòng)
  • exited:進(jìn)程從 running 狀態(tài)退出

沒有接觸過 Supervisor 的朋友可能對(duì)上面的描述感到有些抽象,不用擔(dān)心,經(jīng)過下面的實(shí)踐后,會(huì)快速理解 Supervisor 涉及的這些名詞的。

Supervisor 初體驗(yàn)

我們以 CentOS 平臺(tái)下為例,說明如何使用 Supervisor 這一強(qiáng)大的進(jìn)程管理工具。

1. 安裝

可以使用easy_intall來安裝 Supervisor:

easy_install supervisor

也可以使用pip來安裝 Supervisor:

pip install supervisor

安裝過程比較簡單,此處我們不再贅述。

安裝完畢后,可以使用以下命令來測試安裝是否成功:

echo_supervisord_conf

echo_supervisord_conf將會(huì)在終端輸出 Supervisor 配置的樣例。

2. 創(chuàng)建配置目錄以及主配置文件

為了將 Supervisor 的配置放置到獨(dú)立的目錄中,我們先創(chuàng)建目錄:

cd /etc
mkdir supervisor

接著,可以繼續(xù)使用echo_supervisord_conf命令,將 Supervisor 樣例配置重定向輸出到文件文件中:

echo_supervisord_conf > /etc/supervisor/supervisord.conf

這樣,我們便生成了 Supervisor 的主配置文件supervisord.conf。

為了將 Supervisor 管理的進(jìn)程配置與主配置文件區(qū)分開來,我們創(chuàng)建獨(dú)立的目錄來存放進(jìn)程配置。

cd /etc/supervisor
mkdir conf.d

然后,修改主配置文件 supervisord.conf,添加以下配置,將 conf.d 目錄下的進(jìn)程配置引入 Supervisor 管理:

[include]
files = ./conf.d/*.ini

3. 創(chuàng)建管理進(jìn)程

為方便測試 Supervisor 的功能,我們編寫以下 python 腳本,并保存為 hello.py。

import time
import sys
while True:
  print("hello\n")
  sys.stdout.flush()
  time.sleep(1)

hello.py 的主要功能是往標(biāo)準(zhǔn)輸出中不斷地輸出 “hello” 字符串。

4. 創(chuàng)建進(jìn)程配置

為將 hello.py 腳本被 Supervisor 接管,我們?cè)?/etc/supervisor/conf.d 目錄創(chuàng)建其配置 hello.ini:

[program:hello]
command=python /home/lihao/codes/python/hello.py    
stdout_logfile=/home/lihao/codes/python/hello.log
stderr_logfile=/home/lihao/codes/python/hello_error.log
  • command:運(yùn)行進(jìn)程使用的命令
  • stdout_logfile:指定標(biāo)準(zhǔn)輸出文件
  • stderr_logfile:標(biāo)準(zhǔn)錯(cuò)誤輸出文件

需要指出的是,被 Supervisor 管理的進(jìn)程,不能使用 daemon 模式,而必須在前臺(tái)運(yùn)行,否則會(huì)報(bào)錯(cuò)。

5. 運(yùn)行 supervisord

由于我們需要使用指定目錄下的 Supervisor 主配置文件,在運(yùn)行 Supervisord 時(shí),需要使用-c參數(shù)來指定主配置文件的路徑:

supervisord -c /etc/supervisor/supervisord.conf

6. 使用 supervisorctl 管理進(jìn)程

使用 supervisorctl 可以查看監(jiān)控的進(jìn)程狀態(tài):

supervisorctl -c /etc/supervisor/supervisord.conf

輸出:

hello RUNNING pid 8475, uptime 7:59:46
supervisor>

可以看到,腳本 hello.py 已經(jīng)運(yùn)行了起來(當(dāng)然使用 ps aux | grep hello也可以看到其進(jìn)程信息)。打開文件 /home/lihao/codes/python/hello.log,可以看到文件中不斷有”hello”輸出。

在 supervisorctl 命令行下,也可以使用start,stop,restart,status,等命令來啟動(dòng),關(guān)閉,重啟,查看狀態(tài)監(jiān)控的進(jìn)程,也可以輸入help來查看命令幫助。限于篇幅,此處不再展開,詳細(xì)的 supervisorctl 命令可以參考:http://www.supervisord.org/running.html#running-supervisorctl。

Supervisor 管理 Redis 進(jìn)程

在說完 Supervisor 的基本使用后,我們來看下如何使用 Supervisor 來管理 Redis 進(jìn)程。

Redis 的 Supervisor 配置

有了上面的基礎(chǔ),我們很容易寫出 Redis 服務(wù)進(jìn)程的 Supervisor 配置:

[program:redis]
command=/usr/local/bin/redis-server
autostart=true
autorestart=true
startsecs=3

使用 supervisorctl reload 載入新的 Redis 配置后,Redis 進(jìn)程便讓 Supervisor 啟動(dòng)了起來。如果需要指定 Redis 的輸出日志,可以通過stdout_logfile配置選項(xiàng)指定,具體也可以參考上述的 hello 例子。

由于 Supervisor 管理的進(jìn)程不能設(shè)置為 daemon 模式,故如果 Redis 無法正常啟動(dòng),可以查看一下 Redis 的配置,并將daemonize選項(xiàng)設(shè)置為 no。

daemonize no

Supervisord 開機(jī)啟動(dòng)

為了處理機(jī)器宕機(jī)重啟的情況,Redis 服務(wù)進(jìn)程需要實(shí)現(xiàn)機(jī)器重啟后自動(dòng)重啟的功能。 為此,需要配置 supervisord 進(jìn)程隨著機(jī)器啟動(dòng)而啟動(dòng)。要實(shí)現(xiàn)這一目的 ,可以在 /etc/init 目錄下添加 supervisord.conf 文件:

description  "supervisord"
start on runlevel [2345]
stop on runlevel [!2345]

respawn

exec supervisord -n -c /etc/supervisor/supervisord.conf

這樣,每當(dāng)機(jī)器重啟后,supervisord 進(jìn)程都會(huì)自動(dòng)啟動(dòng)起來,避免機(jī)器每次重啟后都需要手工啟動(dòng) supervisord 進(jìn)程的操作。Supervisord 進(jìn)程啟動(dòng)后,接下來會(huì)將其管理的進(jìn)程自動(dòng)地啟動(dòng)起來。這樣,便實(shí)現(xiàn)了被 Supervisor 管理的進(jìn)程隨著機(jī)器啟動(dòng)而啟動(dòng)的效果。讀者可以自行在測試機(jī)器上測試一下。

Supervisor Web 管理界面

如果需要開啟 Web 管理界面功能,需要在supervisord.conf配置中添加以下配置:

[inet_http_server]
port=*:9001
username=user
password=123

然后,打開瀏覽器,輸入地址 http://127.0.0.1:9001,這時(shí),會(huì)彈出輸入框,要求輸入用戶名和密碼(用戶名:user,密碼:123),便可以進(jìn)入 Supervisor 提供的進(jìn)程管理界面。

圖 2 :Supervisor Web 管理界面

在此界面下,可以對(duì)單個(gè)進(jìn)程進(jìn)行重啟,關(guān)閉,查看日志等操作,也可以對(duì)所有的進(jìn)程進(jìn)行重啟,關(guān)閉等操作。

總結(jié)

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

參考資料

  • http://www.supervisord.org/
  • Python Web 開發(fā)實(shí)戰(zhàn),董偉明著,電子工業(yè)出版社
  • http://www.jianshu.com/p/9abffc905645
  • http://www.supervisord.org/running.html#running-supervisorctl
  • http://supervisord.org/configuration.html
  • http://www.supervisord.org/subprocess.html
  • https://lincolnloop.com/blog/automatically-running-supervisord-startup/
  • https://serverfault.com/questions/96499/how-to-automatically-start-supervisord-on-linux-ubuntu
  • https://segmentfault.com/a/1190000003955182
您可能感興趣的文章:
  • nodejs 圖解express+supervisor+ejs的用法(推薦)
  • python進(jìn)程管理工具supervisor的安裝與使用教程
  • centos7使用supervisor的詳細(xì)教程
  • PHP框架Laravel中實(shí)現(xiàn)supervisor執(zhí)行異步進(jìn)程的方法
  • PHP程序員玩轉(zhuǎn)Linux系列 使用supervisor實(shí)現(xiàn)守護(hù)進(jìn)程
  • 基于Python 的進(jìn)程管理工具supervisor使用指南
  • Python使用Supervisor來管理進(jìn)程的方法
  • Mac下Supervisor進(jìn)程監(jiān)控管理工具的安裝與配置
  • node.js開發(fā)中使用Node Supervisor實(shí)現(xiàn)監(jiān)測文件修改并自動(dòng)重啟應(yīng)用
  • python進(jìn)程管理工具supervisor使用實(shí)例
  • 使用Python的Supervisor進(jìn)行進(jìn)程監(jiān)控以及自動(dòng)啟動(dòng)
  • 詳解supervisor使用教程

標(biāo)簽:林芝 唐山 贛州 香港 景德鎮(zhèn) 澳門 廣東 揚(yáng)州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《利用Supervisor管理Redis進(jìn)程的方法教程》,本文關(guān)鍵詞  利用,Supervisor,管理,Redis,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《利用Supervisor管理Redis進(jìn)程的方法教程》相關(guān)的同類信息!
  • 本頁收集關(guān)于利用Supervisor管理Redis進(jìn)程的方法教程的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    日韩一区二区三区免费看| 欧美高清hd18日本| 在线亚洲+欧美+日本专区| 在线综合+亚洲+欧美中文字幕| 久久久亚洲欧洲日产国码αv| 亚洲国产视频在线| 欧美中文字幕久久| 亚洲精品乱码久久久久久黑人| 成人免费黄色在线| 国产精品第13页| 色美美综合视频| 亚洲欧美另类久久久精品2019| 99久久久无码国产精品| 一区二区三区四区国产精品| av成人老司机| 亚洲一区二区在线免费观看视频| 91福利在线观看| 五月天一区二区三区| 欧美一区二区三区视频免费播放| 免费成人性网站| 中文字幕av一区 二区| 91香蕉国产在线观看软件| 国产精品成人一区二区艾草| 99久久伊人久久99| 日本亚洲最大的色成网站www| 精品国产青草久久久久福利| caoporm超碰国产精品| 亚洲午夜私人影院| 久久免费精品国产久精品久久久久| 成人午夜电影小说| 蜜桃一区二区三区四区| 最近日韩中文字幕| 精品国偷自产国产一区| 91麻豆国产福利在线观看| 久久草av在线| 香蕉加勒比综合久久| 中文天堂在线一区| 欧美成人精品3d动漫h| 91美女片黄在线| 国产成都精品91一区二区三| 五月天精品一区二区三区| 91精品婷婷国产综合久久竹菊| 色综合中文字幕国产 | 欧美第一区第二区| 欧美日本一道本在线视频| 成人免费av在线| 国产精品亚洲综合一区在线观看| 日韩电影免费在线观看网站| 一区二区三区**美女毛片| 国产精品国产三级国产| 国产精品无圣光一区二区| 精品国产免费人成电影在线观看四季| 欧美午夜宅男影院| 欧美久久一二三四区| 欧美精品自拍偷拍| 91精品在线一区二区| 在线免费观看一区| 欧美日韩国产综合草草| 3751色影院一区二区三区| 91精品福利在线一区二区三区| 91麻豆精品国产91久久久更新时间| 国产精品亚洲一区二区三区妖精 | 欧美肥妇bbw| 欧美一区二区三区电影| 久久精品视频免费观看| 国产精品国产a| 日产欧产美韩系列久久99| 青青草成人在线观看| 国产一区二区三区免费| 国产成人综合在线| yourporn久久国产精品| 欧美r级在线观看| 欧美亚洲国产怡红院影院| 欧美一区二区黄色| 2023国产精华国产精品| 亚洲欧美日本韩国| 亚洲18色成人| 成人av在线播放网址| 91免费看视频| 欧美日韩国产成人在线91| 欧美无砖专区一中文字| 久久亚洲春色中文字幕久久久| 国产精品伦一区| 亚洲精品视频在线| 亚洲国产日韩一级| 粉嫩在线一区二区三区视频| 欧美日韩一区二区三区在线 | 91色九色蝌蚪| 精品日本一线二线三线不卡| 中文字幕在线一区| 另类小说综合欧美亚洲| 欧美影片第一页| 亚洲欧洲在线观看av| 国产精品一区专区| 日韩精品一区二区三区在线播放| 国产精品麻豆欧美日韩ww| 美腿丝袜亚洲综合| 色狠狠av一区二区三区| 久久久亚洲综合| 亚洲综合区在线| 国产精品视频yy9299一区| 国产精品欧美久久久久无广告 | 高清不卡一区二区在线| 欧美xingq一区二区| 亚洲免费色视频| 99久久精品免费看| 国产精品亲子伦对白| 久久国产精品一区二区| 欧美日本韩国一区二区三区视频 | 国产日韩欧美高清在线| 免费观看成人鲁鲁鲁鲁鲁视频| fc2成人免费人成在线观看播放| 欧美精品久久天天躁| 秋霞午夜鲁丝一区二区老狼| 91精品国产综合久久久蜜臀粉嫩| 国产成人亚洲综合a∨猫咪| 精品国产欧美一区二区| 一区二区三区精密机械公司| 99精品欧美一区二区三区小说| 国产香蕉久久精品综合网| 99久久99久久精品免费观看| 一个色妞综合视频在线观看| 色婷婷综合中文久久一本| 亚洲1区2区3区视频| 欧美精品一区二区精品网| 成人一区二区在线观看| 亚洲国产一区视频| 国产亚洲成aⅴ人片在线观看 | 国产一区二区三区精品视频| 国产精品不卡视频| 欧美日韩精品是欧美日韩精品| 久久99精品久久久久婷婷| 最近中文字幕一区二区三区| 日韩欧美精品在线视频| 黑人巨大精品欧美一区| 午夜一区二区三区视频| 欧美激情综合在线| 欧美视频一区二区| 91小视频在线| 精品一区二区三区不卡| 日本午夜精品视频在线观看| 国产欧美一区在线| 精品剧情在线观看| 69精品人人人人| 91精品国产综合久久蜜臀| 欧美日韩精品欧美日韩精品一| 成人黄色在线网站| 国产成人精品免费在线| 国产伦理精品不卡| 婷婷六月综合亚洲| 日韩专区在线视频| 日韩国产精品大片| 另类小说综合欧美亚洲| 麻豆极品一区二区三区| 久久99久久久欧美国产| 麻豆久久久久久| 玖玖九九国产精品| 成人永久aaa| 日韩黄色在线观看| 国产一区 二区 三区一级| 处破女av一区二区| 91丨九色porny丨蝌蚪| 欧美日韩久久久| 欧美一区二区三区四区在线观看 | 国产精品白丝jk黑袜喷水| 欧美mv和日韩mv国产网站| 欧美一区二区国产| 久久久久久久久久久黄色| 中文字幕 久热精品 视频在线| 国产精品免费网站在线观看| 久久99精品网久久| 国产毛片精品国产一区二区三区| 久久精品人人做人人爽人人| 亚洲乱码精品一二三四区日韩在线| 亚洲三级在线免费观看| 狠狠色2019综合网| 欧美日韩国产区一| 国产精品国产精品国产专区不片| 香蕉av福利精品导航| 色婷婷av一区二区| 日韩视频在线你懂得| 亚洲免费av观看| 99精品视频在线观看| 久久蜜桃av一区精品变态类天堂| 亚洲一区二区免费视频| 99久久久国产精品| 久久久久久久久久电影| 全部av―极品视觉盛宴亚洲| 色嗨嗨av一区二区三区| 国产精品萝li| 成人av资源下载| 精品一区二区三区在线观看国产| 91福利小视频| 亚洲永久免费视频| 93久久精品日日躁夜夜躁欧美| 日韩美女视频在线| 久久国产麻豆精品| 国产精品久久久久久久久动漫| 国产在线精品视频| 欧美国产一区在线|