Chain Functions and Middleware without Language Barriers
Scale Functions bring about the end of middleware by giving developers the ability to chain together functions written across any language. Functions can optionally call and return the response of the next function in their chain, or they can respond directly.
This powerful pattern makes it possible to combine Scale Functions with native HTTP handlers to augment existing applications and do everything from JWT Authentication to Logging and Metrics.
- JWT Authentication (Golang)
- Regex Input Validation (Rust)
- Logging and Metrics (Typescript)
- Native Request Handler (Python)
Works across languages, frameworks, and clouds
Scale Functions leverages WebAssembly, allowing them to work across any supported language, framework or cloud, with additional support being added every day.
Our runtime and specification are both completely open source, meaning it's also extremely easy for developers to add support for new or custom environments themselves.
Better than Native Code
Designed from the ground up to be as performant as possible, Scale Functions don't require any external dependencies to run. Scale Functions are thread-safe by default and have cold-start times below 100μs, which means calling a function incurs next to zero overhead.
All this means that the performance of Scale Functions in an apples-to-apples comparison is often more than 4x better than the native code calling them.
HTTP Throughput with 50 Clients
Benchmarked on a 48-Core Ryzen CPU with 192GB of RAM with 16KB Payloads for 5 Minutes - Github Repository