2010-05-11 76 views
6

我有一個用PHP編寫的現有應用程序(使用Kohana框架),我想做長時間輪詢。從我讀的一些東西看來,使用PHP進行長時間輪詢並不可取,使用像nodejs這樣的東西是更好的選擇。我的問題是什麼是將nodejs(或其他適合長時間輪詢的工具)與現有應用程序集成的最佳方法?關於將nodejs與php應用程序集成的建議

澄清我的應用程序基本上是一個瀏覽器插件,你可以用它來發送數據給其他人的羣組。當發送這些數據時,我希望收件人(如果他們在線並且擁有瀏覽器插件)立即接收該數據並收到通知。

回答

15

可能最好的方法是讓node.js監聽端口並讓PHP將消息發送到該端口。

在Node.js中,您可以打開一個用於偵聽的套接字,並且在PHP中可以使用cURL發送消息。這些消息可以採用JSON格式。

如果Node.js-part收到一條消息,它可能會在可能經過一些處理之後直接將它轉發給長輪詢瀏覽器。

+2

有趣。因此,對於聊天應用程序,客戶端將消息發佈到PHP腳本,同時長時間輪詢Node.js服務器的響應。當PHP收到足夠的消息時,它將它們傳遞給Node.js「調度程序」以發佈給所有人。正確? – 2011-06-11 13:16:04

-1

我正在創建一個可以讓你輕鬆做到這一點的小黑客。它處於非常早期階段,但它有足夠的代碼可以工作:https://github.com/josebalius/NodePHP

我計劃在今天晚些時候更新自述文件。

+2

鏈接是404 :( – sdouglass 2012-05-25 21:08:32