Category Archives: Architecture

What is the difference between synchronous and asynchronous communication?

And will adding the async keyword to my .NET api make it asynchronous? No not in the sense of asynchronous architecture. let me explain. A Restaurant Analogy Let’s take a real-life example of a restaurant. And at this restaurant customers need to go to the counter to get served. In the first example, the server has NOT been… Read More »

Message Brokers VS Event Brokers: Choosing the right message broker for an Event-Driven System (Apache Kafka vs RabbitMQ)

Intro So you have learned (see my prevoius posts/videos) about the pros and cons of event-driven architecture, and you are still are looking to start your journey by either incrementally strangling an existing system or using EDA for a greenfield project. In this post, I will introduce you to the concept of a broker and run you through… Read More »

Stop making this API design mistake, stop returning just a value in your API responses. Always return an object | #API Design Tip

Web APIs SHOULD NOT just return a boolean, string or a number/integer value in the response body for any response. Take the following. If you have an operation which for a successful (2XX) creation operation, returns just the value of the new object’s identifier in the response body, like the below examples, then you are opening yourself to… Read More »

Event-Driven VS Request-Driven Architecture: The Pros & Cons and Trade-offs of event driven systems

Event-Driven VS Request-Driven Architecture, User Registration Example (Pros & Cons) In this post, I am running you through two different approaches for implementing a user registration process to share the trade-offs, the differences and the advantages and disadvantages between the two different architectural patterns. Note – This post is the written version of my YouTube Post of the… Read More »