Wasm: The Next Generation Beyond Kubernetes?
WebAssembly, often abbreviated as Wasm, is gaining significant attention and continues to experience organic community growth. With all this traction, is it poised to take on Kubernetes as the new architectural paradigm?
I recently caught up with Michael Cade, global field CTO at Veeam Software, and we delved into the future of WebAssembly (Wasm) and its relation to Kubernetes and cloud-native development. Below, we’ll explore the state of adoption, its benefits, drawbacks and future outlook in the cloud-native ecosystem.
The State of Wasm Adoption
Wasm is an emerging technology that runs alongside HTML, CSS and JavaScript as the ‘fourth language’ for the web, designed to enable high-performance applications in browsers. According to Cade, it has garnered significant buy-in and is a hot topic, attracting widespread attention and organic community growth.
While some people try to make it a Kubernetes-versus-Wasm faceoff, Cade views them not as diametrically opposed but as different options for different purposes. Wasm and containers serve distinct purposes and should not be pitted against each other. While Kubernetes experienced significant hype in the past, Wasm is still relatively young but shows promise as a powerful technology with potential in various domains.
“Yeah, I think it’s the next move. Is it the only one? No,” Cade said. Containers are a ubiquitous style among off-the-shelf SaaS-based offerings and will be for some time. What’s more, folks are still coming to grips with containerization. And virtual machine-based cloud instances are also still quite common and likely won’t be refactored into Wasm modules anytime soon.
Benefits of Using WASM
Compared to traditional containerization, Wasm offers several key advantages:
Speed, Security and Support
Cade breaks the advantages into the three S’s: Speed, security and support. Wasm provides near-native performance thanks to its low-level format designed for efficient execution on modern processors. Additionally, it operates in a memory-safe sandbox, making it more secure than running client-side JavaScript. Lastly, it is supported across major browsers like Chrome, Firefox, Edge and Safari, ensuring broad accessibility.
Portability and Interoperability
Another big selling point is its portability. Wasm code can run inside containers, enabling developers to use their preferred languages to create both web and server-side applications. Its portability allows applications to run anywhere, making it an attractive option for various use cases.
There have also been interesting efforts to integrate it into other environments. For example, some headway has been made to extend the Envoy filter chain with Wasm.
Drawbacks of Using WASM
While Wasm holds promise, it also has some technical challenges:
Retooling and Technical Deficiencies
Wasm does require some retooling, an aspect that could slow its adoption for existing applications, limiting its immediate use. “Wasm is super cool, but it requires retooling and has technical deficiencies for recompiling backend workloads,” said Mehran Farimani, CEO of RapidFort. “While it will get some traction for newer applications, I’d expect that its adoption for existing workloads will take a long time and will only capture a small fraction of the market.”
Retaining Stability
Keeping the standard stable as it grows could become another potential hangup for Wasm, Cade hypothesized. While Wasm is broad-facing now, it could fracture if certain industries become more dominant drivers behind its evolution.
Future Outlook for Wasm
Cade isn’t the only one with a favorable opinion of Wasm. Even Solomon Hykes, the founder of Docker, has expressed genuine excitement for the technology. As he’s mentioned on X (formerly Twitter):
“If WASM+WASI existed in 2008, we wouldn’t have needed to created Docker. That’s how important it is. WebAssembly on the server is the future of computing. A standardized system interface was the missing link. Let’s hope WASM is up to the task!”
Yet, while Wasm is generating significant interest, it is not likely to replace containers entirely any time soon. The technology is still young and evolving. Furthermore, Cade believes that Wasm and Kubernetes are not competitors but can work side by side, providing different benefits to developers and operators.
He predicted that the adoption of Wasm will increase over the next few years if the community enabled it, especially if it overcomes some networking challenges. However, Kubernetes will remain crucial for some time due to its proven efficiency and scalability in managing microservices and applications.
Final Thoughts
WebAssembly is an exciting development in the world of web technologies. Its ability to offer near-native performance, enhanced security and support for multiple languages makes it a compelling option for various use cases. But, like any emerging technology, it has some drawbacks and will take time to mature and gain widespread adoption.
As of now, Wasm is not poised to replace containers entirely, but it complements Kubernetes and cloud-native development. The future outlook for WASM is optimistic, with increasing interest and potential applications in fields like multimedia, gaming, cryptography and more.
Developers and organizations should keep an eye on Wasm’s progress and consider it as an additional tool in their software development arsenal. While it may not be the only solution, it offers unique benefits and contributes to the evolving landscape of modern application development. As the technology matures and the community continues to innovate, we can expect to see even more exciting use cases and integrations with existing cloud-native environments.
“Anyone working in the existing cloud-native landscape today should probably be looking into how we can streamline existing functionality into some sort of web assembly function,” said Cade.