嗨,以前我在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 –