最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python使用Supervisor來管理進程的方法

 更新時間:2015年05月28日 12:33:20   作者:imzoer  
這篇文章主要介紹了Python使用Supervisor來管理進程的方法,涉及Supervisor的相關使用技巧,需要的朋友可以參考下

本文實例講述了Python使用Supervisor來管理進程的方法。分享給大家供大家參考。具體分析如下:

Supervisor可以啟動、停止、重啟*nix系統(tǒng)中的程序。也可以重啟崩潰的程序。

supervisord的一個守護進程,用于將指定的進程當做子進程來運行。

supervisorctl是一個客戶端程序,可以查看日志并通過統(tǒng)一的會話來控制進程。

看例子:

我們寫了一個py腳本,用于往log文件中記錄一條當前的時間。

root@ubuntu:/home/zoer# cat daemon.py
#!/usr/bin/env python
import time
import os
time.sleep(1)
f=open("log",'a')
t=time.time()
f.write(str(t))
f.write("\n")
f.close()

安裝過程就不說了。

安裝完畢supervisor之后【將配置文件放在/etc下】。修改配置文件,在最后增加如下內容:

[program:ddd]
command=/home/zoer/daemon.py
autorestart=true

然后我們啟動supervisor并啟動daemon.py的執(zhí)行。

root@ubuntu:/home/zoer# supervisord 
/usr/local/lib/python2.7/dist-packages/supervisor-3.0b1-py2.7.egg/supervisor/options.py:286: UserWarning: Supervisord is running as root and it is searching for its configuration file in default locations (including its current working directory); you probably want to specify a "-c" argument specifying an absolute path to a configuration file for improved security. 
 'Supervisord is running as root and it is searching ' 
root@ubuntu:/home/zoer# supervisorctl 
ddd               STARTING   
supervisor> start ddd 
ddd: ERROR (already started) 
supervisor> stop ddd 
ddd: stopped 
supervisor> start ddd 
ddd: started 
supervisor>

從上面的例子中,看到,可以通過start或者stop命令來啟動或者停止ddd這個進程。ddd這里就是我們在配置文件中增加的內容(daemon.py這個腳本)。

也可以使用restart。如下:

supervisor> restart  ddd
ddd: stopped
ddd: started

下面我們測試一下,假設說我們手動kill掉了ddd這個進程,那么ddd會自動恢復執(zhí)行嗎?

為了做實驗,把代碼修改如下:

root@ubuntu:/home/zoer# cat daemon.py  
#!/usr/bin/env python 
import time 
import os 
while True: 
  time.sleep(1) 
  f=open("log",'a') 
  t=time.time() 
  f.write(str(t)) 
  f.write("\n") 
  f.close()

通過ps可以找到這個進程的id:

root   9354 0.2 0.4 10924 4200 ?    S  23:16  0:00 python /home/zoer/daemon.py 
root   9395 0.0 0.0  4392  832 pts/3  S+  23:17  0:00 grep --color=auto daemon 
root@ubuntu:/home/zoer#

看下面的操作:

root@ubuntu:/home/zoer# rm log;touch log;kill 9354
root@ubuntu:/home/zoer# cat log 
1364710712.51 
root@ubuntu:/home/zoer# cat log 
1364710712.51 
1364710713.51 
root@ubuntu:/home/zoer# cat log 
1364710712.51 
1364710713.51 
root@ubuntu:/home/zoer# cat log 
1364710712.51 
1364710713.51 
1364710714.52 
root@ubuntu:/home/zoer# cat log 
1364710712.51 
1364710713.51 
1364710714.52 
1364710715.52

刪除了log文件,并且重新創(chuàng)建。然后干掉了daemon.py的那個進程。會發(fā)現(xiàn)log內容又重新有新的內容了。再次ps查看進程號。

root   9429 0.1 0.4 10924 4200 ?    S  23:18  0:00 python /home/zoer/daemon.py 
root   9440 0.0 0.0  4392  828 pts/3  S+  23:19  0:00 grep --color=auto daemon 
root@ubuntu:/home/zoer#

