成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

前端質量|基于業務驅動的前端性能有效實踐案例

原創 精選
開發 前端
很多人都以為,前端性能優化,重點在“前端”優化,“測試”很難起到主導作用。試著換個角度,從整個研發團隊視角看,前端做運動員專項治理,測試做裁判員專項評測,這套機制,是否更能切實做到優化,達成的數據也更讓大家信賴?

作者 |  錢文玲(悠醬)

一、背景

1.前端性能優化的業務意義

前端的本質價值是什么?

我認為是 給用戶創造良好的交互體驗。前端性能對用戶體驗、對業務跳失率的影響,在業界已有共識,不言而喻。根據 Google 的數據,如果移動站點的加載時間超過 3 秒,53% 的用戶會放棄訪問。

加載時間從 1s 延長到 3s 時,跳失率增加32%加載時間從 1s 延長到 5s 時,跳失率增加90%——用戶還沒看到辛苦優化的頁面,就走了一部分 。

抵達率優化應該在轉化率之前,用戶能夠正常訪問網頁,網頁的內容才能產生價值。所以在優化著陸頁內容、提高轉化率之前,要先保障抵達率。抵達率太低,哪怕頁面轉化100%,整體的轉化效果也會很差。

2.測試把控難點

現在流行的,運營自行搭建頁面+自行多端投放 方式,使我們的不可控。

原先發現性能問題主要通過感受+性能跑測數據,或者運營以業務要挾、或者質疑受機器等因素影響、或者相互推諉主要瓶頸點,使優化無法落實。

部分性能優化困難,影響性能點比較復雜,實行優化的收益不可預知,也阻礙了優化的落實。

二、前端性能優化 測試視角的解法

很多人都以為,前端性能優化,重點在“前端”優化,“測試”很難起到主導作用。試著換個角度,從整個研發團隊視角看,前端做運動員專項治理,測試做裁判員專項評測,這套機制,是否更能切實做到優化,達成的數據也更讓大家信賴?再者,測試不止局限于此,還可做隊醫、分析師。。。。

1.可持續優化閉環

以下持續優化閉環,是我們摸索著實行了一年多,有效且高效的解法。

從上圖看,整個過程為:

step0、前端事先進行埋點,(一般前端做了sdk,直接引入即可)step1、測試通過性能黑榜,發現最為突出的重點性能問題頁面(首屏平均時長&秒開率,PV&業務意義, 多項結合度量)step2、協助前端一起專業分析問題頁面,找出性能瓶頸點step3、前端更有策略地針對性治理step4、查看性能趨勢變化,驗證優化效果step5、假設已達到優化預期,或者有更糟糕的頁面把之前頁面擠下去,繼續關注黑榜前列的頁面(即跳到step1,繼續輪轉)

我們可以發現,測試通過發現、分析、驗證 三板斧,驅動推進頁面性能優化。

2.效果明顯

從2021年10月份開始迭代以來,共發現了8類嚴重性能問題。

包括:端外(支付寶)性能問題,外投&跨端性能問題,pha架構性能問題,運營不規范配置導致、其他業務原因導致的性能問題等。

并且快速有效,在業務方或其他同學提過來之前,我們都已經發現并有了分析,在優化節奏上更具有主動性。

三、性能問題的發現

通過線上用戶的真實采集,并制定能反應用戶體感的指標,進行性能黑榜和全局趨勢分析。

從重點單點角度,我們通過性能黑榜;從整體視角,我們通過整體趨勢分析。

1.性能數據的采集

(1)幾個名詞解釋

ARMS前端監控專注于對Web場景、小程序場景的監控,從頁面打開速度(測速)、頁面穩定性(JS診斷錯誤)和外部服務調用成功率(API)這三個方面監測Web和小程序頁面的健康度。

SLS日志服務為Log、Metric、Trace等數據提供大規模、低成本、實時的平臺化服務。日志服務一站式提供數據采集、加工、查詢與分析、可視化、告警、消費與投遞等功能。

ODPS即MaxCompute,是適用于數據分析場景的企業級SaaS模式云數據倉庫。

FBI是阿里內的智能大數據分析和可視化平臺,下面的所有截圖都是在FBI平臺配置圖表而成,還未對外開放。

