WASM Components are a FaaS' Best Friend

Disclaimer: This summary has been generated by AI. It is experimental, and feedback is welcomed. Please reach out to info@qconlondon.com with any comments or concerns.

Title: WASM Components are a FaaS' Best Friend

Speaker: Laurent Doguin, Director of Developer Relations & Strategy at Couchbase

Introduction:

The presentation explores the role of WebAssembly (WASM) components in enhancing Function as a Service (FaaS) platforms. It outlines the complexities involved in creating scalable, secure, and flexible FaaS architectures and how WASM offers a robust alternative to traditional containerization methods.

  • What is FaaS?

    FaaS involves running application functions as needed on a serverless runtime, which abstracts away server management.

  • WASM Benefits:
    • WASM components are portable and lightweight, supporting a wide range of languages, and offer good security and isolation.
    • They enhance observability with full support for OpenTelemetry.
  • Function and Serverless Architecture Differences:

    FaaS is a subset of serverless computing, focusing on executing small, discrete pieces of code within a larger system.

  • Practical Example:

    Laurent shared a use case involving CNCF's wasmCloud and Couchbase, highlighting how WASM-based solutions can be implemented in real-world applications.

  • NATS Messaging System:

    Described as a critical component for inter-component communication, NATS facilitates message-passing across distributed systems in the WASM architecture.

  • Challenges in Integration:
    • Memory management and data exchange between WASM modules can be complex, but the new WebAssembly Component Model simplifies this by standardizing interfaces.
    • WASM allows for extensive capability configurations, enhancing multi-cloud and multi-platform deployments.

The session concludes with an optimistic outlook on WASM’s potential to reshape serverless architecture, enabling broader adoption and flexibility in function deployment.

This is the end of the AI-generated content.


Why would you build your own Function as a Service platform and what does a FaaS architecture look like? Building something that can scale to zero, work with your existing systems, stay secure, and handle different workloads isn’t easy. You need a runtime that’s flexible, supports multiple languages, and provides good isolation.

When the industry first tackled this, containers seemed like the obvious answer. Maybe containers were the reason why developers started working on FaaS in the first place. But what if there was a better tool for the job? Enter WebAssembly.

In this talk, we’ll take a look at some challenges of building FaaS platforms, the typical existing architectural, and why more teams—like those at Cloudflare, Fastly, and even American Express—are betting on WebAssembly.

We'll wrap things up with a practical example using CNCF's wasmCloud and Couchbase, and show what this new approach can look like in the real world.


Speaker

Laurent Doguin

Director Developer Relations & Strategy @couchbase, Previously Developer Advocate @Clever Cloud and @Nuxeo

Laurent is a nerdy metal head who lives in Paris. He mostly writes code in Java and structured text in AsciiDoc, and often talks about data, reactive programming and other buzzwordy stuff. He is also a former Developer Advocate for Clever Cloud and Nuxeo where he devoted his time and expertise to helping those communities grow bigger and stronger. He now runs Developer Relations at Couchbase.

Read more
Find Laurent Doguin at:

From the same track

Session Startup

Questioning Convention: C# as a Shortcut to Startup Velocity

Tuesday Apr 8 / 10:35AM BST

Are you considering founding a startup? What stack would you use? Would you take a bet on a programming language you've never used professionally before? When building a company from scratch, these aren’t just theoretical questions – they’re make-or-break decisions with real consequences.

Speaker image - Sam Cox

Sam Cox

Co-Founder & CTO @Tracebit, Building Security Canaries at Scale

Session services

Expanding Swift from Apps to Services

Tuesday Apr 8 / 11:45AM BST

The Swift programming language is a popular choice for applications, but many engineers are less familiar with Swift’s capabilities for writing services. This session will explore why Swift is a great fit for services development, from memory safety to interoperability with other languages.

Speaker image - Cory Benfield

Cory Benfield

Senior Software Engineer Doing Swift on Server @Apple

Session WASM

WASM in the Enterprise: Secure, Portable, and Ready for Business

Tuesday Apr 8 / 01:35PM BST

WebAssembly (WASM) is emerging as a powerful tool beyond its browser origins, enabling safer, more flexible, and more efficient execution across a wide range of enterprise applications.In this session, we’ll take a hands-on look at real-world use cases, including:

Speaker image - Andrea Peruffo

Andrea Peruffo

Open Source Addicted Software Developer @RedHat, Passionate About Distributed Systems, Compilers, Infrastructure and Everything In Between

Session WebAssembly

How WebAssembly Components Enable Safe and Portable Software Extensions

Tuesday Apr 8 / 02:45PM BST

Application extensions are an essential part of any software ecosystem. While Rust is a great language, its lack of a standard ABI means that the whole source code has to be available to the compiler.

Speaker image - Alex Radovici

Alex Radovici

Operating Systems & Compilers PhD, Author of "Getting Started with Secure Embedded Systems" and Core Contributor of Tock OS

Session

Unconference: Memory Safe Native Languages and WASM

Tuesday Apr 8 / 03:55PM BST