Vai al contenuto principale della pagina
Autore: | Jain Shashank |
Titolo: | Webassembly for cloud : a basic guide for Wasm-based cloud apps / / Shashank Mohan Jain |
Pubblicazione: | New York, New York : , : Apress Media LLC, , [2022] |
©2022 | |
Descrizione fisica: | 1 online resource (170 pages) |
Disciplina: | 006.76 |
Soggetto topico: | Application software - Development |
Web site development | |
Cloud computing | |
Note generali: | Includes index. |
Nota di contenuto: | Intro -- Table of Contents -- About the Author -- About the Technical Reviewer -- Acknowledgments -- Introduction -- Chapter 1: WebAssembly Introduction -- Wasm in the Cloud -- WebAssembly Use Cases -- WebAssembly Architecture -- Stack-Based Virtual Machine -- Summary -- Chapter 2: WebAssembly Module Internals: Sections and Memory Model -- Type Section -- Function Section -- Code Section -- Export Section -- Import Section -- Table Section -- Memory Section -- Data Section -- Custom Section -- Start Section -- Global Section -- Programmatically Parsing a Wasm File -- Summary -- Chapter 3: WebAssembly Text Toolkit and Other Utilities -- The wat2wasm Utility -- Tables -- The wasm2wat Utility -- Object Dump Using wasm-objdump -- Summary -- Chapter 4: WebAssembly with Rust and JavaScript: An Introduction to wasm-bindgen -- wasm-bindgen -- Prerequisites -- Complex Types via wasm-bindgen -- The Bloom Filter -- How a Bloom Filter Works -- The Cuckoo Filter -- Summary -- Chapter 5: waPC -- waPC Architecture -- Handling a Complex Type -- Rust Host for waPC-based Bindings -- Summary -- Chapter 6: Wasm Web Interface -- Node Example -- Summary -- Chapter 7: Wasm and Kubernetes -- Docker -- Kubernetes -- The Workings of Kubernetes -- Packaging a Rust Web App into a Docker Container -- Pushing an Image to a Docker Registry -- Prerequisites -- The Pod Yaml File -- The Service Yaml File -- A Golang-based Web App Deployed on Kubernetes -- Kubernetes Deployment of the Golang Web App -- The Pod Yaml File -- The Service Yaml File -- Summary -- Chapter 8: Extending Istio with WebAssembly -- What Is Envoy? -- Rust-based Wasm Filter -- Deployment Steps -- Envoy Setup -- Launch Envoy -- Summary -- Index. |
Sommario/riassunto: | 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, youll 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. Youll 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, youll 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. You will: Understand how Wasm can be used for server-side applications Learn about Wasm memory model and Wasm module layout Learn how communication between host and Wasm module is facilitated Understand the basics of Wasm sandboxing and security Learn the fundamentals of tooling around Wasm, such as WAT and Wasm-pack Create a Wasm module in Rust and consume it from JavaScript, Rust and Golang. Grasp how Kubernetes can be used to orchestrate Wasm-based workloads See how Wasm fits into service mesh. |
Titolo autorizzato: | Webassembly for cloud |
ISBN: | 1-4842-7496-2 |
Formato: | Materiale a stampa |
Livello bibliografico | Monografia |
Lingua di pubblicazione: | Inglese |
Record Nr.: | 9910522957203321 |
Lo trovi qui: | Univ. Federico II |
Opac: | Controlla la disponibilità qui |