iOS 網路優化

發表於2016-11-13

網路可優化部分

快取DNS對映關係

為什麼要DNS快取:減少DNS解析時間,防止DNS劫持、伺服器動態部署。
需要注意的是對映關係的及時更新、快取時間的設定,如果對映出錯,使用預設的DNS解析

壓縮請求資料

伺服器端使用合理的資料結構,減少使用者請求延遲。若返回資料太大,會形成部分IP包快取,從而增加了延遲

請求的安全性

合理的使用AES和RSA加密,儘量使用HTTPS,公鑰要及時重新整理。可以用兩個token。
現階段蘋果公司還允許APP用HTTP協議上架App store。但是,到17年1月1號起,所有上架App store的APP需要全部是使用HTTPS。

合理的併發數目

多個請求併發數目控制,多了容易增加整體延遲,少了無法合理利用CPU效能,同時容易造成劣幣驅逐良幣的情況

關於請求的保障性

對於關鍵業務來說盡量要保證100%的成功率,最簡單的方式就是採取多次請求的方式確保成功率。
例如在比較麻煩的IM型別APP訊息處理方面,需要做本地訊息快取,對於傳送失敗的訊息需要做網路待請求佇列,
非關鍵業務請求製作一次,比如後臺偷跑的請求。

網路環境的監控

比如只有在WIFI情況下才能下載,不同的環境做不同的請求策略比較重要

成功率監控措施

對網路請求成功率做統計,儲存在本地,一定規模後傳送給伺服器,可以反映出伺服器存在的問題

本篇僅作筆記,參考自
https://zhuanlan.zhihu.com/p/22943142
http://mrpeak.cn/blog/encrypt/

相關文章