支付寶小程序性能分析

首屏算法說明

首屏即 頁面首次渲染滿屏內(nèi)容姐刁,是用于計算T2的關(guān)鍵節(jié)點(diǎn)。簡單說就是贿肩,在頁面加載的過程中峦椰,記錄所有的渲染幀,在頁面加載結(jié)束之后汰规,回溯檢查每一幀汤功,圖片渲染面積首次達(dá)到最大值的那一幀記為T2

T2計算起點(diǎn)

T2的時間起點(diǎn)為 PerformanceTiming.naviagtionStart, 即 HTML主 文檔開始加載的時間。在WebView加載頁面的場景溜哮,與WebView.loadUrl 的時機(jī)非常接近

T2開始記錄渲染幀

T2開始記錄渲染幀的時間點(diǎn)為 FirstFullScreenLayout 滔金,即排版高度大于一屏。在這個時間點(diǎn)之前茂嗓,頁面一般不會有內(nèi)容展示餐茵,所以沒有必要記錄渲染幀

T2結(jié)束計算的條件

常見的T2結(jié)束計算的條件有以下幾種:

  • 頁面退出。比如述吸,用戶關(guān)閉頁面
  • 頁面不可見忿族。比如,app切到后臺
  • 有用戶交互。比如肠阱,用戶點(diǎn)擊或者滑動頁面
  • T2計算耗時超時票唆。T2幀記錄的計算不能消耗太多時間,超出50ms的閥值會結(jié)束計算屹徘,不再記錄后續(xù)的幀
  • T2幀數(shù)超出閥值走趋。T2幀不能記錄太多,也會損耗性能噪伊,超出50幀的閥值會結(jié)束計算簿煌,不再記錄后續(xù)的幀
  • WebView所在的Window失去焦點(diǎn)。比如鉴吹,頁面有Native彈框

需特別注意的是:T2結(jié)束計算的時間點(diǎn)不一定是T2的時間終點(diǎn)姨伟,而且極有可能是不一樣的。T2結(jié)束計算之后豆励,還要回溯檢查夺荒,找出圖片渲染面積首次達(dá)到最大值的那一幀,才記為T2

影響耗時的因素

核心耗時

  • 包大小過大:包括整包/主包(分包)的壓縮包 以及 內(nèi)部bundle文件(worker)過大良蒸。包文件會包含一些靜態(tài)資源技扼。相對來說,后者影響更大嫩痰,因為每次運(yùn)行會有worker的解析過程
  • 同步api調(diào)用(my.Sync)剿吻,阻塞執(zhí)行。
  • uc冷啟:支付寶首頁首屏小程序的uc冷啟(init_uc)耗時占比會偏高串纺,因為App雖然已經(jīng)做了啟動uc初始化丽旅,但是在首頁的小程序訪問時來不及完成初始化肯定會更多(想減少耗時就申請默認(rèn)踢出支付寶首頁)。
    • 核心耗時階段纺棺,uc冷啟比熱啟耗時要多出145%(餓了么小程序)榄笙。

業(yè)務(wù)耗時

  • 主鏈路耗時:免登,主接口調(diào)用到頁面渲染五辽,串行鏈路办斑。
  • 首屏內(nèi)容不足:主接口數(shù)據(jù)模塊不足外恕。
  • 渲染Data數(shù)據(jù)量:setData次數(shù)&內(nèi)容過多杆逗,影響渲染效率
  • 圖片過大過多:直接影響T2統(tǒng)計的首屏鋪滿判定

本文由博客一文多發(fā)平臺 OpenWrite 發(fā)布!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末鳞疲,一起剝皮案震驚了整個濱河市罪郊,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌尚洽,老刑警劉巖悔橄,帶你破解...
    沈念sama閱讀 216,544評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡癣疟,警方通過查閱死者的電腦和手機(jī)挣柬,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,430評論 3 392
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來睛挚,“玉大人邪蛔,你說我怎么就攤上這事≡” “怎么了侧到?”我有些...
    開封第一講書人閱讀 162,764評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長淤击。 經(jīng)常有香客問我匠抗,道長,這世上最難降的妖魔是什么污抬? 我笑而不...
    開封第一講書人閱讀 58,193評論 1 292
  • 正文 為了忘掉前任汞贸,我火速辦了婚禮,結(jié)果婚禮上印机,老公的妹妹穿的比我還像新娘著蛙。我一直安慰自己,他們只是感情好耳贬,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,216評論 6 388
  • 文/花漫 我一把揭開白布踏堡。 她就那樣靜靜地躺著,像睡著了一般咒劲。 火紅的嫁衣襯著肌膚如雪顷蟆。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,182評論 1 299
  • 那天腐魂,我揣著相機(jī)與錄音帐偎,去河邊找鬼。 笑死蛔屹,一個胖子當(dāng)著我的面吹牛削樊,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播兔毒,決...
    沈念sama閱讀 40,063評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼漫贞,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了育叁?” 一聲冷哼從身側(cè)響起迅脐,我...
    開封第一講書人閱讀 38,917評論 0 274
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎豪嗽,沒想到半個月后谴蔑,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體豌骏,經(jīng)...
    沈念sama閱讀 45,329評論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,543評論 2 332
  • 正文 我和宋清朗相戀三年隐锭,在試婚紗的時候發(fā)現(xiàn)自己被綠了窃躲。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,722評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡钦睡,死狀恐怖框舔,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情赎婚,我是刑警寧澤刘绣,帶...
    沈念sama閱讀 35,425評論 5 343
  • 正文 年R本政府宣布,位于F島的核電站挣输,受9級特大地震影響纬凤,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜撩嚼,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,019評論 3 326
  • 文/蒙蒙 一停士、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧完丽,春花似錦恋技、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,671評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至聘鳞,卻和暖如春薄辅,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背抠璃。 一陣腳步聲響...
    開封第一講書人閱讀 32,825評論 1 269
  • 我被黑心中介騙來泰國打工站楚, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人搏嗡。 一個月前我還...
    沈念sama閱讀 47,729評論 2 368
  • 正文 我出身青樓窿春,卻偏偏與公主長得像,于是被迫代替她去往敵國和親采盒。 傳聞我的和親對象是個殘疾皇子旧乞,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,614評論 2 353

推薦閱讀更多精彩內(nèi)容