Bookmarks tagged “architecture”
97 bookmarks tagged “architecture”
Capturing data pipeline errors functionally with Writer Monads | ThoughtWor
As businesses grapple with vast quantities of data, emerging from batch-based and streaming sources, it’s truly exciting to see the dominant data processing frameworks embrace the Kappa Architecture, that unifies batch and stream processing. With Kappa Architecture, the batch pro
I test in prod – Increment: Testing
Testing in production is a superpower. It’s our inability to acknowledge it that’s the trouble.
Brewer's CAP Theorem
An explanation of Eric Brewer’s CAP theorem, which says you cannot have more than two of Consistency, Availability and Partition-tolerance in web-based distributed systems.
Move Fast and Fix Things
Anyone who has worked on a large enough codebase knows that technical debt is an inescapable reality: The more rapidly an application grows in size and complexity, the more technical…
Monitoring Check Smells | Benji's Blog -
I have become increasingly convinced that there is little difference between monitoring and testing. Often we can run our automated tests against a production system with only a little effort. We are used to listening to our automated tests for feedback about our software in the
How Stack Overflow upgraded from Windows Server 2012
Warning: This post is long. While working through this massive server upgrade/migration process, tears were shed, many cuss words were said, along with a general feeling of frustration, which ultimately culminated into extreme happiness once the migration was completed. The scale
On GraphQL Schema Stitching & API Gateways - Marc-André Giroux - Medium
I’ve been thinking a lot on GraphQL “Schema Stitching” these days. At its core, Schema Stitching is the art of composing multiple GraphQL Schemas into one GraphQL Schema. As you can imagine, this can…
On software quality
What do we really need in order to develop a self-driving car? My colleague Felix posted recently an excellent article about what it really takes to be a self-driving car engineer. I want to dig deeper into the first point of that article about solid software engineering.
Health Checks and Graceful Degradation in Distributed Systems
Thanks, as always, to Fred Hebert and Sargun Dhillon for reading a draft of this post and offering some invaluable suggestions. In her Velocity keynote, Tamar Bercovici of Box highlighted the…
Consumer-Driven Contracts: A Service Evolution Pattern
Consumers should drive the definition of service contracts, while limiting to their individual needs. Suppliers should then validate against the union of their consumers' contracts.
Distributed systems theory for the distributed systems engineer | Paper Trail
Writing about distributed systems, compilers, virtual machines, databases and research papers from SOSP, ATC, NSDI, OSDI, EuroSys and others
Consensus Protocols: Paxos | Paper Trail
Writing about distributed systems, compilers, virtual machines, databases and research papers from SOSP, ATC, NSDI, OSDI, EuroSys and others
Consensus Protocols: Three-phase Commit | Paper Trail
Writing about distributed systems, compilers, virtual machines, databases and research papers from SOSP, ATC, NSDI, OSDI, EuroSys and others
Consensus Protocols: Two-Phase Commit | Paper Trail
Writing about distributed systems, compilers, virtual machines, databases and research papers from SOSP, ATC, NSDI, OSDI, EuroSys and others
Notes on Distributed Systems for Young Bloods – Something Similar
Best Practices for Building a Microservice Architecture
A curated a set of pragmatic practices for building a microservice architecture that fits well with modern web and cloud technologies.
Titus: Introducing Containers to the Netflix Cloud - ACM Queue
We believe our approach has enabled Netflix to quickly adopt and benefit from containers. Though the details may be Netflix-specific, the approach of providing low-friction container adoption by integrating with existing infrastructure and working with the right early adopters ca
Testing Strategies in a Microservice Architecture
The microservice architectural style presents challenges for organizing effective testing, this deck outlines the kinds of tests you need and how to mix them.
Interfaces are not abstractions
Interfaces are language constructs, whereas abstractions are conceptual. You can model abstractions with interfaces, but the use of interfaces in itself doesn't guarantee that you're programming with abstractions.





















