2019-08-21

1.前言
公司要求做性能測試俐巴,不知道從哪里入手。就說哪個(gè)網(wǎng)頁慢笼沥,就重點(diǎn)測試哪一個(gè)業(yè)務(wù)下的場景蚪燕,從哪里入手。首先實(shí)現(xiàn)了登錄接口的并發(fā)100奔浅,沒有問題馆纳。其他web場景怎么判斷是否可以需要測試,怎么判斷頁面響應(yīng)時(shí)間等等汹桦。研發(fā)老大提示說可以安裝APM工具鲁驶。研究了半天,試著搭建環(huán)境舞骆,發(fā)現(xiàn)有點(diǎn)大材小用钥弯。公司是給政府部門做網(wǎng)站,所有用戶才幾百人督禽。
分享APM工具pippoint安裝部署脆霎,以后需要可以用到:https://blog.csdn.net/heyeqingquan/article/details/74456591
查了一下資料,覺得web前端性能優(yōu)化工具可以滿足要求狈惫,轉(zhuǎn)發(fā)資料:來自https://www.cnblogs.com/yanghj010/p/8954730.html
2.轉(zhuǎn)發(fā)
前段時(shí)間接手了一個(gè) web [前端性能優(yōu)化]的任務(wù)睛蛛,一時(shí)間不知道從什么地方入手,查了不少資料胧谈,發(fā)現(xiàn)其實(shí)還是蠻簡單的忆肾,簡單來說說。

一.前端性能測試是什么?

前端性能測試對象主要包括:

HTML菱肖、CSS客冈、JS、AJAX 等前端技術(shù)開發(fā)的 Web 頁面

影響用戶瀏覽網(wǎng)頁速度的因素主要有:

服務(wù)端數(shù)據(jù)返回稳强、網(wǎng)絡(luò)傳輸场仲、頁面渲染等

前端性能測試目的:

計(jì)算出包含頁面渲染和悦、網(wǎng)絡(luò)傳輸以及服務(wù)器端解析等綜合因素在內(nèi)的加載時(shí)間指標(biāo),對該頁面性能進(jìn)行評估分析燎窘,找出影響性能的主要因素和瓶頸摹闽,并在此基礎(chǔ)上,給出一定的優(yōu)化建議和解決方案褐健,從而提升用戶體驗(yàn)

前端性能優(yōu)化主要工具:

頁面結(jié)構(gòu)分析工具YSlow/PageSpeed

通過網(wǎng)頁 JS/CSS/Image 數(shù)及請求數(shù)量、請求類型澜汤、緩存等方面的靜態(tài)分析 蚜迅,多用于本地開發(fā)或者本地測試

真實(shí)用戶瀏覽頁面分析OneAPM Browser Insight

通過真實(shí)瀏覽器訪問頁面,收集頁面的 w3c 標(biāo)準(zhǔn)信息俊抵,ajax谁不,網(wǎng)絡(luò)等數(shù)據(jù)等終端分析,多用于內(nèi)網(wǎng)多終端系統(tǒng)檢測和 web 網(wǎng)站檢測

二.靜態(tài)分析——Yslow(業(yè)界俗稱:雅虎評估網(wǎng)站性能的23條軍規(guī))

通過給瀏覽器安裝 Yslow 插件并開啟后徽诲,在控制面板里就會(huì)給你評分提示刹帕,和改進(jìn)建議。

YSlow 的 Grade (等級視圖)
兩款 Web 前端性能測試工具 技術(shù)分享 第1張

Yslow 給出的網(wǎng)站性能評分是從 F~A谎替,A 最優(yōu)偷溺、F 最差,通過上圖的測試博客來看钱贯,網(wǎng)站有 4 處得分最低挫掏,例如上圖中的最低分提示:我博客的 HTTP 請求太多。其中應(yīng)用了 14 個(gè)外部 js秩命、3 個(gè) CSS 文件(之前我已從 6 個(gè)合并為 3 個(gè))尉共、14個(gè) CSS 背景圖片。

