短连接
应用场景较少 管理简单
客户端和服务端通信,通讯结束后客户端断开连接
长连接
大部分场景采用的方法 除非程序退出/网络断开 否则连接会一直保存
1 客户端通信的次数和时间间隔不确定,比如我们使用一款手机app,功能的使用都是很随意的,
2 n秒后服务端可能主动发送通信请求
为什么n秒后服务端会主动发送通信请求?
比如:
我们使用微信进行通讯,中间是腾讯公司的服务器(服务端),用户都是客户端,用户之间发送信息并不是客户端直接与客户端通信,而是需要先经过服务端,服务端再转发给对对方,服务端给客户端发送信息就是服务端主动发送通信请求
使用心跳机制管理TCP长连接 保证连接一直保持
一句话,客户端在空闲的时候向服务端发送