2014-06-10 134 views
1

我有這種情況,我需要將數據存儲在數據庫中,並將事件發送到特定的套接字。這可以通過兩種方式來完成:Node.js:SocketIO vs http請求性能

  1. 發射從客戶端的事件,聽在服務器端這種情況下,存儲數據和事件發出我們想要的插座。

  2. 發送一個http請求到服務器,在那裏我存儲數據並將事件發送到套接字。

我想知道這些方法中哪一個是有效的,是否有比這兩個更好的解決方案。

回答

1

我想說,如果您已經在使用SocketIO,那麼使用選項1從客戶端發出事件可能是個好主意。我不確定你的應用程序是如何構建的,但我認爲,當你首先使用SocketIO時,無論如何你都將通過那裏完成你所有的服務器端通信。

HTTP請求對他們有一個明顯的開銷,因爲他們 - 至少 - 發送頭到服務器。

但是,當您開始long polling時,您總是需要確保它不會在服務器上創建大量負載。現在我看到你的主題有node.js,我希望你能使用它。如果是這樣的話,那麼這將不會產生任何問題,因爲node.js在處理這些請求方面非常好,幾乎不需要系統資源的成本。

免責聲明:我對原料的技術細節,這是最好與否,我不過是開發商有自己的見解方面的專家。我不介意投票,但請讓我知道爲什麼我們都可以學習。