Skip to content

Sponsor: Do you build complex software systems? See how NServiceBus makes it easier to design, build, and manage software systems that use message queues to achieve loose coupling. Get started for free.

Learn more about Software Architecture & Design.
Join thousands of developers getting weekly updates to increase your understanding of software architecture and design concepts.


Follow @CodeOpinion

The Bulkhead Pattern: How To Make Your System Fault-tolerant

Keep one small part of your system from taking down the entire system. Let’s look at the bulkhead pattern, the various ways you think about it, and how it applies to your architecture, which will help you with fault tolerance to keep your system running. YouTube Check out my YouTube channel, where I post all kinds of content accompanying my posts, including this video showing everything in this post. Problem With a large system, it’s easy for one part to affect the performance of other parts. This is true for monoliths but also for more distributed service-oriented systems. Most systems have heavily… Read More »The Bulkhead Pattern: How To Make Your System Fault-tolerant

Locking In On Concurrency Control

Concurrency in a multi-user collaborative environment can be challenging. However, understanding the use case is crucial in picking a solution for handling concurrency. Let’s dive into different solutions for concurrency control in various situations. YouTube Check out my YouTube channel, where I post all kinds of content accompanying my posts, including this video showing everything in this post. Last Write Wins The first strategy is that there is no strategy. That might sound odd, but not all situations require concurrency controls. “Last write wins” means whatever the client writes to the database will succeed. If you’re using a relational database, this means… Read More »Locking In On Concurrency Control

How to (and how not to) design REST APIs

Everyone seems to love best practices or rules for designing REST APIs. But is all this guidance good advice? Let’s find out. YouTube Check out my YouTube channel, where I post all kinds of content accompanying my posts, including this video showing everything in this post. “REST” API Rules I stumbled upon a post outlining rules around how you design REST APIs. These posts are often found on LinkedIn, and I usually shake my head when reading them, so I figured I’d review this one and give some feedback. I shake my head because some of these will seem pretty standard, but… Read More »How to (and how not to) design REST APIs