天天看点

简单聊一下socket和websocket的关系

长链接里,socket才是老大,小弟可以很牛逼,但离不开老大。

socket是tcp/ip协议的封装接口,可以写最底层的通信代码。

websocket是基于socket的TCP协议实现的应用层协议。

那么问题来了,简单聊聊人们比较关注的关系和区别,刨根问底的请自行查阅相关资料

问: 为什么会有websocket呢,而不用私有协议通信呢

简单答: 浏览器是基于HTTP标准的客户端,基于浏览器的web页面自然无法也不能直接使用socket直接与服务端进行通信,所以只能用应用层协议websocket。

问: 为什么后端不使用websocket做服务呢

简单答: 核心还是协议区别和是否需要。当然也可以用,毕竟使用门槛低,协议成熟。

如果有自己的APP终端,条件业务都允许,还是建议基于socket做一个自己的通信协议。 websocket属于公开协议,虽然能实现业务的功能,但还是比较显得比较臃肿。 此时,自己构建私有协议就可以比较轻量和灵活了。

继续阅读