Yslow 的建議是讓我合并這些弃锐,至于合并 CSS 引用圖片我在“提高網(wǎng)站打開速度的7大秘籍”中介紹過袄友。

Yslow Components(組件視圖)
兩款 Web 前端性能測試工具 技術(shù)分享 第2張

可以通過 Components 考驗(yàn)查看網(wǎng)頁各個(gè)元素占用的空間大小。例如我博客某個(gè)頁面霹菊,有 236 個(gè) images(圖片)剧蚣,占用了 489.2 K,通過詳細(xì)查看浇辜,發(fā)現(xiàn)來自 gravatar 頭像的引用圖片非常大券敌,再加上博客本身評論量就大,每個(gè)頭像就占用幾 K柳洋,幾百個(gè)就占用了整個(gè)網(wǎng)頁 50% 的大小待诅,而且圖片還是引用的,加載就更慢熊镣。

所以卑雁,得出的結(jié)論是:gravatar 雖然增強(qiáng)了互動(dòng)性和個(gè)性募书,但也結(jié)結(jié)實(shí)實(shí)影響了網(wǎng)站速度。

Yslow Statistics(統(tǒng)計(jì)信息視圖)
兩款 Web 前端性能測試工具 技術(shù)分享 第3張

上圖左側(cè)圖表顯示的是頁面元素在空緩存中的加載情況测蹲,右側(cè)為頁面元素使用緩存后的頁面加載情況莹捡。從圖中可以直觀的看出(尤其是我標(biāo)的紅框),這個(gè)網(wǎng)頁有 263 個(gè) HTTP 請求扣甲,網(wǎng)頁的大小達(dá)到 773.9K 篮赢,意味著每打開一個(gè)頁面幾乎需要下載 1M 的東西,而通過使用緩存后我們可以看到效果圖片基本靠緩存琉挖,而網(wǎng)頁總大小壓縮到 43.2K 启泣。

Statistics 這個(gè)統(tǒng)計(jì)信息視圖工具和 Components (第三選項(xiàng)卡)一樣,只是效果更直觀示辈,如果要獲得性能優(yōu)化建議還是要看 Grade (第二選項(xiàng)卡)的詳細(xì)建議寥茫。

三.終端分析:OneAPM Browser Insight/業(yè)界俗稱—real user monitoring

通過各種語言探針給頁面自動(dòng)插入 js 代碼,在瀏覽器瀏覽的時(shí)候收集頁面加載時(shí)間和網(wǎng)絡(luò)信息矾麻,多用于內(nèi)網(wǎng)多終端系統(tǒng)檢測和 web 網(wǎng)站.

主要性能指標(biāo):白屏?xí)r間纱耻、首屏?xí)r間、資源加載完成時(shí)間险耀、網(wǎng)頁加載完成時(shí)間

兩款 Web 前端性能測試工具 技術(shù)分享 第4張

OneAPM 的 Browser Insight 做的不是簡單的把 window.performance 的數(shù)據(jù)采集過來然后報(bào)上去弄喘,它們從網(wǎng)頁打開的整個(gè)過程區(qū)分了四個(gè)響應(yīng)時(shí)間,具體的劃分標(biāo)準(zhǔn)每個(gè)頁面都有標(biāo)注胰耗。為了避免某一次訪問的特殊情況拖慢了整個(gè)平均時(shí)間限次,用戶還可以結(jié)合下面的定位分析功能一起來看。

從整體趨勢查看頁面性能——定位分析

兩款 Web 前端性能測試工具 技術(shù)分享 第5張

其實(shí)大多數(shù)互聯(lián)網(wǎng)公司之所以優(yōu)化前端網(wǎng)頁柴灯,關(guān)心的是大多數(shù)打開自己的網(wǎng)頁是否流暢卖漫,一兩個(gè)個(gè)例并不在他的考慮范圍之內(nèi)或者說并不是當(dāng)務(wù)之急。

