Look who's talking!

Detail illustration WASM I/O Detail illustration WASM I/O
Ivan Towlson

Beyond HTTP Microservices with Spin

Ivan Towlson - Fermyon

Spin is an open-source runtime for WebAssembly microservices. It has built-in functionality for HTTP, but what if you want to handle other kinds of event - timers, say, or queues? In this code-oriented talk, I’ll show how to extend Spin to turn it into the serverless substrate of your dreams.

Spin provides microservice developers with a very simple environment. Rather than needing to involve themselves in infrastructure, they need only write a module that conforms to a WIT (Wasm Interface Type) declaration, and Spin handles the rest. For the common case of Web-based microservices, which are triggered by HTTP requests, Spin has all the infrastructure built in. But serverless environments such as AWS Lambda or Azure Functions provide a much wider set of triggers - queue messages, blob storage events, or database table writes.

Fortunately, Spin’s extensibility model allows you to plug in additional triggers, and even to write your own. This talk dives into the workings of the Spin trigger system, walks through the process of building a custom trigger, and discusses some of the patterns and considerations for doing so.


View all sessions