Journey into the amazing world of WebAssembly (Wasm) and learn about how it can be applied on the cloud. This book is an introduction to Wasm aimed at professionals accustomed to working with cloud-related technologies such as Kubernetes and Istio service mesh. Author Shashank Jain begins with an introduction to Wasm and its related tooling such as wasm-bindgen and wapc. He then walks you through code examples using Rust, Golang, and JavaScript to demonstrate how they can be compiled to Wasm and consumed from Wasm runtimes deployed standalone, as well as on the cloud. You will see how a wasm module can be run through an http interface, and how Wasm fits into CNCF projects such as Kubernetes and Istio service mesh. After that, you’ll learn how the polyglot nature of WebAssembly can be leveraged through examples written in languages like Rust and consumed via Golang and JavaScript, with a focus on how WebAssembly allows interoperability between them. You’ll gain an understanding of how Wasm-based modules can be deployed inside Linux containers and orchestrated via Kubernetes, and how Wasm can be used within the Istio proxy to apply rules and filters. After reading this book, you’ll have the knowledge necessary to apply WebAssembly to create multi tenanted workloads which can be polyglot in nature and can be deployed on cloud environments like Kubernetes. What You Will Learn Who Is This Book For Software developers/architects who are looking to hone their skills in virtualization and explore alternatives to Docker and container-based technologies for their workload deployments. Readers should have a basic programming background in languages such as Rust and Golang to get the most out of this book.
A short tour of WebAssembly, focusing specifically on backend use-cases. It’s exciting to see what you can do right now with WASM and building towards that covered universal runtime target.
Even right now, WebAssembly eats into serverless and offers a more performant option for Cloud and edge computing. Also even compatible with Kubernetes clusters and can hook in easily to Istio/Envoy filtering, thanks to the latter able to support a WASM runtime.
WASM seems ready for use. And what seems to have been blinding so many people to this fact for so long has been the red herring fixation with using WebAssembly to usurp JavaScript in the browser. The uses for cloud computing alone make the browser based uses trivial by comparison.