定位分析功能實(shí)現(xiàn)了按響應(yīng)時(shí)間把用戶體驗(yàn)進(jìn)行分區(qū)赠群,包括 Apdex 指數(shù)分區(qū)和 W3C 頁面加載時(shí)間標(biāo)準(zhǔn)分區(qū)羊始,通過分區(qū)可以清晰的定位用戶體驗(yàn)群體,根據(jù)不同的群體查看應(yīng)用性能區(qū)間查描,包括網(wǎng)絡(luò)突委、服務(wù)器請求排隊(duì)、Web 應(yīng)用處理耗時(shí)冬三、網(wǎng)頁構(gòu)建耗時(shí)匀油、資源加載耗時(shí),同時(shí)可以多維度的查看用戶體驗(yàn)區(qū)間的影響范圍

慢加載追蹤—瀑布流圖

頁面加載緩慢大家都能感覺出來勾笆,可是敌蚜,是服務(wù)器的原因?是網(wǎng)絡(luò)的原因窝爪?是頁面資源加載的原因弛车?是哪個(gè)圖片加載的慢齐媒?這些問題 OneAPM 的慢加載追蹤解決的都比較好。上幾張干貨圖纷跛!

兩款 Web 前端性能測試工具 技術(shù)分享 第6張
兩款 Web 前端性能測試工具 技術(shù)分享 第7張

必須得說這個(gè)做的真心棒!界面做的很漂亮喻括,還很詳細(xì),安卓 4.3 版本以上的微信瀏覽器也都能監(jiān)控贫奠!

好了今天就簡單說這些唬血,之后有機(jī)會(huì)我們再聊拜拜了各位

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市叮阅,隨后出現(xiàn)的幾起案子刁品,更是在濱河造成了極大的恐慌,老刑警劉巖浩姥,帶你破解...
    沈念sama閱讀 206,968評論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異状您,居然都是意外死亡勒叠,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,601評論 2 382
  • 文/潘曉璐 我一進(jìn)店門膏孟,熙熙樓的掌柜王于貴愁眉苦臉地迎上來眯分,“玉大人,你說我怎么就攤上這事柒桑”拙觯” “怎么了?”我有些...
    開封第一講書人閱讀 153,220評論 0 344
  • 文/不壞的土叔 我叫張陵魁淳,是天一觀的道長飘诗。 經(jīng)常有香客問我,道長界逛,這世上最難降的妖魔是什么昆稿? 我笑而不...
    開封第一講書人閱讀 55,416評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮息拜,結(jié)果婚禮上溉潭,老公的妹妹穿的比我還像新娘。我一直安慰自己少欺,他們只是感情好喳瓣,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,425評論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著赞别,像睡著了一般畏陕。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上氯庆,一...
    開封第一講書人閱讀 49,144評論 1 285
  • 那天蹭秋,我揣著相機(jī)與錄音扰付,去河邊找鬼。 笑死仁讨,一個(gè)胖子當(dāng)著我的面吹牛羽莺,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播洞豁,決...
    沈念sama閱讀 38,432評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼盐固,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了丈挟?” 一聲冷哼從身側(cè)響起刁卜,我...
    開封第一講書人閱讀 37,088評論 0 261
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎曙咽,沒想到半個(gè)月后蛔趴,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,586評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡例朱,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,028評論 2 325
  • 正文 我和宋清朗相戀三年孝情,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片洒嗤。...
    茶點(diǎn)故事閱讀 38,137評論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡箫荡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出渔隶,到底是詐尸還是另有隱情羔挡,我是刑警寧澤,帶...
    沈念sama閱讀 33,783評論 4 324
  • 正文 年R本政府宣布间唉,位于F島的核電站绞灼,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏终吼。R本人自食惡果不足惜镀赌,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,343評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望际跪。 院中可真熱鬧商佛,春花似錦、人聲如沸姆打。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,333評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽幔戏。三九已至玛追,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背痊剖。 一陣腳步聲響...
    開封第一講書人閱讀 31,559評論 1 262
  • 我被黑心中介騙來泰國打工韩玩, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人陆馁。 一個(gè)月前我還...
    沈念sama閱讀 45,595評論 2 355
  • 正文 我出身青樓找颓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親叮贩。 傳聞我的和親對象是個(gè)殘疾皇子击狮,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,901評論 2 345

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