本文属于转载 如有雷同,纯属ctrl+c/ctrl+v.的问题。哈哈!
http属于应用层协议,web应用这层协议来传输数据,底层调用tcp/udp,但是http是一个短连接,并且请求只能由客户端发出
原文地址: https://www.cnblogs.com/meier1205/p/5971313.html
socket属于一个接口,对TCP和UDP进行了一个封装,它可以建立一个长连接,它在层中的位置如下图
原文地址 http://www.cnblogs.com/hissia/p/5730135.html
websocket 是新的应用层协议,见名知意,属于web端的一种建立长连接的方式,通过长连接,我们就可以构建类似客户端进程一样的web应用
TCP 与UDP
tcp是建立在连接之上的协议,需要三次握手,四次挥手,在建立连接之前,不会发送有效数据
udp是无连接的协议,客户端与服务端,只管发送和接收,不管数据是否到达与其准确性
注意事项
长连接由于各种意外或者突发状况的发生会导致连接中断
所以我们需要发送心跳包,自己定义数据格式。当超过某个时间间隔,没有接收到心跳的时候,就断定连接中断。关闭连接,释放资源
————————————————
原文链接:https://blog.youkuaiyun.com/qq_33574890/article/details/83583708