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.
Should you dig the hype and default to Embassy when starting new microcontroller project? How it works and what does it bring to the table? Let's compare and measure the same IoT app written in sync and async Rust.
We will explore some ways to make Async Rust programming more enjoyable and more efficient at the same time.
This talk explores lessons learned while building a CRDT library with JSON semantics, aimed at application developers.