如何在我的代码中包装python守护进程
我现在有一台使用Tornado的工作服务器,答案如下: 我想把它后台化。我已经一遍又一遍地阅读这个守护进程类示例,但我不知道它是如何包装我的服务器代码的。我是否只是将_umain__;中的所有代码都放在覆盖的运行中 如果它在另一个文件中,我如何对它进行子类化?确保它位于同一目录中,并且使用不带.py扩展名的文件名进行导入 我只是在寻找运行python web服务器脚本的最简单方法,只需一个简单的调用,例如./startserver.sh,如果我要使用bash脚本,并在后台运行它,而没有nohup.out文件,并且所有stdout和stderr都重定向到日志文件。尝试在Linux上使用supervisor守护程序包。它可以让您轻松地将事情后台化 对于Ubuntu:sudo-apt-get-install-supervisor 创建conf.d文件: cd/etc/supervisor/conf.d/ vim pyhttpd.conf 在pyhttpd.conf中: 最后,使用新配置更新supervisor: 监管者更新 它应该为您启动,现在将在您启动时运行 以下命令也可用: 监督员停止pyhttpd supervisorctl启动pyhttpd supervisorctl重新启动pyhttpd stdout和stderr被记录到/var/log/supervisor/目录。尝试在Linux上使用supervisor守护程序包。它可以让您轻松地将事情后台化 对于Ubuntu:sudo-apt-get-install-supervisor 创建conf.d文件: cd/etc/supervisor/conf.d/ vim pyhttpd.conf 在pyhttpd.conf中: 最后,使用新配置更新supervisor: 监管者更新 它应该为您启动,现在将在您启动时运行 以下命令也可用: 监督员停止pyhttpd supervisorctl启动pyhttpd supervisorctl重新启动pyhttpd如何在我的代码中包装python守护进程,python,daemon,tornado,Python,Daemon,Tornado,我现在有一台使用Tornado的工作服务器,答案如下: 我想把它后台化。我已经一遍又一遍地阅读这个守护进程类示例,但我不知道它是如何包装我的服务器代码的。我是否只是将_umain__;中的所有代码都放在覆盖的运行中 如果它在另一个文件中,我如何对它进行子类化?确保它位于同一目录中,并且使用不带.py扩展名的文件名进行导入 我只是在寻找运行python web服务器脚本的最简单方法,只需一个简单的调用,例如./startserver.sh,如果我要使用bash脚本,并在后台运行它,而没有nohup
stdout和stderr被记录到/var/log/supervisor/目录中。让我们保持简单。项目树:
$ tree
.
├── daemon.py
├── main.py
├── server.py
└── __init__.py
daemon.py是来自的守护程序类,server.py是来自的代码的线程版本,_init__;。py是一个空文件,允许我们从目录中的其他文件导入代码。main.py是:
使用以下命令运行它:
$ python main.py start
对于更改后的第一个版本
如果uuu name uuuu='uuuu main uuuuu':定义myfun:并从守护程序子类的run方法调用它。让我们保持简单。项目树:
$ tree
.
├── daemon.py
├── main.py
├── server.py
└── __init__.py
daemon.py是来自的守护程序类,server.py是来自的代码的线程版本,_init__;。py是一个空文件,允许我们从目录中的其他文件导入代码。main.py是:
使用以下命令运行它:
$ python main.py start
对于更改后的第一个版本
如果要定义myfun:并从守护程序子类的run方法调用它,我的python代码必须包含任何分叉代码等才能工作,还是可以是一个简单的python脚本,我更喜欢一些可移植的东西,这样我就可以把脚本带到任何地方运行,而不需要像这样的主要依赖项。我必须投票支持这个选项。Supervisor还添加了CTL和web界面,您可以使用该界面启动/停止服务、查看日志文件等。我的python代码是否必须包含任何分叉代码等才能正常工作,还是可以是一个简单的python脚本,我更喜欢一些可移植的东西,这样我就可以把脚本带到任何地方运行,而不需要像这样的主要依赖项。我必须投票支持这个选项。Supervisor还添加了CTL和web界面,您可以使用这些界面启动/停止服务、查看日志文件等。