AWS Bites

64. How do you write Lambda Functions in Rust?


Listen Later

Are you curious about using Rust to write AWS Lambda functions?

In this episode of AWS BItes, we will be discussing the pros and cons of using Rust for serverless applications. With Rust, you'll be able to take advantage of its fast performance and memory efficiency. Plus, its programming model makes it easy to write safe and correct code. However, Rust is not a native runtime for Lambda, but rather a library that implements a custom runtime built and maintained by AWS. This custom runtime is built on top of the Tokio async runtime and even has a built-in middleware engine, which allows for easy hook-in of reusable logic and building your own middleware.

But what if you're new to Rust? Don't worry, we'll also be walking you through the steps on how to write your first Lambda in Rust. From cargo-lambda to the serverless framework plugin for Rust, we'll be sharing different alternatives for building and deploying your Rust-based Lambda functions.

So join us on this journey as we explore the exciting world of Rust and Lambda.


💰 SPONSORS 💰

AWS Bites is sponsored by fourTheorem, an AWS Consulting Partner offering training, cloud migration, and modern application architecture.


In this episode, we mentioned the following resources:

  • Rust 1.0 original announcement: https://blog.rust-lang.org/2015/05/15/Rust-1.0.html
  • The Rust programming language home page: https://www.rust-lang.org/
  • Firecracker runtime: https://firecracker-microvm.github.io
  • Luciano's Twitch profile: https://twitch.tv/loige
  • AWS Rust runtime library: https://github.com/awslabs/aws-lambda-rust-runtime
  • Tokio, Rust async runtime: https://tokio.rs/
  • Example of how to enable the tracing middleware in Lambda: https://github.com/awslabs/aws-lambda-rust-runtime/blob/99dba6447253ac87cf3cefeb2ba130b50514f9df/examples/http-tower-trace/src/main.rs#L4
  • Rustup tool to install the Rust toolchain: https://rustup.rs/- Reference article on how to write a Lambda in Rust using cargo-rust: https://blog.scanner.dev/getting-started-with-serverless-rust-in-aws-lambda/
  • Cargo-lambda, a cargo extension that helps with writing, running, testing, and deploying lambdas written in Rust: https://www.cargo-lambda.info
  • Serverless framework plugin for Rust: https://www.serverless.com/plugins/serverless-rust
  • Eoin's article on Container Image Support in AWS Lambda: https://dev.to/eoinsha/container-image-support-in-aws-lambda-deep-dive-2keh- AWS SDK for Rust: https://github.com/awslabs/aws-sdk-rust
  • Coding challenges to learn rust: https://exercism.org/

  • You can listen to AWS Bites wherever you get your podcasts:

    • Apple Podcasts: https://podcasts.apple.com/us/podcast/aws-bites/id1585489017
    • Spotify: https://open.spotify.com/show/3Lh7PzqBFV6yt5WsTAmO5q
    • Google: https://podcasts.google.com/feed/aHR0cHM6Ly9hbmNob3IuZm0vcy82YTMzMTJhMC9wb2RjYXN0L3Jzcw==
    • Breaker: https://www.breaker.audio/aws-bites
    • RSS:  https://anchor.fm/s/6a3312a0/podcast/rss
    • Do you have any AWS questions you would like us to address? Leave a comment here or connect with us on Twitter:

      • https://twitter.com/eoins
      • https://twitter.com/loige
      • #AWS #rust #lambda

        ...more
        View all episodesView all episodes
        Download on the App Store

        AWS BitesBy AWS Bites

        • 4.6
        • 4.6
        • 4.6
        • 4.6
        • 4.6

        4.6

        11 ratings


        More shows like AWS Bites

        View all
        Hanselminutes with Scott Hanselman by Scott Hanselman

        Hanselminutes with Scott Hanselman

        380 Listeners

        a16z Podcast by Andreessen Horowitz

        a16z Podcast

        1,082 Listeners

        Software Engineering Daily by Software Engineering Daily

        Software Engineering Daily

        625 Listeners

        Risky Business by Patrick Gray

        Risky Business

        375 Listeners

        The Cloudcast by Massive Studios

        The Cloudcast

        155 Listeners

        Python Bytes by Michael Kennedy and Brian Okken

        Python Bytes

        214 Listeners

        Y Combinator Startup Podcast by Y Combinator

        Y Combinator Startup Podcast

        232 Listeners

        Syntax - Tasty Web Development Treats by Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers

        Syntax - Tasty Web Development Treats

        986 Listeners

        Cybersecurity Today by Jim Love

        Cybersecurity Today

        175 Listeners

        Kubernetes Podcast from Google by Abdel Sghiouar, Kaslin Fields

        Kubernetes Podcast from Google

        180 Listeners

        Practical AI by Practical AI LLC

        Practical AI

        213 Listeners

        AWS Podcast by Amazon Web Services

        AWS Podcast

        203 Listeners

        AWS Morning Brief by Corey Quinn

        AWS Morning Brief

        78 Listeners

        The Real Python Podcast by Real Python

        The Real Python Podcast

        141 Listeners

        The AWS Developers Podcast by Amazon Web Services

        The AWS Developers Podcast

        23 Listeners