WebSocket就是Socket
Socket是传输层协议
WebSocket是应用层协议(应用层协议有很多,例如http,smtp,等等)
应用层协议是建立在传输层协议之上的,其基本属性有2个:
1是需要保证报文的完整性(也就是报文体的长度,如果是udp协议还要保证报文的顺序)
2是如何编解码(报文的编码类型,常见的例如:multipart,KeyVlaue,Json,xml,或是前20个字节是名字,后4个字节是分数,等等等等)
任何应用层协议都离不开以上两点,即便你自定义一套应用层协议也是如此。
你熟读WebSocket数据帧的定义后,你就会发现,WebSocket对第一个byte的定义是精确到bit上的。其他如http,smtp,或是多数人使用socket自定义的协议,都是精确到byte级别的,而且最小有效报文长度都是几个byte,而WebSocket最小有效报文长度为1个byte。
综上所诉,WebSocket性能最好