Skip to content

getPerformance

Holt die Leistungsdaten der Seite: DNS-Auflösung, TCP-Verbindung, Laden der Ressourcen und weitere Kennzahlen.

API

getPerformance

Rückgabe

ArgumentBeschreibungTyp
BasicType | undefinedDas Objekt mit den LeistungsdatenBasicType | undefined

BasicType

EigenschaftBeschreibungTyp
dnsSearchDauer der DNS-Auflösung (ms)number
tcpConnectDauer der TCP-Verbindung (ms)number
sslConnectDauer der sicheren SSL-Verbindung (ms)number
requestTTFB: Dauer der Netzwerkanfrage (ms)number
responseDauer der Datenübertragung (ms)number
parseDomTreeDauer des DOM-Parsens (ms)number
resourceDauer des Ressourcenladens (ms)number
domReadyZeit bis DOM Ready (ms)number
httpHeadGröße der HTTP-Header (Bytes)number
interactiveZeit bis zur ersten Bedienbarkeit (ms)number
completeZeit bis die Seite vollständig geladen ist (ms)number
redirectAnzahl der Weiterleitungennumber
redirectTimeDauer der Weiterleitungen (ms)number
durationGesamtdauer der Ressourcenanfragen (ms)number
fpZeit bis zum ersten Zeichnen (Dauer des weißen Bildschirms, ms)number | undefined
fcpZeit bis zum ersten inhaltlichen Zeichnen (Ende des ersten Bildschirms, ms)number | undefined

Parameter

Keine Parameter

Beispiel

Grundlegende Verwendung

js
import { getPerformance } from 'ranuts';

const perf = getPerformance();
if (perf) {
  console.log('DNS-Auflösung:', perf.dnsSearch, 'ms');
  console.log('TCP-Verbindung:', perf.tcpConnect, 'ms');
  console.log('Erster Bildschirm:', perf.fcp, 'ms');
}

Leistungsmessung

js
import { getPerformance } from 'ranuts';

window.addEventListener('load', () => {
  const perf = getPerformance();
  if (perf) {
    // Die Leistungsdaten an den Server schicken
    sendToServer({
      dns: perf.dnsSearch,
      tcp: perf.tcpConnect,
      request: perf.request,
      fcp: perf.fcp,
    });
  }
});

Analyse der Leistung

js
import { getPerformance } from 'ranuts';

function analyzePerformance() {
  const perf = getPerformance();
  if (!perf) return;

  console.log('=== Analyse der Leistung ===');
  console.log('DNS-Auflösung:', perf.dnsSearch, 'ms');
  console.log('TCP-Verbindung:', perf.tcpConnect, 'ms');
  console.log('SSL-Handschlag:', perf.sslConnect, 'ms');
  console.log('Antwort auf die Anfrage:', perf.request, 'ms');
  console.log('Datenübertragung:', perf.response, 'ms');
  console.log('DOM-Parsen:', perf.parseDomTree, 'ms');
  console.log('Ressourcen laden:', perf.resource, 'ms');
  console.log('Erstes Zeichnen:', perf.fp, 'ms');
  console.log('Erstes inhaltliches Zeichnen:', perf.fcp, 'ms');
}

Hinweise

  1. Browser-Unterstützung: Der Browser muss die Performance API kennen — alle modernen tun das.

  2. Server-Umgebung: Gibt in Server-Umgebungen (kein window-Objekt) undefined zurück.

  3. Zeitpunkt: Ruf es am besten auf, nachdem die Seite fertig geladen hat (load-Ereignis), damit die Daten vollständig sind.

  4. Einheiten: Alle Zeiten in Millisekunden, alle Größen in Bytes.

  5. Einsatz: üblich zur Überwachung, zur Analyse und zur Verbesserung der Leistung.

Veröffentlicht unter der MIT-Lizenz.