Lightning Talk: Migrating from JS to WASM in production and living to tell the ta...
summary
Company migrates a client-side CDN load balancer from JavaScript to C++ compiled with Emscripten and deploys the WASM build to production, keeping one codebase for web, iOS, and Android. Design uses an actor/task scheduler so small tasks run on the browser event loop and on native threads, avoiding data races. Highlights: Emscripten flags: -Os, --profiling, --memory-profiler, --closure 1, Syncify doubles binary size and adds overhead, single-threaded browser constraints and web worker/SharedArrayBuffer limits.
AI-written summary · about
chapters (10)
- 0:00Introduction
- 0:13Context
- 0:43History
- 1:24Motivations
- 4:14Project Architecture
- 5:21Code Based General Design
- 6:01Actor Model
- 7:22Debugging
- 7:57Useful flags
- 8:48Conclusion
related talks
23mA Love Story Between JavaScript and C++
26mWebAssembly as cross-platform architecture?!
13mLightning Talk: Wildly Distributed Programming: Wasm and the Future of Distribute...
34mBack to the FUTURE! From C++ to JS
05mLightning Talk: The Present and Future of Cross-Platform GUI in C++
30mWebAssembly as cross-platform architecture?!
52mWebAssembly: Taking Your C++ and Going Places
28mWebAssembly: Of Portability, and Performance
