Retrofit+Okhttp完整網(wǎng)絡(luò)請(qǐng)求鏈

一、全新網(wǎng)絡(luò)請(qǐng)求鏈

  • 發(fā)起請(qǐng)求(callStart)
  • 檢查代理開始(proxySelectStart)
  • 檢查代理結(jié)束(proxySelectEnd)
  • DNS解析開始(DNS Start)
  • DSN解析結(jié)束(DNS End)
  • 網(wǎng)絡(luò)連接開始(connectStart)
  • 網(wǎng)絡(luò)安全連接開始(secureConnectStart)注:https
  • 網(wǎng)絡(luò)安全連接結(jié)束(secureConnectEnd)注:https
  • 網(wǎng)絡(luò)連接結(jié)束(connectEnd)
  • 獲得網(wǎng)絡(luò)連接(connectionAcquired)
  • 請(qǐng)求頭開發(fā)(requestHeadersStart)
  • 請(qǐng)求頭結(jié)束(requestHeadersEnd)
  • 響應(yīng)請(qǐng)求頭開始(responseHeadersStart)
  • 響應(yīng)請(qǐng)求頭結(jié)束(responseHeadersEnd)
  • 響應(yīng)請(qǐng)求體開始(responseBodyStart)
  • 響應(yīng)請(qǐng)求體結(jié)束(responseBodyEnd)
  • 連接釋放(connectionReleased)
  • 請(qǐng)求結(jié)束(callEnd)


    image.png

二、復(fù)用網(wǎng)絡(luò)請(qǐng)求鏈

  • 發(fā)起請(qǐng)求(callStart)
  • 獲得網(wǎng)絡(luò)連接(connectionAcquired)
  • 請(qǐng)求頭開發(fā)(requestHeadersStart)
  • 請(qǐng)求頭結(jié)束(requestHeadersEnd)
  • 響應(yīng)請(qǐng)求頭開始(responseHeadersStart)
  • 響應(yīng)請(qǐng)求頭結(jié)束(responseHeadersEnd)
  • 響應(yīng)請(qǐng)求體開始(responseBodyStart)
  • 響應(yīng)請(qǐng)求體結(jié)束(responseBodyEnd)
  • 連接釋放(connectionReleased)
  • 請(qǐng)求結(jié)束(callEnd)


    image.png

三、思考?

客戶端優(yōu)化網(wǎng)絡(luò)請(qǐng)求空間在如下幾個(gè)鏈路上

  • 檢查代理開始(proxySelectStart)
  • 檢查代理結(jié)束(proxySelectEnd)
  • DNS解析開始(DNS Start)
  • DSN解析結(jié)束(DNS End)
  • 網(wǎng)絡(luò)連接開始(connectStart)
  • 網(wǎng)絡(luò)安全連接開始(secureConnectStart)
  • 網(wǎng)絡(luò)安全連接結(jié)束(secureConnectEnd)
  • 網(wǎng)絡(luò)連接結(jié)束(connectEnd)
    代理檢查基本不耗時(shí),優(yōu)化空間不大(考慮防代理可設(shè)置:builder.proxy(Proxy.NO_PROXY)),主要考慮DNS解析、網(wǎng)絡(luò)連接兩個(gè)方向

四、如何優(yōu)化

1.DNS解析優(yōu)化

  • 直接用ip去訪問(wèn),減少dns解析流程(考慮httpdns)
  • 增加dns過(guò)期時(shí)間(域名服務(wù)商)
  • 應(yīng)用緩存域名解析對(duì)應(yīng)ip,自定義dns解析

2.復(fù)用網(wǎng)絡(luò)連接

  • 調(diào)整網(wǎng)絡(luò)最大請(qǐng)求數(shù)
  • 調(diào)整連接池復(fù)用數(shù)和存活時(shí)長(zhǎng)
  • 按業(yè)務(wù)需要考慮多域名
  • 根據(jù)需要?jiǎng)討B(tài)調(diào)整網(wǎng)絡(luò)連接、讀寫超時(shí)時(shí)長(zhǎng)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容