> Markdown version of [/videos/744-is-your-backend-a-hodgepodge-of-queues-event-stores-and-cron-jobs-durable-execution-to-the-rescue?t=407](https://www.wearedevelopers.com/videos/744-is-your-backend-a-hodgepodge-of-queues-event-stores-and-cron-jobs-durable-execution-to-the-rescue?t=407). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Is your backend a hodgepodge of queues, event stores and cron jobs? Durable Execution to the Rescue. Are messy queues and cron jobs breaking your backend? Discover how durable execution lets you write straightforward, linear code that effortlessly survives process crashes and API failures. - **Speakers:** [Maxim Fateev](https://www.wearedevelopers.com/@maxim-fateev) - **Event:** World Congress 2023 - **Published:** October 6, 2023 - **Duration:** 29:32 - **URL:** https://www.wearedevelopers.com/videos/744-is-your-backend-a-hodgepodge-of-queues-event-stores-and-cron-jobs-durable-execution-to-the-rescue ## Summary Modern event-driven architectures often rely on complex webs of message queues and microservices, creating volatile environments where transactional state is heavily scattered. While orchestrators offer a centralized way to manage distributed flows and edge cases like long-running operations or saga patterns, legacy frameworks rely on clunky JSON configurations or visual flowcharts rather than native code. Durable execution bridges this gap, allowing engineering teams to write straightforward, linear business logic in general-purpose languages while fully offloading infrastructure-level issues like process crashes, API retries, and asynchronous timeouts. The mechanics of a durable execution system rely strictly on preserving an immutable replay log of all external API calls or outputs. In the event of a severe outage or deployment process disruption, a replacement container simply reconstructs the exact workflow state by replaying code from the beginning and seamlessly injecting historical results from the log, entirely bypassing redundant network requests. Because this recovery relies on identical code execution paths, engineers must abide by strict code determinism, ensuring random number generation, concurrency loops, and system time are handled via specialized internal SDK mechanisms. Platforms like Temporal serve as open-source implementations of this architecture, enforcing a clean boundary between business operations and infrastructure reliability. A centralized backend cluster coordinates routing, durable timers, and remote task dispatch, leaving lightweight worker processes to crunch the active procedural execution safely. By guaranteeing that long-form procedures cannot arbitrarily drop state, durable environments enable teams to confidently scale automation use cases ranging from sprawling continuous delivery deployment pipelines to localized, multi-day customer support pipelines. **Keywords:** event-driven architecture, durable execution, workflow orchestration, microservices choreography, temporal open source, event replay log, distributed state recovery, deterministic execution, long-running operations, saga pattern implementation, idempotent backend activities, asyncio deterministic loop, api failure retries, ci/cd pipeline provisioning, business logic separation ## Chapters 1. **Challenges of building reliable order processing systems** (00:03) — The complexities of handling process crashes, API failures, and long-running operations in distributed applications. 1. **Drawbacks of event-driven architectures and service queues** (02:03) — Why connecting microservices with event queues leads to complex state management and error handling. 1. **Why traditional orchestration frameworks fall short** (04:25) — How visual programming models and JSON-based logic restrict complex service orchestration. 1. **Introducing durable execution for robust distributed systems** (06:47) — How state preservation handles process crashes and infrastructure failures by resuming execution exactly where it left off. 1. **Implementing durable execution using event logs and replay** (08:40) — How recording operation results in an event log allows deterministic code to resume after failures. 1. **Handling determinism and concurrent operations in durable execution** (11:02) — The necessity of deterministic code execution and single-threaded event loops for reliable multi-threaded concurrency. 1. **Overview of the Temporal open-source durable execution architecture** (17:32) — A deployment overview of the Temporal system featuring worker processes and database persistence. 1. **Writing temporal workflows and activity definitions in python** (20:21) — How to apply Python decorators to define asynchronous workflow logic and specify downstream activity retries. 1. **Enforcing determinism for random functions and time logic** (22:24) — Managing non-deterministic operations like random variable selection and timer execution through specialized workflow APIs. 1. **Use cases for durable execution and temporal workflows** (23:21) — Applying durable execution semantics to infrastructure provisioning, continuous integration pipelines, and distributed business transactions. 1. **Audience questions on idempotency and workflow business logic** (26:46) — Examining downstream action idempotency and managing variable data drift against fixed execution history. ## Related Moments - [Introducing durable execution and the Temporal framework](https://www.wearedevelopers.com/videos/1234-exploring-durable-execution-with-python) (from "Exploring Durable Execution with Python") - [Introduction to durable execution for resilient application code](https://www.wearedevelopers.com/videos/1031-durable-execution-a-revolutionary-abstraction-for-building-resilient-applications) (from "Durable Execution: A Revolutionary Abstraction for Building Resilient Applications") - [Guaranteeing workflow completion with open-source temporal platform solutions](https://www.wearedevelopers.com/videos/1031-durable-execution-a-revolutionary-abstraction-for-building-resilient-applications) (from "Durable Execution: A Revolutionary Abstraction for Building Resilient Applications") - [Implementing resilient workflows with timeouts and durable functions](https://www.wearedevelopers.com/videos/2096-microservices-common-failure-modes-and-how-teams-actually-hit-them) (from "Microservices Common Failure Modes (And How Teams Actually Hit Them)") - [Solving distributed system failures via durable execution abstractions](https://www.wearedevelopers.com/videos/1234-exploring-durable-execution-with-python) (from "Exploring Durable Execution with Python") - [Demonstrating workflow recovery with Temporal and OpenAI](https://www.wearedevelopers.com/videos/1643-rpc-reinvented-asynchronous-durable-and-agent-ready) (from "RPC Reinvented: Asynchronous, Durable, and Agent-Ready") ## Related Articles - [Why Event-Driven Architecture Isn’t About Speed (and When You Actually Need It)](https://www.wearedevelopers.com/magazine/745-why-event-driven-architecture-isn-t-about-speed-and-when-you-actually-need-it) - [The Temporal API: How JavaScript Dates Might Actually Be Getting Fixed](https://www.wearedevelopers.com/magazine/544-the-temporal-api-how-javascript-dates-might-actually-be-getting-fixed) - [Dev Digest 132 - Binging WADFlix?](https://www.wearedevelopers.com/magazine/473-dev-digest-132-binging-wadflix) - [Building AI Solutions with Rust and Docker](https://www.wearedevelopers.com/magazine/494-building-ai-solutions-with-rust-and-docker) ## Related Jobs - [Lead Software Engineer - Data Engineering](https://www.wearedevelopers.com/jobs/ext/2000968-lead-software-engineer-data-engineering) at **Dynatrace** - [Software Engineer, Platform Engineering (L2)](https://www.wearedevelopers.com/jobs/ext/1956829-software-engineer-platform-engineering-l2) at **Twilio** - [Artificial Intelligence (AI)](https://www.wearedevelopers.com/jobs/ext/1952055-artificial-intelligence-ai) at **Twilio** - [Staff Software Engineer](https://www.wearedevelopers.com/jobs/ext/1425755-staff-software-engineer) at **GitHub** - [Principal Software Engineer, Database Infrastructure](https://www.wearedevelopers.com/jobs/ext/1465908-principal-software-engineer-database-infrastructure) at **GitHub** - [Senior Software Engineer, Enterprise Products](https://www.wearedevelopers.com/jobs/ext/1841248-senior-software-engineer-enterprise-products) at **GitHub**