2011-01-08 74 views
0

我想我只是錯過了一些讓我無法看到整個圖片的細節。將Ajax Web應用程序遷移到Web套接字

我有一個Web應用程序每x次使用ajax請求來更新客戶端的新信息或任務。

我也有一個很長的運行在服務器上的過程是一個java計算引擎。我希望這個引擎發送更新到客戶端。

  1. 我想知道如何將我的web應用程序遷移到使用websocket。可能是phpwebsocket或類似的。我的服務器可以「決定」將信息發送給特定的客戶嗎?看起來可能看着php-websocket。

  2. 我的java後端可以使用websocket服務器發送通知給特定的客戶端。怎麼樣?以及我可以說,我的Java應用程序可以使用可以通過websocket而不是http發送的類。

但WebSocket的服務器是如何知道哪個客戶端發送「信息」。我很困惑這一切。任何可以更詳細地解釋這個問題的文件?看起來websocket可以創建我的web應用程序的一個實例。

由於

+1

fyi-一些最近的websockets安全問題,你可能想在編碼之前先閱讀它。 – goat 2011-01-08 04:58:57

回答

0

你的服務器,這將有活性客戶端套接字的任意數量,決定寫入(可能響應於來自用戶的輸入),它的。

phpwebsocket(這仍然是圍繞非常粗糙的邊緣)具有User$id$socket(這是基本的TCP套接字),和$handshake領域。您可以使用有關User的附加元數據(例如計算標識符)擴展該類。或者,您可以使用從計算ID到User的數組映射。

也許當Java計算n完成時,您可以查找與該計算關聯的套接字並寫入其套接字。

+0

我的Java計算可以「POST」到ws:// mydomain/mysocketapp?user = xx; msg =「completed」。然後websocket將找到相應的用戶/套接字並將「回顯」消息發送給用戶。 – Bastan 2011-01-10 13:32:14

相關問題