Sprint 8: Performance Pipeline — Parallel Fetch, CSS/Image Filter, Virtual Clock 🚀 #59
Labels
No labels
bug
docs
feature
housekeeping
html-spec
performance
react-compat
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
glow-all/true-headless-browser#59
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Sprint 8: Performance Pipeline 🚀
Issue: #58
Epic: Phase 2 Production Engine
Aufwand: ~8h
Abhängigkeit: Sprint 7 (#57) — stabile Execution-Architektur
Problem
Aktuell werden Scripts seriell gefetched (1 nach dem anderen), CSS/Images werden sinnlos geladen, und die RAF-Schleife läuft bei ~1000fps. Das kostet ~50% Performance im Vergleich zu Chrome.
Lösung
1. Parallel Fetch Pipeline — Alle
<script src>werden parallel gefetched, nicht seriell:2. CSS/Image Filter — Dateien die wir nicht brauchen gar nicht fetchen:
<link rel="stylesheet">→ kein Fetch (sofortonload)<img src>→ kein Fetch (leeres Image, sofortonload)<source srcset>→ kein Fetch<video poster>→ kein Fetch3. Virtual Clock — RAF capped auf max 60fps, konfigurierbar:
4. TCP Connection Pool — Wiederverwenden von HTTP-Verbindungen:
fetch()hat native Keep-Alive, aber wir öffnen pro Request neue VerbindungenAgentmit Connection Pool5. Performance Metriken:
Betroffene Dateien
src/js/script-loader.tssrc/network/fetch.tssrc/fakes/fast-raf.tssrc/pages/page.tstiming()API,maxFPSOptionsrc/pages/stabilizer.tsAkzeptanzkriterien
maxFPS)page.timing()gibt ms-genaue Metriken