Property-testing async code in Rust to build reliable distributed systems

Building reliable distributed systems is hard. Every await point creates an explosion of possible execution sequences. This talk explains how Zed Industries leveraged the Rust asynchronous model to test each possible sequence and maximize the reliability of our CRDT-based collaborative editor.

60 min
November 20th, 2023


Building reliable distributed systems is extremely challenging. Every await point in a codebase creates an explosion of possible execution sequences, some of which only occur in rare circumstances. If a buggy sequence occurs 1% of the time, you'll be plagued with production bugs and intermittent CI failures that are extremely hard to reproduce. The only solution is to test every possible sequence, but how?

This talk will explain how Zed Industries leveraged Rust's unique asynchronous programming model to maximize the reliability of our CRDT-based collaborative editor. After reviewing the foundational concepts of Rust futures, we'll explore an implementation of a deterministic runtime that executes all possible permutations of asynchronous code paths. We think this represents a game-changing strategy for rapidly developing reliable concurrent systems, and by the end of the talk, you'll be equipped with practical tools to bring the same level of reliability to your own applications.

Stay connected

You can subscribe to our newsletter to stay updated on the latest news and announcements. Follow us on social media to join our community and engage with other attendees, speakers, and staff. We're on Twitter, Mastodon, Youtube and Facebook. Don't forget to use our official hashtag #RustLab2023 to share your experience and connect with other attendees on social media.

Subscribe to our newsletter

We hate spam just as much as you do, which is why we promise to only send you relevant communications. We respect your privacy and will never share your information with third parties.
©2023 RustLab | The international conference on Rust in Florence-Design & devCantiere Creativo-Made withDatoCMS