需要让我的Python网页应用程序像守护进程一样自我监控(保持活动)
我用BaseHTTPServer写了一个Python网页应用,它是为了在本地运行,处理本地的请求。这个应用打算放在一个大的虚拟专用服务器(VPS)上。
所以我需要一个可靠的方法来保持它运行。像Apache这样的服务器,如果停止了,可以很容易地重新启动。同样,我可以设置CRON定时任务,让它定期执行“tomcat start”,这样如果服务停止了,它就会自动启动。
那我该怎么让我的Python应用也能保持运行呢?我希望能有一种方法,可以让CRON来控制它。
3 个回答
0
另一个选择可以是类似于这里提到的自我监控脚本(使用 subprocess
)。虽然这个参考资料可能不是最全面的,但应该能帮助你入门:http://www.tsheffler.com/blog/?p=377
4
第一种方法是使用 supervisor。另一种选择是使用 python-daemon,并创建一个系统级的启动脚本,这样系统启动时就会自动运行。
3
你需要的是一个进程监控工具,比如之前提到的 supervisord,不过还有很多其他的选择,比如 God、Monit、Upstart 等等。
我自己只用过 supervisord,它有一个 XMLRPC 接口,你可以从其他应用程序使用这个接口,比如通过 CRON 运行的程序。