Skip to content

Sponsor: Using RabbitMQ or Azure Service Bus in your .NET systems? Well, you could just use their SDKs and roll your own serialization, routing, outbox, retries, and telemetry. I mean, seriously, how hard could it be?

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

Uncategorized

Why Separate Databases? Explaining Like You’re Five

I want to give you three different examples and reasons why you might want to separate customers and orders into different databases. The person who asked the question left out a lot of nuance and context, so I am going straight to the point. You will find all three examples boil down to the same underlying reason. YouTube Check out my YouTube channel, where I post all kinds of content on Software Architecture & Design, including this video showing everything in this post. 1. Third party systems: sometimes the data isn’t even in the same system One reason to separate customers and… Read More »Why Separate Databases? Explaining Like You’re Five

Distributed Systems Mistakes Nobody Warns You About: Consistency

One of the most common and very overlooked issues when writing a distributed system is consistency. You have one thing happening in one part of your system that triggers something else to happen in another part of the system, except it doesn’t happen. And that can be a nightmare to deal with. This problem is incredibly overlooked but incredibly common. Let’s dive into an example to illustrate what I mean. YouTube Check out my YouTube channel, where I post all kinds of content on Software Architecture & Design, including this video showing everything in this post. Example: Asynchronous Processing Here’s a simple… Read More »Distributed Systems Mistakes Nobody Warns You About: Consistency

.NET Channels as a In-Memory Message Bus – Beware!

If you’re looking at using .NET Channels as a replacement for a MediatR, or if you’re not in .NET but searching for an in-memory producer-consumer API, hang on a second—because you might be in for a pile of pain. That’s not actually what you want. YouTube Check out my YouTube channel, where I post all kinds of content accompanying my posts, including this video showing everything in this post. Channels in .NET: A Simple Example Let me give you a really simple example of channels in C#. If you’re not using .NET, you’ll totally understand the gist of this because it’s pretty… Read More ».NET Channels as a In-Memory Message Bus – Beware!