serverless-plugin-rust
v0.1.0-alpha.8
Published
Serverless plugin for Blazingly-fast rust functions
Downloads
14
Maintainers
Readme
Serverless framework plugin for blazingly-fast rust functions.
Status
Motivation
💻 Development experience
The goal of this project is to be accessible to beginners and experienced developers. Similar solutions require Docker to run or compile rust which is not practical.
🚀 Faster time-to-market
You can quickly deploy and update serverless applications, reducing the time it takes to bring new features to the market.
⚡️ Blazingly-fast
Experience unparalleled speed with serverless Rust, delivering exceptional performance on serverless infrastructure.
📈 Seamless scalability
Rust offers seamless scalability, effortlessly handling varying workloads, capable of processing millions of requests per minute while maintaining optimal performance.
Quick start
Prerequisites
Make sure you have the following installed before starting:
Install
npm install serverless-plugin-rust --save-dev
Usage
Default serverless.yml config example
service: serverless-rust-hello-world
provider:
name: aws
stage: dev
runtime: provided.al2
region: us-east-1
architecture: arm64
package:
individually: true
configValidationMode: error
functions:
hello:
description: Hello world lambda
handler: hello
events:
- http:
path: '/hello-world'
method: get
plugins:
- serverless-plugin-rust
serverless deploy
Demo
Examples
Benchmark
| | | | | |---------------------|-------------|-----------|--------------| | Rust (provided.al2) | ❄ 17.734ms | 💾 14MB | ⚡ 1.18ms | | Go (provided) | ❄ 59.495ms | 💾 19MB | ⚡ 3.14ms | | Go (1.x) | ❄ 93.72ms | 💾 29.1MB | ⚡ 3.14ms | | Node.js v16.x | ❄ 141.038ms | 💾 57.2MB | ⚡ 11.18ms | | Node.js v18.x | ❄ 250.032ms | 💾 64.7MB | ⚡ 8.70ms | | Java11 | ❄ 428.539ms | 💾 81MB | ⚡ 13.73ms |
❄ Avg Cold Start duration · 💾 Avg Memory Used · ⚡ Avg duration
Source: https://maxday.github.io/lambda-perf
Important
- 💰 Running this code and examples might result in charges to your AWS account.
- 🔐 We recommend that you grant your code least privilege. At most, grant only the minimum permissions required to perform the task.
Roadmap
- Add Google Cloud compatibility (Experimental)
- Integrate
serverless offline
andserverless invoke
Made with ❤️ in San Francisco