In the beginning was about metal, now is about Web: exploring WebAssembly in cloud envir.
summary
WASI gives WebAssembly network and file access and Go 1.21 ships Go 1.21 preview1 WASI support but the official toolchain cannot export Go functions yet; use the wazero runtime (pure Go) to embed modules and TinyGo exports to get callable functions. Passing strings requires manual pointer+length shims and only numeric params/one return are native. Kubernetes scheduler extensions prototype uses protobuf/grpc marshalling of large k8s objects and works but pays GC and copy costs.
AI-written summary · about
chapters (10)
- 0:00Introduction to WebAssembly
- 1:09WebAssembly System Interface
- 3:39Go 1.21 WASI support
- 8:55Extending apps with WASM plugins
- 19:45Memory and data exchange
- 24:41WebAssembly in cloud infrastructure
- 25:45Kubernetes scheduler extensions
- 30:46Changing APIs to fit WASM
- 34:27Current limitations and future
- 37:14Q&A
related talks
13mUnleashing the Power of WebAssembly System Interface (WASI) in Go
35mWASI to Go: Write Once, Go Anywhere
37mGo, WebAssembly!
24mReaching the Unix Philosophy's Logical Extreme with Webassembly
48mWebAssembly Beyond the Browser
32mWASM on Edge Serverless; Make Your Life Easier with Go and TinyGo
36mGo in the WebAssembly World: Beyond the Browser
38mWebAssembly for the backend
