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

Messaging

Thin vs Fat Integration Events

When notifying other parts of a system of state changes I recommend creating integration events (also referred to as notifications). They are really low coupling because the producer doesn’t care who the consumers are. They simply publish integration events to a message broker and go on their merry way. Loosely Coupled Monolith This blog post is apart of a series of posts I’ve created around Loosely Coupled Monoliths. Although not specific to a monolith as this blog post applies to many architectures including microservices. Loosely Coupled Monolith Overview Solution & Project Structure YouTube Check out my YouTube channel where I… Read More »Thin vs Fat Integration Events

Getting Started: Apache Kafka with .NET Core

If you’re interested in playing around with Apache Kafka with .NET Core, this post contains everything you need to get started. I’ve been interested in Kafka for awhile and finally sat down and got everything configured using Docker, then created a .NET console app that contained a Producer and a Consumer. Here’s my complete process of what that involved. YouTube Check out my YouTube channel where I created a video that accompanies this blog post. Docker The first thing you need is to pull down the latest Docker images of both Zookeeper and Kafka. Before we create any contains, first create a… Read More »Getting Started: Apache Kafka with .NET Core

CAP: Event Bus & Outbox Pattern

If you’re thinking of building or already are implementing a system using async messaging (SOA or Microservices) then you need to start thinking about what type of messaging library you want to use in front of a message broker. CAP is an Event Bus that implements the Outbox Pattern to deal with distributed transactions. YouTube I did a live stream exploring CAP that is over on my YouTube Channel. Distributed Transaction When you’re using messages (events) to communicate between systems you will run into the situation where you need to save data to your database, then publish an event to… Read More »CAP: Event Bus & Outbox Pattern