AFN3.0前后的区别

2021-03-22  本文已影响0人  傲骨天成科技

一、发展历程

二、废弃与新增

废弃:

依次被下面的三个类代替了,同时增加了一些改变

三、AFNetwokring3.0为何弃用了NSURLConnection?

1.NSURLSession提升了网络连接速度

2015年,RFC文档编号7540正式发表了下一代HTTP协议HTTP/2.0, 它是1999年发布HTTP/1.1以后的首次更新。相对于前一个版本,HTTP/2.0 以快著称。加载同样一张图片,新的协议所用的时间是旧协议的四分之一。
iOS9+,NSURLSession开始正式支持HTTP/2.0 ,意味着网速提高了,设计了更加优秀的API,所以开发者舍弃了NSURLConnection。

2. Session采用了共享,而非每次都新建

共享Session到底给网络连接带来了哪些好处呢?我们先聊一聊网络通讯协议。我们都知道,HTTP协议是基于TCP协议的。所以在每次的HTTP请求之前,客户端和服务端都先需要经过TCP连接的三次握手,即请求之前,网络的数据都已经在客户端和服务端之间来回了三次了,事实上在HTTP/0.9, HTTP/1.0协议的时代,每次HTTP的请求,都需要先经过TCP的连接,而后才开始HTTP的请求。那么,为了让我们的请求更快,避免每次都产生一个TCP三次握手,成了一个优化的选项。于是在HTTP/1.1中共享的Session将会复用TCP的连接,这样就避免了每次操作都开启一个TCP三次握手的时间浪费,即加速了网络请求时间。

通过查看文档,我们可以知道iOS对同一个IP的服务器的最大并发数为4,OSX为6,但是如果没有共享Session,则可能会超过这个数。

上一篇下一篇

猜你喜欢

热点阅读