Composable Concurrency for WebAssembly Components
summary
Component Model P3 adds composable concurrency by shipping a new async ABI for imports/exports, plus task.return and built-in streams and futures so a component can return a response and keep feeding its body. It supports both stackless and stackful guest runtimes (Python async and Go goroutines shown) and demonstrates streaming middleware that compresses an upstream response without buffering. Spec changes are merged; wasmtime and wasm-bindgen prototypes exist but are marked experimental with security work left.
AI-written summary · about
chapters (12)
- 0:00Composable concurrency intro
- 1:24Preview 2 limitations
- 5:16Preview 3 goals
- 7:03Designing concurrency primitives
- 11:18Sandboxing and polyglot composition
- 14:48HTTP with component model
- 16:34Python streaming middleware
- 19:50Go streaming compression
- 22:15Implementation status
- 25:28Next steps
- 27:33Zero-copy vision with iouring
- 28:38Q&A
related talks
32mThreading the needle with concurrency and parallelism in the Component Model
38mTowards a Component Model 1.0
30mKeynote: What is a Component (and Why)?
52mWhat is a WebAssembly component (and why?)
30mWasm Component Composition: A New Era of Language Interoperability
34mWasm Components for Every Language
16mThe nuts and bolts of WebAssembly's component model
31mWebAssembly Component Model: Enhancing Security, Productivity, and...
