前言
早前做过直播间聊天,服务器端为了兼容Html5,选用WebSocket协议建立全双工连接。WebSocket起初是为了解决浏览器全双工连接,目前已经支持移动端(iOS && Android)。同时也支持C++,Python,Java等语言。那么WebSocket是什么呢?跟Socket有啥区别?
WebSocket协议
https://www.zhihu.com/question/20215561
知乎高赞的这篇文章把原理讲得生动透彻
与原生Socket的区别
建立连接
WebSocket建立连接(握手过程)是基于Http;Socket建立连接是基于TCP握手过程。
性能
Socket在性能方面由于WebSocket
round trip time:Socket比WebSocket快10倍。Socket花费2微妙,WebSocket需要20微妙。
并发:Socket支持更高的并发,WebSocket较差。同等条件下Socket可以支持几百个线程,而WebSocket开到到100个就跑不顺畅了。
内存:TCP耗费的内存比WebSocket少
网友评论