網(wǎng)絡(luò)可優(yōu)化部分
緩存DNS映射關(guān)系
為什么要DNS緩存:減少DNS解析時間,防止DNS劫持仅政、服務(wù)器動態(tài)部署垢油。
需要注意的是映射關(guān)系的及時更新、緩存時間的設(shè)定圆丹,如果映射出錯滩愁,使用默認(rèn)的DNS解析
壓縮請求數(shù)據(jù)
服務(wù)器端使用合理的數(shù)據(jù)結(jié)構(gòu),減少用戶請求延遲辫封。若返回數(shù)據(jù)太大硝枉,會形成部分IP包緩存,從而增加了延遲
請求的安全性
合理的使用AES和RSA加密秸讹,盡量使用HTTPS檀咙,公鑰要及時刷新×Ь鳎可以用兩個token。
現(xiàn)階段蘋果公司還允許APP用HTTP協(xié)議上架App store蔑匣。但是劣欢,到17年1月1號起,所有上架App store的APP需要全部是使用HTTPS裁良。
合理的并發(fā)數(shù)目
多個請求并發(fā)數(shù)目控制凿将,多了容易增加整體延遲,少了無法合理利用CPU性能价脾,同時容易造成劣幣驅(qū)逐良幣的情況
關(guān)于請求的保障性
對于關(guān)鍵業(yè)務(wù)來說盡量要保證100%的成功率牧抵,最簡單的方式就是采取多次請求的方式確保成功率。
例如在比較麻煩的IM類型APP消息處理方面,需要做本地消息緩存犀变,對于發(fā)送失敗的消息需要做網(wǎng)絡(luò)待請求隊列妹孙,
非關(guān)鍵業(yè)務(wù)請求制作一次,比如后臺偷跑的請求获枝。
網(wǎng)絡(luò)環(huán)境的監(jiān)控
比如只有在WIFI情況下才能下載蠢正,不同的環(huán)境做不同的請求策略比較重要
成功率監(jiān)控措施
對網(wǎng)絡(luò)請求成功率做統(tǒng)計,存儲在本地省店,一定規(guī)模后發(fā)送給服務(wù)器嚣崭,可以反映出服務(wù)器存在的問題
本篇僅作筆記,參考自
https://zhuanlan.zhihu.com/p/22943142
http://mrpeak.cn/blog/encrypt/