llrt
LLRT (Low Latency Runtime) is an experimental, lightweight JavaScript runtime designed to address the growing demand for fast and efficient Serverless applications.
LLRT is an experimental AWS JavaScript runtime for Lambda functions that starts up to 10x faster and costs up to 2x less than Node.js by using a lightweight Rust-based engine instead.
LLRT, which stands for Low Latency Runtime, is an experimental JavaScript runtime built by AWS Labs and designed specifically for serverless functions running on AWS Lambda. A runtime is the environment that executes your code. Most Lambda functions that run JavaScript use Node.js as their runtime, but Node.js was built for general-purpose server use and carries more weight than a short-lived serverless function needs. LLRT aims to be a smaller, faster alternative built from the ground up for this narrow use case.
The project claims up to 10 times faster startup speed and up to 2 times lower cost compared to Node.js running on AWS Lambda. The speed difference comes from how the runtime starts: Lambda functions go through a cold start whenever a new copy is spun up, and a lighter runtime reaches ready state faster. Cost savings follow from the reduced time billed during those starts.
LLRT is built in Rust, a systems programming language known for efficient memory handling. It uses an embedded JavaScript engine called QuickJS to actually interpret and run JavaScript code. The result is a much smaller binary than a full Node.js install, which is what makes the startup advantage possible.
An important caveat throughout the README: LLRT is not a drop-in replacement for Node.js. It only supports a portion of the standard Node.js APIs, and several commonly used modules like http, https, and SQLite are not supported or only partially supported. Code that works on Node.js may need changes before it runs on LLRT. The README includes a compatibility table listing which Node.js modules are supported, partially supported, or unavailable.
Deployment options include packaging LLRT as a custom runtime, using it as a Lambda layer, bundling it into a container image, or using it via AWS SAM or AWS CDK tooling. There is also a built-in test runner for checking that your code works with LLRT before deploying. The project is explicitly marked as experimental and intended for evaluation rather than production use. The full README is longer than what was shown.
Where it fits
- Replace Node.js as the runtime for your AWS Lambda JavaScript functions to cut cold-start times and reduce billing.
- Evaluate whether your existing serverless JavaScript code is compatible with LLRT's Node.js API subset before migrating.
- Deploy LLRT as a Lambda layer or custom runtime and benchmark startup speed against your current setup.
- Run LLRT's built-in test runner locally to validate your JavaScript code before deploying to Lambda.