client和server通信方法
数据交互模式
Push模式:推模式指的是客户端与服务端建立好网络长连接,服务方有相关数据,直接通过长连接通道推送到客户端。
优点:及时,一旦有数据变更,客户端立马能感知到;且客户端无需关心数据的处理逻辑。
缺点:可能导致数据积压在客户端,来不及处理。
Pull模式:客户端主动向服务端发出请求,拉取相关数据。
优点:此过程由客户端发起请求,故不存在推模式中数据积压的问题
缺点:不够及时,对客户端来说需要考虑数据拉取相关逻辑,何时去拉,拉的频率怎么控制等等。
1.polling轮询
客户端和服务器会已知进行连接,每隔一段时间就询问一次。
Polling是指不管服务端数据有无更新,客户端每隔定长时间请求拉取一次数据,可能有更新数据返回,也可能什么都没有。
2.long-polling长轮询
是对轮循的改良版,客户端发送请求给服务器之后,需要满足一些条件才返回新的数据,反之若没有新数据就一直等待。
Polling终止
若服务端返回相关数据,此时客户端收到数据后,关闭请求连接,结束此次Polling过程。
若客户端等待设定的超时时间后,服务端依然没有返回数据,此时客户端需要主动终止此次Polling请求
若客户端收到网络故障或异常,此时客户端自然也是需要主动终止此次Polling请求。
文档信息
- 本文作者:wangwang
- 本文链接:http://anshichifan.xyz/2023/05/25/client%E5%92%8Cserver%E9%80%9A%E4%BF%A1%E6%96%B9%E6%B3%95/
- 版权声明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)