一.TCP的通信流程
在TCP双方通信之前,需要通过”三次握手”建立一条连接。连接建立以后双方就可以进行数据交互了,当数据交互完成以后还需要通过”四次挥手”断开连接。这是TCP通信的一般流程
每个连接的建立都是需要资源消耗和时间消耗的,正是考虑到资源消耗和时间问题,才有了TCP短连接和长连接机制。
二.TCP短连接
首先看下TCP短连接的情况:
- client 向 server 发起连接请求
- server 接到请求予以相应和确认,双方建立连接
- client 向 server 发送消息
- server 回应 client
一次读写完成,此时双方任何一个都可以发起 close 操作,一般都是 client 先发起 close
操作流程:
建立连接 -> 数据传输 -> 关闭连接………………..建立连接 -> 数据传输 -> 关闭连接
应用场景:
WEB网站面向客户,通常是成千上万客户端去访问,这时候用短链接会更省资源一些。
三.TCP长连接
下面再看看TCP长连接的操作流程:
- client 向 server 发起连接
- 一次读写完成,连接不关闭
- 后续读写操作…
操作流程:
建立连接 -> 数据传输…(保持连接)…数据传输 -> 关闭连接
应用场景:
Mysql数据库客户端的操作就是长链接,链接后可以一直进行操作传输数据。