Rumah hujung hadapan web tutorial js 作为前端开发工程师一定要关注三点的性能指标

作为前端开发工程师一定要关注三点的性能指标

Nov 18, 2017 pm 02:06 PM
fokus pada jurutera

作为一个合格的前端开发工程师,你需要关注的几项性能指标你知道吗?今天就好好的给大家介绍一下,作为前端工程师你必须关注指标有哪三点

1.关于页面相应时间,有一条著名的“2-5-8原则”。当用户访问一个页面:

在2秒内得到响应时,会感觉系统响应很快;

在2-5秒之间得到响应时,会感觉系统的响应速度还可以;

在5-8秒以内得到响应时,会感觉系统的响应速度很慢,但可以接受;

而超过8秒后仍然无法得到响应时,用户会感觉系统糟透了,进而选择离开这个站点,或者发起第二次请求。

 

对于一个网站如果希望抓住用户,网站的速度以及稳定性是首当其冲的。

 

从各式各样的前端监控平台中,你都可以获得页面很多的性能指标。本文将介绍几个几个比较关键的指标,并给出相应的优化思路。

2.开始渲染时间

该时间点表示浏览器开始绘制页面,在此之前页面都是白屏,所以也称为白屏时间。

该时间点可用公式Time To Start Render = TTFB(Time To First Byte) + TTDD(Time To Document Download) + TTHE(Time To Head End)表示。其中TTFB表示浏览器发起请求到服务器返回第一个字节的时间,TTDD表示从服务器加载HTML文档的时间,TTHE表示文档头部解析完成所需要的时间。在高级浏览器中有对应的属性可以获取该时间点。Chrome可通过chrome.loadTimes().firstPaintTime获取,IE9+可以通过performance.timing.msFirstPaint获取,在不支持的浏览器中可以根据上面公式通过获取头部资源加载完的时刻模拟获取近似值。开始渲染时间越快,用户就能更快的看见页面。

对于该时间点的优化有:

1)优化服务器响应时间,服务器端尽早输出

2)减少html文件大小

3)减少头部资源,脚本尽量放在body中

DOM Ready

该时间点表示dom解析已经完成,资源还没有加载完成, 这个时候用户与页面的交互已经可用了。用公式TimeTo Dom Ready = TTSR(Time To Start Render) + TTDC(Time To Dom Created) + TTST(Time To Script)可以表示。TTSR上面已经介绍过了,TTDC表示DOM树创建所耗时间。TTST表示BODY中所有静态脚本加载和执行的时间。在高级浏览器中有DOMContentLoaded事件对应,MDN上有关DOMContentLoaded事件描述的文档如下,

The DOMContentLoaded event is fired when the document has been completely loaded and parsed, without waiting for stylesheets, images, and subframes to finish loading (the load event can be used to detect a fully-loaded page).

详细规范可以查看W3C的HTML5规范。从MDN文档上可以看出该事件主要是指dom文档加载解析完成,看上去很简单,但是DOMContentLoaded事件的触发与css,js息息相关,现在有专门的名词Critical Rendering Path(关键呈现路径)来描述,在文章【关键呈现路径】中详细介绍了关键呈现路径对DOMContentLoaded的影响。

在不支持DOMContentLoaded事件的浏览器中可以通过模拟获取近似值,主要的模拟方法有:

1)低版本webkit内核浏览器可以通过轮询document.readyState来实现

2)ie中可通过setTimeout不断调用documentElement的doScroll方法,直到其可用来实现

具体实现方法可以参考主流框架(jquery等)的实现。 DOM Ready时间点意味着用户与页面可以进行交互了,因此越早越好,对于该时间点的优化有:

1)减少dom结构的复杂度,节点尽可能少,嵌套不要太深

2)优化关键呈现路径

3.首屏时间

该时间点表示用户看到第一屏页面的时间,这个时间点很重要但是很难获取,一般都只能通过模拟获取一个近似时间。一般模拟方法有:

1)不断获取屏幕截图,当截图不再变化时,可以视为首屏时间。可参考webPagetest的Speed Index算法;

2)一般影响首屏的主要因素是图片的加载,通过页面加载完后判断图片是否在首屏内,找出加载最慢的一张即可视为首屏时间。当然还需考虑其他细节,具体可参考【7天打造前端性能监控系统】

针对该时间点的优化有:

1)页面首屏的显示尽量不要依赖于js代码,js尽量放到domReady后执行或加载

2)首屏外的图片延迟加载

3)首屏结构尽量简单,首屏外的css可延迟加载

onload

