2016-11-14 131 views
0

正如我們所知,如果運行應用程序也管理主內存中的會話,那麼服務器是否有任何方式將響應發送到所有Web客戶端/瀏覽器,以便在數據庫中記錄新的數據。替代服務器輪詢?

記住:我還沒有做出服務器或輪詢服務器的新記錄更新的任何請求..

讓服務器不作web請求的響應..

目的: 沒有所有的Web瀏覽器每隔一定的時間間隔向服務器發出請求或輪詢,因此降低了應用程序內存的性能問題。

我只是對從每一個網絡客戶端使得如此多的Ajax調用的..

你過去需要你的想法,如果遇到類似的..

回答

1

讀有關的WebSockets和socket.io。 基本上與socket.io你有一個連接在瀏覽器(客戶端)和服務器之間打開,服務器可以發送客戶端接收的數據作爲事件。 客戶端不需要發送請求來獲取該數據,只需打開Web套接字連接。

你可以看看socket.io聊天例如:http://socket.io/get-started/chat/

+0

Hurreeeyyyy,這就是我需要的東西.. 感謝Sagie .. –

+0

嘿sagie,需要一個更多的幫助..請告訴我如何開始使用Web桌面通知 –

+0

有一個通知GitHub的項目,可以幫助你: https://github.com/ttsvetko/HTML5-Desktop-Notifications。如果你正在使用角度,我也寫了一個:https://github.com/sagiegurari/angular-web-notification – sagie

0

WebSocket的是,如果你不想經歷的麻煩學習角或他人最好的和簡單的解決方案。

服務器端和客戶端都可以構建WebSocket,並且它充當了來回傳輸數據的橋樑。

我剛剛爲此創建了一個簡單的解決方案。

請檢查我的新庫wsm - WebSocket Manager,它適用於服務器端和客戶端。

Websocket Server可以輕鬆構建;這個庫包含幾個有用的功能。

+0

肯定傑夫,會看到相同的,並讓你知道我的反饋.. –

+0

同時我想知道,什麼應該是通過網絡套接字開發自己的聊天工具的優化方式?只需要你可以分享的任何東西。我的前端是angularjs,後端是nosejs .. –

+0

我對AngularJs沒有深入的瞭解。就我所知,Angularjs本身可以直接與服務器通信。你需要花時間研究它。 –