Restate: A Database-less Durable Execution Engine

2025-03-27
Restate: A Database-less Durable Execution Engine

Restate is a newly built durable execution engine requiring no database or log system. Built from first principles, it boasts a complete self-contained stack centered around a command log and event processor, competing with the best logs in durability and operations. This article details Restate's architecture, including its bidirectional service connections, partitioned scaling model, embedded RocksDB state storage, and virtual log abstraction. Restate cleverly balances low latency and high durability through log design and storage tiering, supporting SDKs in multiple programming languages.

Read more
Development

Restate: Simplifying Complex AI Game Workflows

2025-03-10
Restate: Simplifying Complex AI Game Workflows

This article demonstrates building an interactive text-adventure game from a single user prompt using the Restate framework. The application orchestrates image generation, audio synthesis, and multiple large language model calls, tasks traditionally requiring complex message queues and error handling. Restate simplifies this with durable handlers and built-in concurrency primitives, providing automatic retries, state management, and guaranteed request execution. The author details the application architecture, code implementation, and challenge solutions, showcasing how Restate efficiently handles long-running workflows and improves developer productivity.

Read more
Game

Goodbye Distributed Coordination: How Restate Simplifies Distributed Apps with a Single Log

2025-01-24
Goodbye Distributed Coordination: How Restate Simplifies Distributed Apps with a Single Log

Building resilient distributed applications remains a significant challenge. Developers often spend considerable time addressing failover strategies, retries, race conditions, and other complexities. This article introduces Restate, a novel approach that simplifies development by avoiding distributed coordination. The core idea is to treat all systems (message queues, databases, locking services, etc.) as a single log. Every operation is recorded in this log, and retries automatically read previous operation records, preventing inconsistencies and race conditions. Restate is an open-source project based on this principle, simplifying the development and maintenance of distributed applications and improving system reliability.

Read more
Development log