


As a front-end development engineer, you must pay attention to three performance indicators:
As a qualified front-end development engineer, do you know several performance indicators that you need to pay attention to? Today I will give you a good introduction to the three indicators that you must pay attention to as a front-end engineer
1. Regarding the page response time, there is a famous "2-5-8 principle". When a user visits a page:
When the response is received within 2 seconds, the system response will be felt quickly;
When the response is received between 2-5 seconds, the system response speed will be felt It's OK;
When the response is received within 5-8 seconds, the system's response speed will feel very slow, but it is acceptable;
When the user still cannot get the response after more than 8 seconds, the user You will feel that the system is terrible and choose to leave the site or initiate a second request.
If a website hopes to capture users, the speed and stability of the website are the first priority.
You can get many performance indicators of the page from various front-end monitoring platforms. This article will introduce several key indicators and give corresponding optimization ideas.
2. Start rendering time
This time point indicates that the browser starts drawing the page. Before this, the page is white screen, so it is also called white screen time.
This time point can be represented by the formula Time To Start Render = TTFB (Time To First Byte) + TTDD (Time To Document Download) + TTHE (Time To Head End). Among them, TTFB represents the time from the browser initiating the request to the server returning the first byte, TTDD represents the time to load the HTML document from the server, and TTHE represents the time required to complete the parsing of the document header. There is a corresponding attribute in advanced browsers to obtain this time point. Chrome can be obtained through chrome.loadTimes().firstPaintTime, and IE9+ can be obtained through performance.timing.msFirstPaint. In unsupported browsers, the approximate value can be simulated by obtaining the moment when the header resource is loaded according to the above formula. The faster the start rendering time, the faster users can see the page.
Optimizations at this point in time include:
1) Optimize server response time, server output as early as possible
2) Reduce html file size
3 ) Reduce header resources and put the script in the body as much as possible
DOM Ready
This point in time indicates that the DOM parsing has been completed and the resources have not been loaded. At this time, the user and the page Interaction is already available. It can be expressed by the formula TimeTo Dom Ready = TTSR(Time To Start Render) + TTDC(Time To Dom Created) + TTST(Time To Script). TTSR has been introduced above, and TTDC represents the time it takes to create the DOM tree. TTST represents the loading and execution time of all static scripts in BODY. There is a corresponding DOMContentLoaded event in advanced browsers. The document describing the DOMContentLoaded event on MDN is as follows,
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).
For detailed specifications, please view the W3C's HTML5 specification. It can be seen from the MDN document that this event mainly refers to the completion of loading and parsing of the DOM document. It seems very simple, but the triggering of the DOMContentLoaded event is closely related to css and js. Now there is a special term Critical Rendering Path (critical rendering path) to describe it. The impact of the critical rendering path on DOMContentLoaded is introduced in detail in the article [Critical Rendering Path].
In browsers that do not support the DOMContentLoaded event, you can obtain approximate values through simulation. The main simulation methods are:
1) Low-version webkit kernel browsers can poll the document. readyState to achieve
2) In IE, the doScroll method of documentElement can be continuously called through setTimeout until it can be used to implement
The specific implementation method can refer to the implementation of mainstream frameworks (jquery, etc.). The DOM Ready time point means that the user can interact with the page, so the earlier the better. Optimizations for this time point include:
1) Reduce the complexity of the DOM structure, with as few nodes as possible, and nesting Don’t go too deep
2) Optimize the key presentation path
3. First screen time
This time point represents the time when the user sees the first screen page. This The time point is important but difficult to obtain. Generally, an approximate time can only be obtained through simulation. The general simulation methods are:
1) Continuously obtain screenshots. When the screenshots no longer change, it can be regarded as the first screen time. You can refer to the Speed Index algorithm of webPagetest;
2) Generally, the main factor that affects the first screen is the loading of picture. After the page is loaded, determine whether the picture is in the first screen and find out whether it is loaded. The slowest one can be regarded as the first screen time. Of course, other details need to be considered. For details, please refer to [Building a front-end performance monitoring system in 7 days]
The optimizations for this time point are:
1) Try not to rely on the display of the first screen of the page. js code, js should be executed or loaded after domReady as much as possible
2) Delayed loading of images outside the first screen
3) Keep the structure of the first screen as simple as possible, and css outside the first screen can be delayed loaded
onload
at this time It is the time when the window.onload event is triggered, which means that the original document and all referenced content have been loaded. The most obvious feeling for the user is that the loading state on the browser tab has ended.
The optimization methods at this point in time are:
1) Reduce the number of resource requests and file size
2) Place the non-initialization script after onLoad and execute it
3) Asynchronous loading of scripts without synchronization
In order to optimize the performance of the entire site, you can consider doing some preloading when onloading the page, and preloading the resources that other pages need to use.
I hope that reading the above article will be helpful to you on the road to front-end development.
Related reading:
Front-end JS interview questions
Introduction to practical web front-end JS and UI framework
Web front-end knowledge system summary
The above is the detailed content of As a front-end development engineer, you must pay attention to three performance indicators:. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



