Keep Running at Runtime
summary
Long-running web apps suffer different problems than page load; runtime focus targets errors, long tasks, frame rate, memory and throttling. Implement global error and unhandledrejection capture with a 100 ms debounce or use subscribable-things to avoid reimplementing it. Use ReportingObserver (Chrome) or CSP violation events for console-reported issues, and PerformanceObserver to detect long tasks (>~50 ms). Chrome supports async memory reads when the page is cross-origin-isolated (COOP/COEP headers). Use Wake Lock or worker/audio-based timers to avoid background throttling.
AI-written summary · about
chapters (18)
- 0:00Intro
- 0:37Running story
- 1:40Introduction
- 2:27The fastest page
- 3:36Track Runtime Errors
- 4:44Track Runtime Rejections
- 5:57Subcribable Things
- 6:50Ignoring Errors
- 7:38Reporting Observer
- 8:38Servo
- 9:53Tracking the Frame Rate
- 11:58Tracking Memory Consumption
- 13:44Memory Leak Prevention
- 14:20JSF Profiling API
- 14:45Lock Screen API
- 15:46Timers
- 16:42Conclusion
- 17:35Outro
related talks
50mWeb Performance APIs You (probably) Didn't Know Existed
59mWeb performance APIs you (probably) didn't know existed
01h 02mWeb Performance Tuning with browser APIs
30mWeb runtime performance
22mWeb Perf APIs That You (Probably) Never Knew Existed
32mExpect the Unexpected: How to Deal with Errors in Large Web Applications
55mI Feel the Need for Web Page Speed
27mDon't block the event loop!JavaScript Async for Effortless UX
