DNS優(yōu)化加速

在 app 中網絡請求中使用了 DSN映射加速。

原理

其原理就是:用域名映射對應的 ip 地址,直接是用 ip地址來做請求越過域名解析過程。(同時 app 中去掉了 afnet 的域名驗證)

實現過程:

第一步

在 app 初始化時通過一個全局類 ConfigManager 來通過指定的網絡請求來獲取 DNS 映射表(即 json 數據)同時保存在全局類中。

第二步

在封裝的網絡請求中業(yè)務邏輯分開。底層一個NetKit 直接操作 AFNetworking來做 post,get,down,up請求(是通過 AFURLSessionManager 類中的請求方法)。同時通過 NSDictionary 將每一個 url 生成的 AFHTTPSessionManager 對象映射保存起來。

上層業(yè)務類 Engine 類對 NetKit 返回的 data 進行一寫業(yè)務邏輯操作,如數據解析,DNS加速,請求出錯重新請求,數據統(tǒng)計等。

通過 ConfigManager 類獲取 DSN 映射表根據請求的 url來獲取 ip 地址。 通過 NSURLComponents 來改變 url 的 host。 根據新的 url 生成 AFHTTPSessionManager 對象重新保存在 NSDictionary 中。

第三步

通過 url 來獲取字典中的 AFHTTPSessionManager 對象,根據該對象來做網絡請求。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • 1. 基礎知識 1.1 3種常見的計算機體系結構劃分 OSI分層(7層):物理層、數據鏈路層、網絡層、傳輸層、會話...
    Mr希靈閱讀 20,101評論 6 120
  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現,斷路器,智...
    卡卡羅2017閱讀 136,568評論 19 139
  • 14.1 引言 域名系統(tǒng)(DNS)是一種用于TCP/IP應用程序的分布式數據庫,它提供主機名字和IP地址之間的轉換...
    張芳濤閱讀 2,028評論 0 8
  • 目錄 網絡基本概念 TCP/IP協(xié)議簇基本概念 HTTP 網絡開發(fā)技術解決方案 數據解析 網絡優(yōu)化 1. 網絡基本...
    Ryan___閱讀 1,468評論 1 0
  • 我和男友均為小碩,2014年秋畢業(yè),今年國慶期間剛剛入手第二套房。談談我們的買房經歷。 第一套房子買在重慶郊區(qū)區(qū),...
    蘇小渝閱讀 3,202評論 55 29

友情鏈接更多精彩內容