New to Software Architecture? Read the Software Architecture article
The first book to combine Eventmodeling & Eventsourcing to plan software systems of any size and complexity. NEW CHAPTER "Dynamic Consistency Boundary" COMPANION ONLINE COURSE FOR FASTER LEARNING
Build a cloud-native distributed system in Go with authentication, databases, Kafka, gRPC, circuit breakers, and distributed tracing. Each chapter teaches a pattern and extracts it into a reusable platform SDK. By the final chapter, you'll have six deployable services, a complete platform SDK, and the patterns to build the next one faster.
System Design Workbook – Edição 2026 é uma obra que traduz, organiza e conecta os principais fundamentos da engenharia de sistemas distribuídos sob uma perspectiva prática, moderna e orientada à realidade de produção.
What if your software did not need the cloud to work? Local First Software Development shows you how to build fast, reliable apps that work offline and sync when needed. Learn practical patterns for data, security and synchronization while exploring how local-first systems can grow from simple personal tools into large collaborative applications.
This book provides an introduction to the high-level concepts behind query engines and walks through all aspects of building a fully working SQL query engine in Kotlin.
Ansible is a powerful infrastructure automation tool. Kubernetes is a powerful application deployment platform. Learn how to use these tools to automate massively-scalable, highly-available infrastructure.
Build collaborative software that keeps working when the network does not. This practical guide takes you from distributed systems fundamentals to working CRDT implementations and production-ready collaboration. Learn how CRDTs work, where they fit and how to handle scaling, security, metadata growth and failure in real systems.
Modern cloud-native applications generate massive volumes of telemetry data, making observability increasingly expensive and difficult to scale. While OpenTelemetry has become the industry standard for distributed tracing, traditional tail-based sampling architectures often require stateful collector clusters with significant memory and processing overhead. Rethinking OpenTelemetry Tail-Based Sampling explores how Event-Driven Architecture (EDA) and event mesh technologies can be used to address these challenges. Through practical examples, architectural analysis, and implementation considerations, this book examines OpenTelemetry sampling strategies and presents an alternative approach that externalizes trace buffering and sampling coordination beyond the collector layer. Whether you are an observability engineer, platform architect, integration specialist, SRE, or cloud-native practitioner, this book provides practical guidance for designing scalable, resilient, and cost-effective distributed tracing platforms.
Build distributed systems that keep working when things go wrong. This hands-on guide shows you how to design reliable messaging architectures with Python and RabbitMQ, from core concepts to production-ready patterns. Follow real projects, write practical code and learn how to build scalable services that recover gracefully under load.
Stop overload from becoming unbounded queues, goroutines, and downstream calls. Build bounded backpressure that fails predictably.
Micro platform architecture is a software architecture style that turns your software into a micro platform. Turning your software into a micro platform gives the users of your software greater flexibility in how they interact with your software. Your software could become simpler too – and the interaction with your software could become faster. There are other benefits to micro platform architecture too.
When your database outgrows simple optimizations, it's time to think bigger. Lift the Elephant goes beyond query tuning to reveal actionable strategies for scaling PostgreSQL, from partitioning to high-availability architectures. Built on lessons from scaling Hubstaff, this is your playbook for navigating the challenges of database growth.
Peer-to-peer (P2P) networks are fascinating! P2P networks can scale to thousands, millions or even billions of individual peers collaborating without a central, coordinating entity. These peers can be run by individuals or organizations - each contributing resources towards the total capacity of the network. This book explores how!
Looking for microservices but without the complexity of Saga or eventual consistency? This book is for you!