不排隊工作,而不是來自客戶端的ajax調用,只是在服務器端異步啓動另一個工作,Drupal(7.x)可以做這樣的事情嗎?Drupal有任何異步功能在服務器端使用?
0
A
回答
1
實現這一點,您需要一個或多個進程在後臺運行並執行異步任務。作爲一個(傳統的)PHP應用程序,Drupal不提供這樣的過程。根據您的服務器配置,運行Drupal來處理HTTP請求的PHP進程在這些請求之間停止或閒置。當他們開始時,他們使用乾淨的狀態。他們也需要在處理HTTP請求的時候死掉,並且AFAIK沒有選擇讓他們留下來完成一些事情。所以沒有可用於執行異步任務的進程。
使用Drupal Queue API,您可以輕鬆排入您的任務,並讓外部進程異步進行挑選和處理。您可能不希望僅在Drupal cron運行期間處理它們,這將成爲Drupal中隊列的默認行爲。相反,您可以使用像Gearman,Beanstalkd甚至Redis這樣的隊列管理器,並有一個單獨的進程監聽它,收集入隊的項目並儘快處理它們。
Beanstalkd integration module提供了一個守護進程腳本來處理在後臺排隊的項目,有效地提供了一個隨時可用的解決方案。
相關問題
- 1. 異步Web服務回調 - 如何有兩個功能在服務器端
- 2. 如何調用異步任務功能?
- 3. 使用AJAX運行服務器端(VB)功能確實沒有任何功能?
- 4. 創建通用異步任務功能
- 5. 客戶端與服務器端異步
- 6. WCF服務器端異步調用
- 7. 任務調度程序與WCF服務參考異步功能
- 8. C#異步功能任務<int>
- 9. 轉換功能,以異步任務
- 10. 異步任務2個功能doInBackground
- 11. 趕上服務器端異常在Windows Phone的異步服務
- 12. 客戶端異步WCF Vs服務器端異步WCF
- 13. 服務器端異步最佳實踐
- 14. WCF異步服務器端處理
- 15. 異步服務器端TCP/IP
- 16. 異步客戶端服務器WCF
- 17. 處理異步服務器端操作
- 18. Java nio服務器客戶端異步
- 19. C++ recv異步服務器客戶端
- 20. 用於服務器端Web服務異步
- 21. 使用異步任務取消任務
- 22. 調用JavaScript功能服務器端
- 23. 調用服務器端功能
- 24. 在服務器端測試Flash功能
- 25. 使用異步任務
- 26. 使用UI功能加載WCF服務的異步數據
- 27. 如何使Tornado服務器端真的異步
- 28. 異步NSURLConnection的有時沒有達到服務器端
- 29. ASP.NET - 使異步調用服務器
- 30. 使用Java的異步服務器NIO
這就是排隊工作是... – ceejayoz
什麼樣的事件會開始這項工作?它是否在服務器cron上啓動,或者用戶操作是否觸發它? – mgadrat
在一個特定情況下,節點成功保存後。服務器可以做更多的東西,而不會干擾用戶看到的正常的Drupal行爲。 – Hao