在找基于nodejs的websocket組件,找到ws和socket.io。
發現在github上,socket.io的star數是49k,遠超ws是14k。而從npm的下載量上看,ws卻遠超過socke.io。
為什么會這樣呢,哪個組件更熱門?




uj5u.com熱心網友回復:
socket.io只能使用socket.io的服務(后臺),這個限制比較大。websocket可以使用其他的服務
uj5u.com熱心網友回復:
這我不太理解,websocket可以使用其他的服務,是指什么?比如?
uj5u.com熱心網友回復:
websocket可以連后臺自己建的ws/wss服務以及其他第三方socket插件,socket.io必須用socket.io-client連接sokcet.io-server.uj5u.com熱心網友回復:
這個我倒不覺得是大問題。其實選websocket組件,主要是選后端,前端是很簡單的,現代瀏覽器默認支持。所以我們該選誰,還是主要考慮后端功能怎么樣。
uj5u.com熱心網友回復:
結合你的看法,在github和npm上的差異,個人分析原因是:1、github上關注的多是了解技術,可能socket.io相對來說,了解的人多但用的人少
2、因為舊系統存量大,所以要兼容IE瀏覽器的需求總量是很大的,在舊系統上只能使用socket.io,這個存量需求很大,尤其是互聯網公司,不少用戶還用的老IE。
2、npm上的統計,ws遠超socket.io,可能是因為其統計包含了npm中所有的層級的依賴呼叫,即不只是公司最終專案要用ws,連同npm上使用ws的開源組件,組件被呼叫時,也一并計算ws的下載數。ws更干凈和輕量,會更多的被作為開源組件的依賴庫所使用。而可以想見,socket.io只可能被用在最終專案中,而不太可能被用在開源組件中。
基于此,我選擇ws,原因是:
1、我可見的未來,都不需要考慮兼容IE
2、ws更輕量,性能更好
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/40624.html
標籤:JavaScript
