Fencing Tokens and Generation Clock in .NET: Stop Zombie Leaders From Writing
Explains fencing tokens and generation clocks in .NET to prevent stale leaders from writing in distributed systems, ensuring data consistency.
Explains fencing tokens and generation clocks in .NET to prevent stale leaders from writing in distributed systems, ensuring data consistency.
Explains the lease pattern in .NET for distributed systems, using Redis to implement time-limited locks that prevent deadlocks and ensure recovery.
A guide to implementing a lease-based leader election pattern in C#/.NET for distributed systems to prevent accidental multi-leader scenarios.
Explains the Leader and Followers distributed system pattern with a practical .NET implementation to ensure single authority and prevent data corruption.
A technical series translating distributed systems patterns into practical C#/.NET implementations for production software.
A developer shares insights and design considerations for building a distributed actor framework, based on experience with Dapr, Orleans, and a custom Go project.
Explores the impossibility of achieving common knowledge for coordinated attack in asynchronous distributed systems, based on Halpern and Moses' 1990 paper.
A Google engineer shares her experience using Claude Code to rapidly prototype a distributed agent orchestrator, highlighting AI's impact on complex software development.
A critical review of a research paper proposing Raft optimizations for faster reads/writes while preserving linearizability in distributed systems.
Introducing LeaseGuard, a new lease protocol for Raft consensus that simplifies leader leases and enables faster crash recovery.
Explains idempotency keys in distributed systems, comparing UUIDs and monotonic sequences for duplicate detection and exactly-once processing.
Explains idempotency keys in distributed systems, comparing UUIDs and monotonic sequences for duplicate detection and exactly-once processing.
Analyzes LLM APIs as a distributed state synchronization problem, critiquing their abstraction and proposing a mental model based on token and cache state.
Explores building a basic Durable Execution engine using SQLite and Java to reliably persist and resume multi-step workflows, like those in agentic systems.
Explores building a basic Durable Execution engine in Java using SQLite to persist workflow state and resume from failures.
An introduction to the distributed actor model for building concurrent, resilient systems, explaining its core concepts and benefits.
A curated collection of articles on software architecture, development practices, Java updates, and testing strategies for tech professionals.
Explains service discovery in .NET 8, covering the built-in NuGet package, configuration, and integration with HttpClient.
An engineer argues that software development is a learning process, not an assembly line, and explains how to use LLMs as brainstorming partners.
Explores the compounding impact of shaving milliseconds off microservice latency in distributed systems, affecting throughput and scalability.