(2)全過程

arms-sdk結合前端的自定義埋點,在海量用戶訪問的同時,就會自動上報數據到sls日志庫,整體過程如下圖:

  • 針對H5搭建頁的埋點,使用通用方案,一次性埋點即可,前端后續無需額外埋。
  • sls日志報表查實時數據,用于實時分析,實時驗證。
  • ODPS數據長期存儲已計算完指標的數據,用于記錄、比較、趨勢分析。

2.性能指標的確定

(1)統計范圍--用戶視角

所有前臺頁面,每個用戶每次瀏覽的有效數據(完全加載<15s 內有效)

指標的影響因子:從用戶視角,頁面流量越大,則對整體數據的影響越大(也就是權重越大)

這樣做的好處:流量越大數值越嚴重的,優化的效果(正反饋)越明顯,確定了治理性能問題的優先級。

(2)三個指標

結合淘系、以及集團其他部門的

指標名

優先級

指標描述

指標基準

量化邏輯

可交互時間

P0

完全加載、用戶可交互時間,取平均

1500ms以下良好

用戶體感 直接指標

可交互秒開率

P2

1秒內打開的比例

45%以上良好

用戶體感良好指標

可交互5秒以上率

P1

5秒以上異常打開的比例

3%以下良好

用戶體感不友好指標更關注因不友好導致跳失

(3)性能黑榜

為何要用性能黑榜來作為主要發現手段?我們通常可推理得:

  • 排在性能黑榜前列的,必然是性能問題最突出的,相對方便分析
  • (可根據各自業務,加個樣本量的篩選,如我們看每日pv 10w以上的)
  • 再結合樣本量(pv正相關)數據,樣本量非常大的,性能優化的收益必然也是非常大的
  • 模塊化組件開發盛行的今天,優化某個模塊或場景的問題,收益點不僅僅在當前頁面,也在其他用了同樣模塊或場景的頁面
  • 榜單形式,更能引起老板、對應前端負責同學、對用戶體驗關注的同學的重視

(4)整體性能趨勢分析

整體趨勢分析,即是為在整體角度,看我們的頁面性能趨勢,它是重要的度量指標。這里我們把所有的流量都納入,沒有頁面的區分,為的是基于用戶維度,流量大的頁面權重自然會更大。

從上圖看,1月初到2月中旬的數據正在持續惡化,必須要采取措施治理!

四、性能問題的分析

(下文以2022年2月A頻道頁面為例,均為dummy仿造后數據,也不代表整體情況)

1.如何衡量性能問題嚴重性

衡量性能問題嚴重性,是為了讓大家意識到優化的必要性,以及急迫性

(1)進入性能黑榜前幾名

同3.1.性能黑榜,不贅述

(2)看完全加載時長分布

見下圖“可交互時長分布圖”,一個記錄代表一個用戶。

即使不去統計,我們都能很明顯的看出來,這個A頻道頁面:

<1.5s的比例很低

1.5~3s占比最大

>3s的比例相對而言很高,居然還有這么高比例在8s以上?

(3)看時長分布比例

和開發說明問題嚴重性時,這個會很有代入感,比如見下圖,10%的Android用戶在4.9s以上,是不是可以認為他們大部分都跳失了?

(4)看和總體數據的對比

下圖不用算都能明顯發現,秒開率和 整體數據差異實在太大

2.分析性能瓶頸-分析思路

首先要明確,性能分析主要是給相關頁面的前端、開發同學看,給關心問題的測試同學看,所以我們可以拆分的更細節、更專業。可以先分前端、后端2個大類:

3.分析性能瓶頸-前端環節

(1)分終端分析

業務因素(具體不表),分終端是重點。

從可交互時長、秒開率、3秒+率、5秒+率,分別分析,都能論證--支付寶端問題更明顯。

(2)分階段分析

下圖將t1~t9 每個階段打點情況可視化,并分析重點環節的差值(打點邏輯由前端定義)

見圖2可以明顯觀察到:

  • 接口耗時太久,且2.12后變差明顯(可以去追溯下2.12發生了什么);
  • LBS獲取耗時很久,高于平均1倍以上,而取lbs是A頻道頁的關鍵邏輯

(3)分高中低端機分析

