JavaScript-körningstid
Silktide mäter hur mycket tid webbläsaren ägnar åt att köra skript medan sidan läses in. Omfattande skriptarbete gör att sidan slutar svara, så en sida kan se inläst ut men ändå ignorera tryck och klick i flera sekunder.
Varför detta är viktigt
Att ladda ner ett skript är bara den första kostnaden. Webbläsaren måste sedan tolka och köra det, och allt detta sker på samma tråd som hanterar rullning, skrivning och tryck. Medan skript körs är sidan döv: knappar svarar inte och sidan känns trasig trots att den ser färdig ut.
Till skillnad från nedladdningstiden ökar denna kostnad beroende på besökarens processor – ett skript som körs på en halv sekund på en utvecklares dator kan ta flera sekunder på en enklare telefon. Besökare med de billigaste enheterna får vänta längst.
Så här åtgärdar du det
- Skicka mindre . Att ta bort oanvänd kod är den mest direkta förbättringen – se Oanvänt JavaScript.
- Dela upp stora paket och läs bara in kod för funktioner som ligger nedanför det synliga området eller som styrs av interaktion när den behövs, så att den första inläsningen bara kör det som krävs på den första skärmen.
- Granska tredjepartsskript, som ofta står för den största delen av körningstiden – se Tredjepartskod. Ta bort sådana vars värde inte motiverar kostnaden.
- Flytta verkligt tunga beräkningar till en web worker, som körs på en separat tråd och låter sidan fortsätta svara.
Så testar Silktide detta
- Läs in sidan i en riktig webbläsare med den enhetstyp, anslutningshastighet och testplats som har konfigurerats för dina hastighetstester.
- Mät den bearbetningstid som varje skript förbrukade under inläsningen, uppdelad i att köra koden (skriptutvärdering) och att förbereda den för körning (tolkning).
- Rapportera skripten som förbrukade betydande tid, med en uppdelning per fil. När den totala körningstiden är låg listas inga enskilda skript.
- Bedöm sidan utifrån totalen: under 2 sekunder är bra, och omkring 3,5 sekunder eller mer bedöms som dåligt.
Felsökning
Ett tredjepartsskript hamnar högst upp på listan
Analytics, tagghanterare, annonser och chattwidgetar kräver ofta mer körningstid än webbplatsens egen kod. Du kan inte optimera deras interna kod, men du kan läsa in dem senare, ersätta dem med lättare alternativ eller ta bort dem som ingen använder.
Sidan känns snabb på min dator
Körningstiden beror på processorn. Utvecklardatorer är vanligtvis flera gånger snabbare än de telefoner i mellansegmentet som de flesta besökare använder, så en fördröjning som knappt märks för dig kan vara flera sekunder för dem. De uppmätta värdena kommer från ett kontrollerat test, inte från din maskinvara.