Why don’t others see my attention on Weibo? We only need to classify the blogger into the group "Follow quietly" so that others will not see that we are following him. 1. Open Weibo on your mobile phone and click [Follow] on the homepage. 2. Click [Follow quietly] in "My Group". How to check visitor records on Weibo? 1. The visitor recording function tested on Weibo is currently only visible to SVIP and VVIP, and is only open to some users. 2. Users can find the visitor record entrance in [More Functions] under the personal center, where they can view the number of visitors, the visitors, and the people who visit more frequently. 3. This function is only open to SVIP and VVIP users, and is temporarily unavailable to ordinary users and ordinary member users. 4. In short, Weibo test visitors

[Global Times Comprehensive Report] According to the British "Guardian" report on October 31, "Collins Dictionary" selected the most talked about word in the UK in 2023 - artificial intelligence (AI). Collins Publishers said it chose "AI" as its word of the year because it is "growing so fast" that usage of the acronym has quadrupled in the past year. The Collins Dictionary defines "AI" as "the use of computer programs to model human psychological functions." Alex Beecroft, general manager of the publishing house, said that “AI” is undoubtedly the focus topic in 2023. “It has become ubiquitous in a short period of time. It once sounded futuristic, but now it has become ubiquitous. integrated into our lives as everyday technology.”

1. After entering Weibo, click [Me] to enter the personal center. 2. Select [More Function Cards]. 3. Find the Weibo following list and select [Add] in the picture. 4. Then we can see that the following detection has been added to the function card, and you can directly click here to detect personal information.

Java engineer responsibilities: 1. Java engineers are responsible for analyzing and understanding the needs of customers or companies, and designing software solutions based on these needs. They need to communicate with customers or team members to ensure the accuracy and completeness of understanding the requirements; 2. Java engineers You need to be familiar with and master various Java development tools and frameworks; 3. Java engineers also need to be familiar with database management systems, such as MySQL, Oracle or SQL Server; 4. During the development process, Java engineers need to perform system testing and debugging, etc.

Analysis of front-end engineer responsibilities: What is the main job? With the rapid development of the Internet, front-end engineers play a very important professional role, playing a vital role as a bridge between users and website applications. So, what do front-end engineers mainly do? This article will analyze the responsibilities of front-end engineers, let us find out. 1. Basic responsibilities of front-end engineers Website development and maintenance: Front-end engineers are responsible for the front-end development of the website, including writing the website’s HTML, CSS and JavaScr

With the rise of social media, Douyin has become one of the most popular short video platforms among young people. Among the massive number of Douyin accounts, there are many accounts that are rich in content and interesting, and there are also some accounts that are of low quality and superficial. So, how should we judge whether a Douyin account is worthy of attention? 1. How to judge whether a Douyin account is worthy of attention? We can judge whether an account is worthy of attention based on the quality of its content. A high-quality Douyin account usually provides valuable content that can bring happiness, enlightenment or thinking to the audience. These contents can be carefully edited short funny videos, or they can be life tips, food making or travel experience sharing, etc. These contents can be carefully edited short funny videos, or they can be life tips, food making or travel.

1. First click on Weibo. 2. Then continue to click on me below and choose to do the following task. 4. Select your own character to follow. 5. After following 5 characters, you can claim the prize. 6. Get rewards from Weibo attention.

A must-read for Go language development engineers: An overview of the recruitment status of these major companies! With the rapid development of the Internet industry, Go language, as an efficient, stable and easy-to-use programming language, is increasingly favored by enterprises. Many large Internet companies have begun to recruit Go language development engineers. In order to help developers who intend to engage in this field better understand the market demand, this article will introduce to you the recruitment status of some well-known companies. Tencent Technology: As one of China’s most influential technology giants, Tencent has been continuously expanding its technical team.