该时间点是window.onload事件触发的时间,表示原始文档和所有引用的内容已经加载完成,用户最明显的感觉就是浏览器tab上loading状态结束。 

该时间点的优化方式有:

1)减少资源的请求数和文件大小

2)将非初始化脚本放到onLoad之后执行

3)无需同步的脚本异步加载

为了优化整站性能,页面onload的时候可以考虑做一些预加载,把其它页面需要用到的资源预先加载进来。

希望阅读了上面的文章,对您的前端开发道路上有所帮助。

相关阅读:

前端JS面试题

实用web前端JS与UI框架简介

web前端知识体系总结

Atas ialah kandungan terperinci 作为前端开发工程师一定要关注三点的性能指标. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Mengapa orang lain tidak melihat perhatian saya di Weibo? -Bagaimana untuk menyemak rekod pelawat di Weibo? Mengapa orang lain tidak melihat perhatian saya di Weibo? -Bagaimana untuk menyemak rekod pelawat di Weibo? Mar 18, 2024 am 11:22 AM

Mengapa orang lain tidak melihat perhatian saya di Weibo? Kita hanya perlu mengklasifikasikan blogger tersebut ke dalam kumpulan "Follow quietly" supaya orang lain tidak nampak kita mengikutinya. 1. Buka Weibo pada telefon mudah alih anda dan klik [Ikuti] pada halaman utama. 2. Klik [Ikuti secara senyap] dalam "Kumpulan Saya". Bagaimana untuk menyemak rekod pelawat di Weibo? 1. Fungsi rakaman pelawat yang diuji di Weibo pada masa ini hanya boleh dilihat oleh SVIP dan VVIP, dan hanya tersedia kepada sesetengah pengguna. 2. Pengguna boleh mencari catatan rekod pelawat dalam [Lagi Fungsi] di bawah pusat peribadi, di mana mereka boleh melihat bilangan pelawat, pelawat dan orang yang melawat dengan lebih kerap. 3. Fungsi ini hanya terbuka kepada pengguna SVIP dan VVIP, dan tidak tersedia buat sementara waktu untuk pengguna biasa dan pengguna ahli biasa. 4. Pendek kata, pelawat menguji Weibo

'Kamus Collins' mengumumkan perkataan paling popular di UK pada tahun 2023: AI 'Kamus Collins' mengumumkan perkataan paling popular di UK pada tahun 2023: AI Nov 02, 2023 am 08:13 AM

[Laporan Komprehensif Global Times] Menurut laporan "Guardian" British pada 31 Oktober, "Collins Dictionary" memilih perkataan yang paling banyak diperkatakan di UK pada tahun 2023 - kecerdasan buatan (AI). Collins Publishers berkata ia memilih "AI" sebagai perkataan terbaiknya kerana ia "berkembang dengan pantas" sehingga penggunaan akronim itu meningkat empat kali ganda pada tahun lalu. Kamus Collins mentakrifkan "AI" sebagai "penggunaan program komputer untuk memodelkan fungsi psikologi manusia." Alex Beecroft, pengurus besar rumah penerbitan, berkata “AI” sudah pasti menjadi topik tumpuan pada tahun 2023. “Ia telah menjadi di mana-mana dalam tempoh yang singkat dahulu, tetapi kini ia telah disepadukan di mana-mana hidup sebagai teknologi harian."

Cara menambah pengesanan ikut pada halaman utama Weibo_Pengenalan kepada tetapan kaedah pengesanan ikut di Weibo Cara menambah pengesanan ikut pada halaman utama Weibo_Pengenalan kepada tetapan kaedah pengesanan ikut di Weibo Mar 30, 2024 pm 12:41 PM

1. Selepas memasuki Weibo, klik [Saya] untuk memasuki pusat peribadi. 2. Pilih [Lebih Kad Fungsi]. 3. Cari senarai Weibo berikut dan pilih [Tambah] dalam gambar. 4. Kemudian kita dapat melihat bahawa pengesanan berikut telah ditambahkan pada kad fungsi, dan anda boleh terus klik di sini untuk mengesan maklumat peribadi.

Apakah yang dilakukan oleh seorang jurutera java? Apakah yang dilakukan oleh seorang jurutera java? Dec 22, 2023 pm 04:46 PM

