Android中长连接的解决方案.docxVIP

  • 18
  • 0
  • 约1.83千字
  • 约 4页
  • 2022-03-05 发布于江苏
  • 举报
? ? ? ? ? Android中长连接的解决方案 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Http请求的过程 通过运营商的DNS服务器解析目标域名的ip地址,保存到localhost文件中缓存 通过TCP三次握手与服务端建立链接 写入Http的请求头、请求体以及数据后接收数据 接收完一个请求的数据后,通过TCP四次挥手释放链接 如果还需要担心DNS劫持的话,则还需要加一层HttpDNS的过程。也就是通过Http协议将域名解析成对应的可信任的IP列表,通过ip直接访问。 长连接的优势 长连接通过Socket与服务端建立持久的链接,即使单个请求发送与接收后也不会释放链接。这样的好处有: 通过指定IP建立连接,减少DNS的查询时间 只用经历最初的一次TCP的三次握手,在真正请求时,则免去了建立连接的过程 在大量请求并发的时候,不会出现大量的Http链接断开重连的过程 服务端可以通过长连接进行推送,达到更加实时的效果 TCP接收数据的滑动窗口也会一直保持 长连接的问题 虽然长连接的好处很多,但是在保持长连接稳定的过程中也会存在很多的问题: 网络切换的过程会导致长连接断开 进程被杀掉时候,也会导致长连接断开 NAT超时,会导致长连接断开 DHCP租期到了,会导致ip地址变化,导致长连接断开 所以,在应用中,就需要保护长连接的稳定,否则会导致很多信息收不到。

文档评论(0)

1亿VIP精品文档

相关文档