- Messaging patterns
- Communication in a microservice architecture
- Asynchronous message-based communication
- Modular Monolith: Integration Styles
- Marrying RESTful HTTP with Asynchronous and Event-Driven Services
- DDD and Messaging Architectures
- Asynchronous Messaging Patterns
- Messaging Patterns Overview
- Service Activator
- Message Properties
- Message Naming Guidelines
- Organizing (Commands, Events & Handlers) in Microservices
- REST APIs for Microservices? Beware!
- Messaging Commands & Events Explained!
- Event Choreography & Orchestration (Sagas)
- Outbox Pattern: Reliably Save State & Publish Events
- Handling Duplicate Messages (Idempotent Consumers)
- Message-IDs for Handling Concurrency
- CAP: Event Bus & Outbox Pattern
- Message Queue Overload from High Processing Latency
- Processing commands with Hangfire and MediatR
- Using Hangfire and MediatR as a Message Dispatcher
- Idempotent Aggregates
- Identify Commands & Events
- Idempotent Commands
- Moving work Out-of-Process using Brighter and RabbitMQ
- Thin vs Fat Integration Events
- Events: Fat or Thin
- Events on the Outside vs Events on the Inside
- Patterns for Decoupling in Distributed Systems: Fat Event
- Message Sender: Who Sent the Command/Event?
- Why use DTOs (Data Transfer Objects)?
- Event Versioning Guidelines
- Fat vs thin domain events
- Putting your events on a diet
- What do you mean by “Event-Driven”?
- Are CQRS commands part of the domain model?
- DTO vs Value Object vs POCO
- Event Based Architecture: What do you mean by EVENT?
- What's the difference between a command and an event?
- Outbox, Inbox patterns and delivery guarantees explained
- Distributed State — Challenges and Options
- Message Naming Conventions
- Building an Event Driven .NET Application: The Fundamentals
- Building an Event Driven .NET Application: Setting Up MassTransit and RabbitMQ
- Kafka vs RabbitMQ vs AWS SNS/SQS: Which Broker to Choose?
- Event Pitfalls (and How to Avoid Them)
- Designing Domain Events
- Competing Consumers Pattern for Scalability
- Patterns for Decoupling in Distributed Systems: Explicit Public Events
- Event immutability and dealing with change
- Transient fault handling
- SHARING DATA BETWEEN MODULES IN MODULAR MONOLITH
- Comparing Techniques for Communicating Between Services
- Bus or Queue
- Handling Concurrency with Message-IDs | Event Driven Architecture
- Message Naming Guidelines | Event Driven Architecture
- Event Versioning Guidelines
- Organizing (Commands, Events & Handlers) in Microservices/SOA
- Service Oriented Architecture: Commands & Events Explained!
- Handling Duplicate Messages (Idempotent Consumers)
- Sagas: Event Choreography & Orchestration (NServiceBus)
- CAP: Event Bus & Outbox Pattern
- Thin or Fat Events? Are your boundaries right?
- GOTO 2017 • The Many Meanings of Event-Driven Architecture • Martin Fowler
- On .NET Live - Messaging Patterns for .NET Developers
- Competing Consumers Pattern for Scalability | Message Queues
- Event Driven Architecture for Real-Time Web
- Learnings from Running 1000s of Production RabbitMQ Clusters • Lovisa Johansson • RabbitMQ Summit
- What is Event Driven Architecture? (EDA - part 1)
- The Saga Pattern in Microservices (EDA - part 2)
- GOTO 2019 • Temporal Modelling • Mathias Verraes
- Handling Failures in Message Driven Architecture
- Building a Mediator library in .NET from scratch
- Message Driven Architecture to DECOUPLE a Monolith
- Synchronous vs Messaging: When to use which?
- Moving work Out-of-Process using Brighter and RabbitMQ
- Building a Request Pipeline for Separating Concerns with Pipes & Filters
- Distributed Messaging Patterns
- Message Ordering in Pub/Sub or Queue
- Blocking or Non-Blocking API calls?
- Is Async Programming (Async/Await) Scalable?
- The second queue that EVERY message bus needs in .NET
- Using your Database as a Queue? Good or bad idea?
- Message Queues in System Design
- Enexure.MicroBus - MicroBus is a simple in process Mediator for .NET
- Foundatio - A common interface with in memory, redis and azure implementations.
- Kledex - .NET Standard framework to create simple and clean design. Advanced features for DDD, CQRS and Event Sourcing.
- MQTTnet - Tnet is a high performance .NET library for MQTT based communication.
- OpenCQRS - .NET Core library for DDD, CQRS and Event Sourcing with Azure Service Bus integration. Supported database providers for the Command and the Event stores are: DocumentDB, MongoDB, SQL Server, MySQL, PostgreSQL and SQLite.
- Rebus - Simple and lean service bus implementation for .NET.
- RestBus - Messaging library for RabbitMq.
- tossit - Simple, easy to use library for distributed job/worker logic. Distributed messages handled by built in RabbitMQ implementation.
- Steeltoe - Steeltoe .NET Core Components: CircuitBreaker, Configuration, Connectors, Discovery, Logging, Management, and Security
- MetroBus - Lightweight messaging wrapper of
- Abp - Open Source Web Application Framework for ASP.NET Core
- OpenSleigh - OpenSleigh is a Saga management library for .NET Core.
- knightbus - Fast multi-transport messaging framework
- SlimMessageBus - Lightweight message bus interface for .NET (pub/sub and request-response) with transport plugins for popular message brokers.
- silverback - Silverback is a simple but feature-rich framework to build reactive/event-driven applications or microservices with .net core.
- Obvs - An observable microservice bus library for .NET, that wraps the underlying message transports in simple Rx based interfaces.
- Platibus - Decentralized asynchronous messaging framework
- EventBus - A .NET Core ultra lightweight in-memory event bus implementation.
- Enbiso.NLib - .Net Standard Libraries for Microservices
- eventbus - A simple Event Bus abstraction layer for working with events in .NET.
- AzureFromTheTrenches.Commanding - A configuration based commanding and mediator framework that supports command dispatch and execution in-process, over HTTP or over Azure Storage Queues. Written to .NET Standard 2.0 and supports many popular runtimes including .NET Core and .NET 4.6.x.
- Brighter - Command Dispatcher, Processor, and Distributed Task Queue
- Darker - The query-side counterpart of Brighter
- MassTransit - Distributed Application Framework for .NET
- ViennaNET - Framework for quickly creating enterprise microservices on .NET Core
- Fabrik.SimpleBus - A simple In-Process Message Bus for .NET
- MemBus - Pure In-Memory Publish/Subscribe .NET Bus
- Cysharp/MagicOnion - Unified Realtime/API framework for .NET platform and Unity.
- eventflow/EventFlow - Async/await first CQRS+ES and DDD framework for .NET
- dasiths/SimpleMediator - A .NET/C# implementation of the mediator pattern with support for queries, commands and events
- mayuanyang/Mediator.Net - A simple mediator for .Net for sending command, publishing event and request response with pipelines supported
- FoundatioFx/Foundatio - Pluggable foundation blocks for building distributed apps.
- AsynkronIT/protoactor-dotnet - Proto Actor - Ultra fast distributed actors for Go, C# and Java/Kotlin
- Abc-Arbitrage/Zebus - A lightweight Peer to Peer Service Bus
- Shriek-Projects/shriek-fx - An easy-to-use rapid development framework developed on the basis of.NET Core 2.0, following the constraints of domain Driven Design (DDD) specifications, combined with the CQRS architecture to provide the infrastructure for event-driven, event backtracking, responsiveness, and more. Let developers enjoy the true meaning of object-oriented
- daxnet/apworks-core - Apworks framework supporting .NET Core
- nats-io/nats.net - The official C# Client for NATS
- zeromq/netmq - A 100% native C# implementation of ZeroMQ for .NET
- zeromq/clrzmq4 - ZeroMQ C# namespace (.NET and mono, Windows, Linux and MacOSX, x86 and amd64)
- ThreeDotsLabs/watermill - Building event-driven applications the easy way in Go.
- Cysharp/MessagePipe - High performance in-memory/distributed messaging pipeline for .NET and Unity.
- cfrenzel/Eventfully - Lightweight Reliable Messaging Framework using Outbox Pattern / EFCore / AzureServiceBus
- daniellittledev/Enexure.MicroBus - MicroBus is a simple in process Mediator for .NET
- simplesoft-pt/Mediator - Small .NET library that helps with the implementation of mediator pattern for commands, events and queries
- gautema/CQRSlite - A lightweight framework to help creating CQRS and Eventsourcing applications in C#
- martinothamar/Mediator - A high performance implementation of Mediator pattern in .NET using source generators.
- AlphaYu/Adnc - The microservice framework is also suitable for the development of monolithic architecture systems. It supports the classic three-tier and DDD architecture development model, and integrates a series of mainstream and stable microservice supporting technology stacks. A framework with front-end and back-end separation. The front-end is based on Vue and the back-end is built on .Net 5.0.
- Im5tu/OpenMessage - Receive messages from multiple sources using a centralised delivery pipeline
- SorenZ/Alamut.Kafka - An opinionated approach to use Apache Kafka in Dotnet
- revoframework/Revo - Event Sourcing, CQRS and DDD framework for C#/.NET Core.