Tanggungjawab jurutera Java: 1. Jurutera Java bertanggungjawab untuk menganalisis dan memahami keperluan pelanggan atau syarikat, dan mereka bentuk penyelesaian perisian berdasarkan keperluan ini Mereka perlu berkomunikasi dengan pelanggan atau ahli pasukan untuk memastikan ketepatan dan kesempurnaan memahami keperluan; 2. Jurutera Java Anda perlu biasa dengan dan menguasai pelbagai alat dan rangka kerja pembangunan Java 3. Jurutera Java juga perlu biasa dengan sistem pengurusan pangkalan data, seperti MySQL, Oracle atau SQL Server 4. Semasa proses pembangunan, Java jurutera perlu melakukan ujian sistem dan penyahpepijatan, dsb.

Analisis tanggungjawab jurutera hadapan: Apakah tugas utama? Analisis tanggungjawab jurutera hadapan: Apakah tugas utama? Mar 25, 2024 pm 05:09 PM

Analisis tanggungjawab jurutera hadapan: Apakah tugas utama? Dengan perkembangan pesat Internet, jurutera hadapan memainkan peranan profesional yang sangat penting, memainkan peranan penting sebagai jambatan antara pengguna dan aplikasi laman web. Jadi, apakah yang sering dilakukan oleh jurutera hadapan? Artikel ini akan menganalisis tanggungjawab jurutera hadapan, mari kita ketahui. 1. Tanggungjawab asas jurutera bahagian hadapan Pembangunan dan penyelenggaraan laman web: Jurutera bahagian hadapan bertanggungjawab untuk pembangunan bahagian hadapan tapak web, termasuk menulis HTML, CSS dan JavaScr tapak web

Bagaimana untuk menilai sama ada akaun Douyin patut diikuti? Bagaimana untuk menguji sama ada akaun telah dihadkan? Bagaimana untuk menilai sama ada akaun Douyin patut diikuti? Bagaimana untuk menguji sama ada akaun telah dihadkan? Apr 01, 2024 pm 05:37 PM

Dengan kebangkitan media sosial, Douyin telah menjadi salah satu platform video pendek yang paling popular di kalangan golongan muda. Di antara jumlah besar akaun Douyin, terdapat banyak akaun yang kaya dengan kandungan dan menarik, dan terdapat juga beberapa akaun yang berkualiti rendah dan cetek. Jadi, bagaimanakah kita harus menilai sama ada akaun Douyin patut diberi perhatian? 1. Bagaimana untuk menilai sama ada akaun Douyin patut diberi perhatian? Kita boleh menilai sama ada akaun layak diberi perhatian berdasarkan kualiti kandungannya. Akaun Douyin yang berkualiti tinggi biasanya menyediakan kandungan berharga yang boleh membawa kebahagiaan, pencerahan atau pemikiran kepada penonton. Kandungan ini boleh diedit dengan teliti video lucu pendek, atau ia boleh menjadi petua kehidupan, membuat makanan atau perkongsian pengalaman perjalanan, dsb. Kandungan ini boleh diedit dengan teliti video lucu pendek, atau ia boleh menjadi petua kehidupan, membuat makanan atau perjalanan.

Cara mengikuti dan menuntut hadiah di Weibo_Cara mengikuti dan menuntut hadiah di Weibo Cara mengikuti dan menuntut hadiah di Weibo_Cara mengikuti dan menuntut hadiah di Weibo Mar 30, 2024 pm 12:21 PM

1. Pertama klik pada Weibo. 2. Kemudian terus klik pada saya di bawah dan pilih untuk melakukan tugasan berikut 4. Pilih watak anda sendiri untuk diikuti. 5. Selepas mengikuti 5 aksara, tuntut hadiah. 6. Dapatkan ganjaran daripada perhatian Weibo.

Wajib dibaca untuk jurutera pembangunan bahasa Go: Gambaran keseluruhan status pengambilan syarikat-syarikat utama ini! Wajib dibaca untuk jurutera pembangunan bahasa Go: Gambaran keseluruhan status pengambilan syarikat-syarikat utama ini! Mar 04, 2024 pm 09:21 PM

Wajib dibaca untuk jurutera pembangunan bahasa Go: Gambaran keseluruhan status pengambilan syarikat-syarikat utama ini! Dengan perkembangan pesat industri Internet, bahasa Go, sebagai bahasa pengaturcaraan yang cekap, stabil dan mudah digunakan, semakin digemari oleh perusahaan. Banyak syarikat Internet yang besar telah mula merekrut jurutera pembangunan bahasa Go Untuk membantu pembangun yang berhasrat untuk melibatkan diri dalam bidang ini dengan lebih memahami permintaan pasaran, artikel ini akan memperkenalkan kepada anda status pengambilan beberapa syarikat terkenal. Teknologi Tencent: Sebagai salah satu gergasi teknologi paling berpengaruh di China, Tencent terus mengembangkan pasukan teknikalnya.

See all articles