2016/12/21前端性能優(yōu)化

體驗(yàn)與性能優(yōu)化


1. 體驗(yàn)優(yōu)化

  • 使用lazyload實(shí)現(xiàn)懶加載,優(yōu)化體驗(yàn)與性能。

  • 使用連續(xù)的jpg與交錯(cuò)的png。

  • 移動(dòng)端采用fastclick + touch-action: manipulation實(shí)現(xiàn)消除300ms延遲。

  • 使用@media與1x、2x圖片優(yōu)化體驗(yàn)。

  • 數(shù)據(jù)多級(jí)兜底(服務(wù)端、服務(wù)端緩存、本地存儲(chǔ)、腳本內(nèi)置硬兜底)。

2. 性能標(biāo)準(zhǔn)

時(shí)間 感覺
0~100ms 很快
100~300ms 有一點(diǎn)點(diǎn)慢
300~1000ms 機(jī)械在工作呢
>1000ms 先干點(diǎn)別的吧
>10000ms 不能用了
  • onload 時(shí)間:1000ms 以內(nèi);
  • 首屏可見時(shí)間:300ms 以內(nèi);
  • 秒開率:80% 以上;
  • 首屏css與js請(qǐng)求數(shù)總計(jì)不超過5個(gè);
2.1 圖片約束
  • 首屏大小限制:400kb;
  • 圖片限制:100kb / 張;
  • 禁止圖片使用空地址;
2.2 請(qǐng)求優(yōu)化
  • cdn combo;
  • 首屏 CSS 請(qǐng)求保證兩個(gè)以內(nèi);
  • 首屏 JS 請(qǐng)求保證保證三個(gè)以內(nèi);
  • 首屏所有請(qǐng)求數(shù)小于 20 個(gè);
  • 每個(gè)頁面僅允許使用 1 個(gè)字體文件(icon font);
  • 字體文件僅使用 ttf 文件即可,如果文件較小,可將其轉(zhuǎn)換為 base64 格式;
  • 禁止使用 iframe;
  • 禁止資源、圖片重定向;
  • 小于 10k 的背景圖片盡可能的轉(zhuǎn)換為 base64 格式;
2.3 其它優(yōu)化
  • css寫在head,script寫在body。
  • 在cdn支持的情況下,使用cdn處理圖片尺寸。
  • 代碼上線前一定經(jīng)過混淆壓縮。
  • 按需打包與加載:split coding或動(dòng)態(tài)路由。
  • cdn 資源需收斂到 zos(as).alipayobjects.com 域名;
  • 常用的小圖片base64化。
  • 使用webp格式減少圖片體積。
  • 服務(wù)端開啟GZIP壓縮。
  • 首屏數(shù)據(jù)可以按需直接放在頁面中不通過ajax獲取。
  • 合理使用max-age做緩存。
  • 根據(jù)實(shí)際情況采用服務(wù)端渲染。
最后編輯于
?著作權(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)容