At-least-Once Delivery (Outbox Pattern)¶
📕 Articles¶
- Sending Reliable Event Notifications with Transactional Outbox Pattern
- At-least-once Delivery - cloudcomputingpatterns.org
- The Outbox Pattern - Kamil Grzybek
- The Outbox Pattern in Event-Driven ASP.NET Core Microservice Architectures
- Refactoring Towards Resilience: Evaluating Coupling
- A better domain events pattern
- Outbox Pattern for Microservices Architectures
- Outbox, Inbox patterns and delivery guarantees explained
- Outbox Pattern: Reliably Save State & Publish Events
- Handling Duplicate Messages (Idempotent Consumers)
- CAP: Event Bus & Outbox Pattern
- Reliable Microservices Data Exchange With the Outbox Pattern
- Implementing the Outbox Pattern Using Hangfire and MediatR CQRS Handlers
- Push-based Outbox Pattern with Postgres Logical Replication
- Microservices 101: Transactional Outbox and Inbox
- Message delivery and deduplication strategies
- How Postgres sequences issues can impact your messaging guarantees
- How to get all messages through Postgres logical replication
- What happens if we lose some event(s) during transaction?
- Receive modes in Azure Service Bus
- Duplicate detection
- What does idempotent mean in software systems?
- Transactional outbox pattern meets distributed tracing and OpenTelemetry
- Saga Orchestration for Microservices Using the Outbox Pattern ⭐
📺 Videos¶
- Reliably Save State & Publish Events (Outbox Pattern)
- CAP: Event Bus & Outbox Pattern
- Inbox & Outbox pattern - transactional message processing [Microservices .NET]
- [Stream Archive | 2020-03-27] Start event driven integration between services (feat. outbox pattern)
- [Stream Archive | 2020-04-10] Implementing the outbox message publisher
- [Stream Archive | 2020-04-17] Continuing the outbox message publisher and adding a fallback
- Event-driven integration #1 - Intro to the transactional outbox pattern [ASPF02O|E040]
- Event-driven integration #4 - Outbox publisher (feat. IHostedService & Channels) [ASPF02O|E043]
- Outbox meets change data capture (feat. .NET, PostgreSQL, Kafka and Debezium)
- Outbox meets change data capture - hooking into the Write-Ahead Log (feat. .NET, PostgreSQL & Kafka)
- MassTransit - The New Transactional Outbox
📦 Libraries¶
- oskardudycz/PostgresOutboxPatternWithCDC.NET - PoC of doing Outbox Pattern with CDC and .NET
- cfrenzel/Eventfully - Lightweight Reliable Messaging Framework using Outbox Pattern / EFCore / AzureServiceBus
🚀 Samples¶
- joaofbantunes/PostgresChangeDataCaptureOutboxSample - Tiny event driven sample application, using change data capture, via Npgsql, to help implement the outbox pattern
- seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium - True Atomic Microservices Implementation with Debezium and Outbox Pattern to Ensure Data Consistency.
- oskardudycz/kafka-connect
- bozd4g/FB.TransactionalOutbox - A sample Transactional Outbox Pattern implementation written with .NET Core.
- joaofbantunes/OutboxPatternMeetsOpenTelemetrySample