wasm¶
有充分的理由相信 Wasm 代表了容器化的未来。与 Docker 相比,它的冷启动时间快了 10-100 倍,占用空间更小,并使用了更好的基于能力的约束安全模型。使 Wasm 模块(而不是容器)成为计算和部署的标准单元将实现更好的可扩展性和安全性。
社区样例¶
dapr-wasm A template project to demonstrate how to run WebAssembly functions as sidecar microservices in dapr
Cloud Native wasm¶
Dapr wasm sidecar 模式就靠它了。社区实践可以参考此文章
WasmEdge WasmEdge is a lightweight, high-performance, and extensible WebAssembly runtime for cloud native, edge, and decentralized applications. It powers serverless apps, embedded functions, microservices, smart contracts, and IoT devices.
有关社区实践,建议阅读 Manage WebAssembly Apps Using Container and Kubernetes Tools
WasmEdge
有可能有利于实现微服务的 Side Car 模式。
wasmCloud wasmCloud allows for simple, secure, distributed application development using WebAssembly actors and capability providers.
GraalVM Implementation¶
Graal wasm 官方实现,但截止写笔记时还不支持 wasi
。(2022年6月22日)
Truffle Wasm 第三方实现,首次支持 wasi
。
runtime¶
wasmer 🚀 The leading WebAssembly Runtime supporting WASI and Emscripten.
我比较看好这个运行时。
wasmtime Standalone JIT-style runtime for WebAssembly, using Cranelift
我不看好这个运行时。既然都 JIT 了,那还不如只用 JavaScript。