我创建了一个Python包,并在PyPI上发布,比如说spamandeggs
。该软件包是跨平台的(Windows,GNU / Linux,MacOSX),旨在定期更新用户(比如说每5分钟一次)。可以通过命令spamtheeggs
从命令行运行该程序包。
以下是我面临的问题:
问题01 :如何守护通过spamtheeggs
命令运行的脚本?
问题 :在this回答后,我尝试在我的脚本中使用schedule
。这适用于调度,但执行不会被守护。终端忙于整个过程
我想知道一种守护Python包的方法。
解决方案01 :执行此操作的一种方法是编写描述该过程的安装指南(使用crontab -e
编辑crontab等)。
缺点:没有吸引力。
解决方案02 :作为软件包的作者,我希望能够将此命令添加到用户的crontab中(显然是在获得用户的确认之后)。
选项:
我想知道哪个选项适合(如果有的话)以及如何处理它们的任何提示。
到目前为止我读过的资源清单:
注意:如果解决方案适用于所有3个平台,我将不胜感激 P.S:这是我第一次尝试cron和daemon的工作。
答案 0 :(得分:1)
public function destroy($id)
{
$post = Post::where('id', $id)->first();
if($post && $post->user_id == \Auth::user()->id){
$post->delete();
return view('/home');
}else{
abort(404);
}
}
包可以帮助您,它有两种模式:
使用跑步者(我认为这正是你想要的):http://www.gavinj.net/2012/06/building-python-daemon-process.html
或直接使用python-deamon
(更传统的方式)
daemon.DaemonContext
没有文档,但我找到了一些可能对您有帮助的代码http://www.programcreek.com/python/example/10392/daemon.DaemonContext