Synchronous communication - circuit breaker and fallback
Explains the circuit breaker pattern in software communication, comparing it to electrical circuits and demonstrating its use with Hystrix and Resilience4j libraries.
Explains the circuit breaker pattern in software communication, comparing it to electrical circuits and demonstrating its use with Hystrix and Resilience4j libraries.
A developer explains why they stopped using microservices for their solo side-projects, citing the complexity for a single person.
Explores the Thanos project's extended Go style guide for writing high-quality, readable, and efficient code in large-scale distributed systems.
Analyzes reliability challenges in synchronous communication between microservices, using calculations to show how dependencies impact overall system uptime.
A graduate's review of the challenging CS6200 Introduction to Operating Systems course in the OMSCS program, covering projects, workload, and tips.
Explains the correlated error logging pattern for tracking errors across microservices using unique request IDs.
Troubleshooting a Kafka Connect 'Request timed out' error caused by a misconfigured offsets.topic.replication.factor setting.
Explains common configuration errors when setting up multiple Kafka Connect workers in a distributed cluster, focusing on network and REST API settings.
A guide to modernizing alerting practices in distributed systems, advocating for observability, SLOs, and paging only on user-impacting issues.
Explains the Outbox Pattern for reliable event publishing in distributed systems, addressing atomicity issues between database transactions and external messaging.
A tutorial on using Memcached with Python for efficient caching in distributed applications, covering installation, basic usage, and advanced patterns.
Argues that the PIE theorem (Pattern Flexibility, Efficiency, Infinite Scale) is more practical for database selection than the popular CAP theorem.
Foreword for a book on Reactive Application Development, discussing its evolution, principles, and practical implementation in modern systems.
Explores scaling a Python polling application using tooz for distributed task coordination across multiple machines.
Explores applying the Actor Model, a concurrency concept from the 1970s, to modern web development using JavaScript and Web Workers.
Introduces Python experts featured in the book 'Scaling Python', covering topics like distributed systems, performance, and APIs.
A developer's critique of the complexities and frustrations in implementing and standardizing HTTP clients for microservice communication in Java/Scala ecosystems.
Foreword for a book on Reactive Design Patterns, discussing the principles and growing adoption of Reactive Systems in software architecture.
A foreword discussing the convergence of Reactive Systems and Microservices architectures for modern distributed software development.
Explains the Buffer Fill Pattern for optimizing batch data processing in asynchronous distributed systems, using TPL DataFlow.