短链接和长连接 && webSocket VS HTTP

短链接和长连接区别是什么
  1. 短链接:
    • 短链接是指在网络通信中,客户端和服务器建立连接后,数据交换完成后立即断开连接。
    • 每次通信都需要建立连接和断开连接,即每个请求都需要重新建立连接。
    • 适用于请求频率较低、请求时间较短、连接数量较少的场景。
    • 在 HTTP 协议中,常见的短链接方式是使用 HTTP/1.0 版本,其中每个请求都会创建一个新的连接。
  2. 长连接:
    • 长连接是指在网络通信中,客户端和服务器建立连接后,保持连接的状态,多次请求和响应在同一个连接上进行。
    • 连接保持打开状态,可以进行多次的请求和响应,而无需每次都建立和断开连接。
    • 适用于请求频率较高、请求时间较长、连接数量较多的场景。
    • 在 HTTP 协议中,常见的长连接方式是使用 HTTP/1.1 版本,其中默认开启了持久连接(Keep-Alive)机制,使得多个请求可以在同一个连接上复用。

长连接相对于短链接的优势包括:

  • 减少连接的建立和断开开销,节省网络资源和时间。
  • 提高网络通信的效率和吞吐量。
  • 减少服务器的负载,避免频繁的连接管理操作。

需要注意的是,长连接也需要考虑一些因素:

  • 长连接会占用服务器资源,需要控制连接的数量和生命周期,避免资源耗尽。
  • 长连接需要处理连接中断和异常的情况,保证通信的可靠性和稳定性。
  • 长连接在一些特殊情况下,如服务器重启、网络故障等,可能需要重新建立连接。
webSocket VS HTTP

webSocket 和 http 都是应用层协议,它和 socket 完全不一样

TCP全双工协议,被 http 用成了半双工

同一时间,是双方同时能给对方发消息,还是一方

对于扫码登录,还能用不断轮询和长轮询去处理,对页游咋办呢?

如果想要进入 WebSocket 通信,会在 http 头部带一些参数

Connection: Upgrade
Upgrade: WebSocket
Sec-WebSocket-Key: T2a6wZlAwhgQNqruZ2YUyg==\r\n

webSocket 数据包叫帧。帧的一些字段如下

  • opcode
    1_text
    2_二进制数据类型[]byte
    8_关闭连接的的信号
  • payloat
    数据长度——字节
  • payload 的长度字段有三个 7bit,7+16,7+64,0-125,126,127

你可能感兴趣的:(websocket,http,网络协议)