2015-08-13 31 views
2

我在連接到Twitter流式API的Laravel(L5)中創建了一個命令,並且可以使用php artisan collect-tweets。當我在本地運行它時,因爲它是一個持久連接,它本質上在終端窗口中無限運行。我現在已經將應用程序部署到了Laravel Forge,我希望它能夠運行該命令,而不是終止進程。我已閱讀here的回答,但是我想知道是否有另一種方法在Laravel Forge上運行長時間運行(無限)工匠命令 - 可能使用守護進程工作人員?Laravel Forge使用守護進程的長時間運行工匠命令

我已經試過什麼:

  1. 創建通過僞造控制檯守護程序和執行「mysite.co.uk/php匠人我的命令」(不工作)
  2. 創建run.sh其包含php artisan collect-tweets並試圖通過創建一個守護進程來運行命令是mysite.co.uk/run.sh。這給我一個錯誤說,它不能找到命令工匠
  3. 給守護進程的完整路徑run.sh腳本可以/home/forge/mysite.co.uk/run.sh這給出了一個錯誤說Exited too quickly (process log may have details)(經典問題...)

任何想法如何我能達到我的目標嗎?

回答

0

對於Forge我知道的很少,所以我提出的這個解決方案不是該層的一部分,也不是Laravel層的一部分,但是如果你可以獲得命令行訪問權限,這可能會起作用。

我已經看到關於這個提到的其他消息「不要關閉終端」,這是一個黑客的做法,但在Linux中有一個命令nohup如果你需要它,你可以找到一些例子。或者您可能會參考的this question

0

用於第一點應該是

php /home/forge/my-site.com/artisan my-command 

使用其作爲後臺進程U可以例如

sudo /home/forge/my-site.com/node socket.js 
相關問題