Sobes.tech
Junior

Cum se măsoară viteza de încărcare a unui site web?

sobes.tech AI

Răspuns de la AI

Viteza de încărcare a unui site web poate fi măsurată în mai multe moduri:

  1. Instrumente de dezvoltare în browser:

    • Deschideți fila "Network" (Rețea) în instrumentele de dezvoltare (F12).
    • Reîmprospătați pagina.
    • Analizați indicatorii de timp pentru fiecare resursă (HTML, CSS, JS, imagini):
      • Waiting (TTFB): Timpul până la primirea primului octet de la server.
      • Content Download: Timpul de descărcare a conținutului.
      • Total: Timpul total de încărcare a resursei.
    • Acordați atenție diagramei Waterfall (cascade) pentru vizualizarea secvenței de încărcare a resurselor.
    • Analizați sumarul (Summary) din partea de jos a filei pentru timpul total de încărcare și numărul de solicitări.
  2. Servicii online pentru măsurarea vitezei:

    • Google PageSpeed Insights: Analizează performanța pentru dispozitive mobile și desktop, oferă recomandări de optimizare.
    • GTmetrix: Oferă metrici precum PageSpeed și YSlow, raport detaliat despre încărcare, performanță și recomandări.
    • Pingdom Website Speed Test: Măsoară viteza din diferite locații, oferă o analiză detaliată a performanței.
    • WebPageTest: Permite testarea din diferite locații și browsere, oferă multe metrici și vizualizări.
  3. Metrici de urmărit:

    • Time to First Byte (TTFB): Timpul până la primirea primului octet de la server.
    • Largest Contentful Paint (LCP): Timpul până când apare cel mai mare element de conținut în partea vizibilă a ecranului.
    • First Input Delay (FID): Timpul de la prima interacțiune a utilizatorului până la răspunsul browserului.
    • Cumulative Layout Shift (CLS): Indicatorul total al deplasării aspectului în timpul încărcării.
    • DOMContentLoaded: Timpul când browserul a încărcat și a analizat complet documentul HTML.
    • Load: Timpul de încărcare completă a tuturor resurselor paginii.
  4. Automatizare cu framework-uri:

    • Lighthouse (instrument Google): Poate fi utilizat ca instrument CLI sau integrat în pipeline-uri CI/CD.
    # Exemplu de utilizare Lighthouse CLI
    lighthouse https://www.exemplu.com --output json,html --output-path ./raport.json
    
    • Selenium/WebDriver: Poate fi utilizat pentru a încărca pagina și a obține timpul de încărcare prin API-ul Performance al JavaScript.
    # Exemplu de obținere a timpului de încărcare cu Selenium și Performance API
    from selenium import webdriver
    import time
    
    driver = webdriver.Chrome() # Sau alt browser
    driver.get("https://www.exemplu.com")
    
    # Așteptați până când pagina se încarcă complet
    time.sleep(5) # Se pot folosi așteptări mai fiabile
    
    # Obțineți obiectul PerformanceTiming
    performance_timing = driver.execute_script("return window.performance.timing")
    
    # Calculați timpul de încărcare
    load_time = performance_timing['loadEventEnd'] - performance_timing['navigationStart']
    print(f"Timp de încărcare: {load_time} ms")
    
    driver.quit()
    
    • Cypress: De asemenea, oferă acces la API-ul Performance.
  5. Sisteme de monitorizare RUM (Real User Monitoring):

    • Instrumente care colectează date despre performanță direct de la utilizatorii reali ai site-ului. Exemple: Sentry, New Relic Browser.

Alegerea metodei depinde de scopuri: pentru evaluări rapide, serviciile online sunt potrivite; pentru analize detaliate și depanare, instrumentele de dezvoltare; iar pentru monitorizare regulată și integrare în procesele de dezvoltare, automatizare și sisteme RUM.