您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

守护程序vs Upstart for python脚本

守护程序vs Upstart for python脚本

从您提到的Upstart,我将假设该问题是针对在ubuntu服务器上运行的服务的。

ubuntu服务器上,启动新工作实际上是创建始终运行的服务的最简单,最方便的选择,该服务在正确的时间启动,并可以通过熟悉的命令停止或重新加载。

要创建新贵服务,您需要向添加一个文件/etc/init。叫<service-name>.conf。示例脚本如下所示:

description "My chat server"
author "your@email-address.com"

start on runlevel [2345]
stop on runlevel [!2345]

env AN_ENVIRONMENTAL_VARIABLE=i-want-to-set

respawn

exec /srv/applications/chat.py

这意味着,每当机器启动时,它将启动chat.py程序。如果死于任何原因,它将重新启动它。您不必担心双重派生或以其他方式守护您的代码。由新贵为您解决

如果您想停止或启动过程,可以使用

service chat start 
service chat stop

名称chat是从.conf内部文件名称自动找到的/etc/init

我只在这里介绍新贵的基础知识。还有许多其他功能使其变得更加有用。通过运行全部可用man upstart

与编写自己的守护程序代码相比,此方法更加方便。与使您的代码安全地进行两次分叉,然后由另一个进程对其进行监视以确保其不会消失相比,内置的Ubuntu组件的4-8行配置文件易于出错。

Monit有点像鲱鱼。如果要停机提示,则无论如何都需要在 服务器上运行监视程序。依靠新贵使进程始终在服务器上运行。然后使用另一项服务,以确保服务器实际正在运行。造成停机的原因有很多。如果服务器本身发生故障,则在同一服务器上运行的进程将不会告诉您任何信息。您需要一台单独的计算机(或诸如pingdom之类的第三方提供商)来提醒您这种情况。

python 2022/1/1 18:30:19 有289人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