會發(fā)現(xiàn)進程號已經(jīng)變成9429了。說明supervisor已經(jīng)重啟了被干掉了的進程。

希望本文所述對大家的Python程序設計有所幫助。

相關文章

  • Python編寫生成驗證碼的腳本的教程

    Python編寫生成驗證碼的腳本的教程

    這篇文章主要介紹了Python編寫生成驗證碼的腳本的教程,驗證碼在web編程中幾乎是必備的功能,需要的朋友可以參考下
    2015-05-05
  • python 自動軌跡繪制的實例代碼

    python 自動軌跡繪制的實例代碼

    今天小編就為大家分享一篇python 自動軌跡繪制的實例代碼,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07
  • 詳解Python中的多線程編程

    詳解Python中的多線程編程

    這篇文章主要介紹了詳解Python中的多線程編程,Python中的多線程一直是Python學習中的重點和難點,要反復鞏固!需要的朋友可以參考下
    2015-04-04
  • python神經(jīng)網(wǎng)絡MobileNetV2模型的復現(xiàn)詳解

    python神經(jīng)網(wǎng)絡MobileNetV2模型的復現(xiàn)詳解

    這篇文章主要為大家介紹了python神經(jīng)網(wǎng)絡MobileNetV2模型的復現(xiàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-05-05
  • Python設計模式之命令模式簡單示例

    Python設計模式之命令模式簡單示例

    這篇文章主要介紹了Python設計模式之命令模式,簡單介紹了命令模式的概念、原理,并結合實例形式分析了Python命令模式的定義與使用相關操作技巧,需要的朋友可以參考下
    2018-01-01
  • Python Pygame實現(xiàn)兔子獵人守護城堡游戲

    Python Pygame實現(xiàn)兔子獵人守護城堡游戲

    這篇文章主要介紹了用python來制作的一個守護類小游戲兔子獵人守護城堡,文中的示例代碼介紹得很詳細,感興趣的小伙伴快來跟隨小編一起學習學習吧
    2021-12-12
  • python中from import的使用解讀

    python中from import的使用解讀

    本文總結了Python中from和import的使用方法,包括導入模塊和導入模塊中的對象,強調了模塊和對象的概念,并給出了具體的使用示例,最后,建議根據(jù)代碼維護性和團隊編碼風格來選擇合適的導入方式
    2025-03-03
  • python?特有語法推導式的基本使用

    python?特有語法推導式的基本使用

    python中有一種特有的語法,就是推導式(又稱為解析式)。推導式是可以從一個數(shù)據(jù)序列構建另一個新的數(shù)據(jù)序列的結構體
    2022-03-03
  • Python中常用數(shù)據(jù)類型使用示例概括總結

    Python中常用數(shù)據(jù)類型使用示例概括總結

    這篇文章主要為大家介紹了Python中常用數(shù)據(jù)類型使用示例概括總結,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-04-04
  • Python streamlit構建令人驚嘆的可視化Web高級主題界面

    Python streamlit構建令人驚嘆的可視化Web高級主題界面

    本文將深入探討Streamlit的方方面面,從基礎使用到高級主題,從數(shù)據(jù)可視化到部署與分享,更涵蓋了性能優(yōu)化、安全性考慮等最佳實踐,通過豐富的示例代碼和詳細解釋,將能夠全面了解Streamlit的強大功能,并在構建數(shù)據(jù)驅動應用時游刃有余
    2024-01-01

最新評論

拜城县| 泰顺县| 建宁县| 江口县| 图们市| 颍上县| 贡觉县| 吐鲁番市| 明光市| 西畴县| 灵山县| 阿图什市| 曲阜市| 聊城市| 宜宾县| 栾城县| 鄂伦春自治旗| 崇义县| 鲁甸县| 临海市| 隆安县| 黄冈市| 习水县| 通许县| 东方市| 衡南县| 兴安县| 新化县| 恩施市| 兴城市| 通道| 吴桥县| 临西县| 石河子市| 平罗县| 峨眉山市| 齐河县| 辽宁省| 盐源县| 南郑县| 福泉市|