我們根據手淘的高中低端機評判標準,埋點獲得數據。平均時長,高中低各自占比,以及低端時長分布(也可選中高端)。下圖可發現,低端機比例很低(需要思考是否有必要重點優化),但低端機超過3秒以上的比例遠高于其他的(和總體的完全時間分布對比) 。

(4)其他分析

包括:機型、系統等,可做參考

4.分析性能瓶頸-后端環節

(1)后端接口分析

主要從后端維度來分析

服務端鏈路邏輯,需要另做具體分析

分頁面的處理邏輯,需要結合業務邏輯來看

這里可見,下圖盡管是開始發起請求-》收到請求的全過程,但也嚴重超標(幾乎是標準值的2倍)

(2)網絡傳輸消耗分析

整個接口過程:

請求連接(apiConnect)--》服務端處理(apiRequest)--》數據下載(apiResponse)細節不表了

5.分析結論關鍵思路

1、數據差值越大的,樣本量越多的,性能數據優化越明顯2、結合業務意義3、為前端分析提供方向,更細節分析,還是要依賴前端的專業分析

還是以A頻道為例,從數據差值看,接口和lbs,和均值差異最大。從樣本量看,支付寶 流量占有一定比例,因此,我們優化的重點在:接口、LBS、支付寶端。

五、性能問題的驗證

主要通過單頁面性能趨勢分析,主要2個作用:

  • 驗證性能優化效果,做到可量化
  • 及時洞察到頁面性能向差的趨勢,更具有主動性

1.性能惡化及時反饋

再如下圖,今年1月,一次業務需求,致使性能變差,通過每周定時性能報表發送群里,馬上發現。推薦大家把性能趨勢圖,定時發送到群內,更及時發現。

2.性能優化效果驗證

參考鏈接:https://zhuanlan.zhihu.com/p/51673262

責任編輯:武曉燕 來源: 阿里開發者
相關推薦

2022-05-26 10:12:21

前端優化測試

2023-03-10 10:29:19

前端邏輯拆分

2017-09-01 18:27:36

前端 RxJs數據層

2022-12-23 19:22:47

前端單測

2018-08-29 13:57:40

前端性能測試Html5

2022-07-06 08:34:17

前端單測項目

2019-10-14 17:00:14

前端代碼圈復雜度

2015-04-27 09:41:35

前端質量質量保障

2022-05-26 05:58:23

數據驅動業務數據分析

2021-04-15 08:08:48

微前端Web開發

2023-06-12 21:32:56

卡口服務系統

2022-06-27 09:36:29

攜程度假GraphQL多端開發

2022-06-27 09:48:15

H5移動互聯網頁面性能

2025-06-12 02:22:00

Netflix前端系統

2023-09-07 20:04:06

前后端趨勢Node.js

2022-07-27 22:56:45

前端應用緩存qiankun

2016-10-28 15:01:35

Cookie前端實踐

2023-05-10 10:45:06

開源工具庫項目

2023-12-28 10:38:56

WOT深圳站

2019-09-16 09:05:05

前端開發技術
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 在线视频成人 | 亚洲国产精品99久久久久久久久 | 久久6| 国产精品123区 | 黄色免费在线观看 | 成年人网站在线观看视频 | 国产日韩欧美在线播放 | 免费久久99精品国产婷婷六月 | 亚洲精品一区二区三区中文字幕 | 怡红院怡春院一级毛片 | 久久99这里只有精品 | 久艹av | 日本高清中文字幕 | 欧美啪啪 | 一级免费黄色 | 国产99视频精品免费播放照片 | 国产欧美精品一区二区 | 中文字幕 在线观看 | 久久精品一区 | 欧美久久国产精品 | 久久国产99 | 8x国产精品视频一区二区 | 一区中文字幕 | 久久1区 | 国产你懂的在线观看 | 欧美日韩在线一区二区 | 一级二级三级在线观看 | 欧美男人天堂 | 在线只有精品 | 嫩草影院黄 | 国产伦一区二区三区四区 | 手机看片169 | 在线国产视频观看 | 久草.com| 成人在线一区二区 | 国产成人99 | 欧美一级在线 | 欧美1区2区 | 美女在线国产 | 国产91网址 | 美女日批免费视频 |