Wouldn’t it be great if you could stop worrying about all possible failure scenarios and race conditions in your applications such as charging customers twice, users withdrawing more cash than they have, and selling a single ticket multiple times?
In the recent years, a new kid has appeared on the block of microservices orchestration: Durable Execution Engines. These engines persist the progress of code execution across services and time. They use this information to drive retries and recovery, and to ensure that code always runs till completion. Services that have Durable Execution enabled, can recover themselves to the exact point they were before a failure. Having this durability layer, speeds up the development of resilient applications.
In this talk, we will discuss how you can use Durable Execution to harden your applications in a few key areas: workflows, asynchronous tasks, microservice orchestration, and event processing. We will demonstrate each concept with live code examples, using Rust and Restate as the Durable Execution Engine.
I applied PGO to many kinds of software, collected a lot of carefully hidden traps on my journey, and found multiple ways how to avoid them. In this talk, I want to share with you my experience.
I'd like to share what we've learned in the last 2 years, when building Iggy.rs message streaming infrastructure from the ground up.
Choosing Rust is already improving your life as a programmer. But there’s always something we can still improve. So here’s a series of tips to save you time, typing, sanity or all of them.