android網路優化
❶ Android性能優化之網路優化DNS和HttpDNS知識詳解
前言小計
本文已在在公眾號【Android開發編程】發表
一、什麼是DNS
二、DNS域名結構
1、DNS域名命名
2、域名的分級
域名可以劃分為各個子域,子域還可以繼續劃分為子域的子域,這樣就形成了頂級域名、二級域名、三級域名等
頂級域名可以分為三大類:
國家頂級域名:cn、us、uk等
通用域名:常見的有7個,com、net、org、e、int、gov、mil
方向域名: arpa,用於將ip地址轉為域名
域名伺服器
域名伺服器按照由高到低進行層次劃分:
注意: 一個域名伺服器所負責的范圍,稱為區
三、域名解析過程
域名解析的重要兩點:
以上兩點是域名解析的重要兩步。但是這並不是解析ip地址的完整過程,如果瀏覽器的緩存中有該域名對應的ip地址,就不需要向本地域名伺服器請求了等等。下面來看詳細過程:
例如要解析:www.example.com該域名的ip地址;
四、DNS安全和優化
1、dns安全問題
2、DNS優化
DNS解析是一個漫長的過程,那麼它的優化有哪些?
1、網頁端
用戶在請求請求某個鏈接之前,瀏覽器先嘗試解析該鏈接的域名再將其進行緩存。
可以這樣做:
(1) 在伺服器中響應設置X-DNS-Prefetch-Control的值為on啟動預解析
(2) 在HTML中,
(3) 在head中加入link標簽:
如
不過現在的Chrome瀏覽器會自動將當前頁面的所有帶href的dns都prefetch一遍。需要手動添加上面的link標簽的場景是:你後面訪問的域名不在當前頁面的所有鏈接中;
正確使用link標簽的姿勢:
域名收斂:建議將靜態資源只放在一個域名下面,可以減少DNS的請求
2、客戶端
HttpDNS
HttpDNS是使用HTTP協議向阿里雲的HTTPDNS伺服器的80埠直接進行請求,代替傳統的DNS協議向LDNS伺服器的53埠進行請求。從而可以繞過LDNS,可以避免運行商的域名劫持和調度不精準的問題;
五、HttpDNS介紹
總結:
網路優化的知識點很多,今天主要介紹了dns的知識點
下次繼續介紹Android網路優化的具體實現方案
