[英]How to run a Python package as a scheduled daemon job?
我已經創建了一個 Python 包並在 PyPI 上發布了它,比如spamandeggs
。 該軟件包是跨平台的(Windows、GNU/Linux、MacOSX),旨在定期(例如每 5 分鍾)向用戶更新某些信息。 該軟件包可以通過命令spamtheeggs
從命令行spamtheeggs
。
以下是我面臨的問題:
問題 01 :如何守護通過spamtheeggs
命令運行的腳本?
問題:按照這個答案,我嘗試在我的腳本中使用schedule
。 這適用於調度,但執行不是守護進程。 終端在整個過程中都處於忙碌狀態。
我想知道一種守護 Python 包的方法。
問題 02 :如何將命令添加為定時執行的 cron 作業?
解決方案 01 :一種方法是編寫描述該過程的安裝指南(使用crontab -e
等編輯 crontab)。 缺點:不吸引人。
解決方案02 :作為包的作者,我希望能夠將此命令添加到用戶的crontab中(顯然是在獲得用戶確認后)。
選項:
我想知道哪個選項是合適的(如果有的話)以及關於我如何着手處理它們的任何提示。
到目前為止我已閱讀的資源列表:
注意:如果該解決方案適用於所有 3 個平台,我將不勝感激。
PS:這是我第一次嘗試 cron 和守護進程。
python-deamon
包可以幫助你,它有兩種工作模式:
使用跑步者(我認為這正是你想要的): http : //www.gavinj.net/2012/06/building-python-daemon-process.html
或者直接使用daemon.DaemonContext
運行(一種更傳統的方式)
python-deamon
沒有文檔,但我找到了一些可以幫助你的代碼http://www.programcreek.com/python/example/10392/daemon.DaemonContext
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.