2012-03-07 37 views
21

LearnBoost似乎有一個名爲engine.io的新項目,理論上它似乎與socket.io類似。 1)在什麼情況下你會使用一個與另一個? 2)對於需要通過node.js進行基於HTML5套接字通信的新項目,我們應該使用engine.io而不是socket.io?engine.io與socket.io有什麼不同?

+7

重複? http://stackoverflow.com/questions/8542502/whats-the-difference-between-engine-io-and-socket-io – DashK 2012-03-08 00:10:44

回答

19

https://github.com/LearnBoost/engine.io

引擎的主要目標是確保最可靠的實時通信。與以前的socket.io內核不同,它始終首先建立一個長輪詢連接,然後嘗試升級到更好的側面「已測試」的傳輸。

在socket.io項目的生命週期中,依靠HTML5 WebSocket或Flash Socket作爲第一個連接機制,我們發現了無數的缺陷。

這兩者顯然都是建立雙向通信的正確方式,HTML5 WebSocket成爲未來的方式。但是,爲了應對大多數業務需求,替代傳統的HTTP 1.1機制與提供相同的解決方案一樣好。

+0

引擎是一個較低級別的lib。如果您需要多路複用或重新連接,請使用Socket.IO而不是引擎 – Julian 2016-06-28 20:47:55

12

engine.io是socket.io新的核心,所以除非你想一些其他的API socket.io使用:-) 根據這兩個模塊的作者,引擎將被整合進socket.io 1.0 : http://groups.google.com/group/socket_io/browse_thread/thread/6e759a508b231b4

「接下來會發生什麼

1.0是對周圍的角落,那裏設有我們的下一代實時 核心,Engine.IO 的0.9分支只會接受維護,更新,以確保最大 穩定性。 「

+7

我會說0.9在當前狀態下可以使用,但它不適用於許多不同的客戶端情況。 1.0已經很長一段時間了。時間放棄,只是使用engine.io我認爲。 – 2012-10-13 06:26:13

+0

至少它似乎仍在開發中,認爲它已被放棄。 – 2013-03-25 19:56:22

+1

http://socket.io/已經是1.3.5版本,並且效果很好。 – 2015-06-26 21:50:50

相關問題