嗨,以前我在Windows上托管我的应用程序,并编写了一个服务来检查RUNNING_PID文件,如果该进程不存在,请启动一个新的shell并再次启动该应用程序。在Linux机器上分配/托管应用程序
我目前使用脚本分发应用程序:play clean update dist。所以这创建了我的.jar文件和我的启动脚本
但是现在我正在尝试在Linux上安装系统(Ubuntu,但如果更容易更改)。我打算编写一个python脚本来做同样的事情,并将它作为cron作业来检查它每15分钟运行一次。脚本会检查文件pid,确保它正在运行,然后启动服务。这是行得通的,但当我启动一个新的子进程时:./start &它打印出所有播放输出并等待进程关闭。
有没有更好的方法来为playframework创建看门狗类型的服务?
即使我尝试从shell运行./start &脚本,它也不会启动新的后台线程。
是的,我认为端口监听是一个伟大的想法感谢。不幸的是,尽管这个问题仍然不会导致脚本结束。我想启动一个不会阻塞原始python脚本的进程。但是启动NettyServer命令时会锁定python脚本。如果你输入以上内容:nohup java $ * -cp $ classpath play.core.server.NettyServer dirname $ 0> out.txt&在bash脚本中它锁定了当前的终端屏幕。我如何解决这个问题 – user1434177
我认为,最好是参考与Python有关的文档,了解如何开始一个新线程。例如。 http://softwareramblings.com/2008/06/running-functions-as-threads-in-python.html –