2016-09-27 80 views
0

我正在使用Symfony framework3和Pheanstalk bundle和Doctrine。我創建了將數據發送到beanstalk的事件。不同服務器上的另一個SF應用程序執行作業並更新第一個SF應用程序的通知狀態以完成。如何檢查時,狀態更新和超過設置的報警這樣的:作業完成時發出通知響應

http://byrobin.nl/store/wp-content/uploads/sites/4/2016/03/local.png

我可以創建具有不定式環路和檢查狀態更新,更新前的上也許聽衆的命令?另外,我也遇到了運行命令來檢查和執行beanstalk作業的問題。在開發模式中,我手動運行它,但我嘗試像while(true)這樣的不定式循環,但它加載了我的緩衝區和崩潰。我正在考慮每分鐘或兩分鐘運行一次的cron作業?這兩個問題的最佳解決方案是什麼?有什麼建議?

回答

0

1)這對WebSockets來說是好的,因爲它不涉及while(true)循環。在任務提交處理後,websocket可以通過前端打開。作業完成處理後,它會通知WebSocket的服務器端將信息傳遞迴前端的套接字。

2)另一種選擇是提交一個消息,並在參數名稱匿名管(根據時間和一些前綴使一個獨特的名字)工人需要把答案。在提交作業之前,您將beanstalkd訂閱到匿名通道,然後提交作業,作業結束後會將答案發布到管道。由於已有用戶,因此它將保留該作業並處理該作業,然後將其刪除,並且也將其移除。