DeveloperWeek 2023 has ended
Thursday, February 16 • 3:00pm - 3:25pm
PRO TALK: Comparing Rust with Go, Java, and Python in AWS lambdas

Sign up or log in to save this to your schedule, view media, leave feedback and see who's attending!

Feedback form is now closed.

Cliff Crosland, CEO, Co-founder, Scanner.dev

Given the extremely fast startup time and low memory usage of Rust binaries, using Rust in a serverless environment like AWS Lambdas is appealing. Rust launches extremely quickly from a cold start and uses little memory compared to other languages.

Our team wanted to use Lambda functions to scan through terabytes of data in S3 extremely quickly, and we needed to choose the fastest language for the job.

In this talk, I'll show how we compared Rust's performance in AWS Lambda functions against other languages, specifically Go, Java, and Python. I'll also cover some surprising ways you can tune Lambda performance, like how increasing lambda memory allocation will actually increase network bandwidth to S3, and more.

  1. Rust's cold-start time is the lowest, but with recently released features like Lambda SnapStart, the gap is closing for languages like Java (although there are many limitations). Go is not far either.
  2. For highest multi-threaded performance for CPU-intensive tasks, Rust wins, but Go and Java work fine for many of these use cases.
  3. Network bandwidth to S3 increases as you increase memory allocation, but it eventually plateaus at 90 MBps when memory allocated is between 512MB and 1024MB.

avatar for Cliff Crosland

Cliff Crosland

CEO, Co-founder, Scanner.dev
Cliff is the CEO and co-founder of Scanner.dev, a log analytics tool built for high speed and cost efficiency. Prior to founding Scanner, he was a Principal Engineer at Cisco where he led the backend infrastructure team for the Webex People Graph (previously called Accompany before... Read More →

Thursday February 16, 2023 3:00pm - 3:25pm PST
  API & Microservices