If anyone's interested in yesterday's session, here's the recording
#DotNet #CSharp #OutboxKit #OutboxPattern
https://www.youtube.com/watch?v=JoPY0yfElK4
On .NET Live: Shaving the outbox pattern yak

YouTube

Looks like next week I'll be "On .NET Live", using the outbox pattern as an excuse to talk about distributed applications resiliency.

I'm pretty sure a lot of people are sick of hearing about this pattern (I am a bit tired of talking about it 😅), but I guess we need to keep repeating until folks stop building applications that keel over as soon as the wind blows a certain way 😂

See you next Monday!

#DotNet #CSharp #OutboxPattern

https://www.youtube.com/live/JoPY0yfElK4

On .NET Live: Shaving the outbox pattern yak

YouTube

New version of #OutboxKit out, focused on resiliency.

Not much user facing going on (other than renaming some metrics), but the new version has some resiliency improvements to help when there are infrastructure issues (i.e. problems with the database or message broker).

#DotNet #CSharp #OutboxPattern

OutboxKit: https://outboxkit.yakshavefx.dev
(Terse) release notes: https://github.com/YakShaveFx/outboxkit/releases/tag/v0.3.0

OutboxKit

Toolkit to implement the transactional outbox pattern

#OutboxKit 📤 now supports #PostgreSQL and #MongoDB, in addition to the originally supported #MySQL.
https://outboxkit.yakshavefx.dev
#DotNet #CSharp #OutboxPattern

🚀 Had a blast giving my talk on Wix Engineering's Kafka based async patterns at Devoxx Greece. Thank you for your insightful questions and discussions on why Wix doesn't have distributed transactions, Sagas and doesn't use the outbox pattern.

#ApacheKafka #Kafka #DevoxxGreece2025 #DevoxxGR2025 #Async #eventdriven #sagas #outboxpattern

🚨 New, slightly different one on the blog!
"Introducing OutboxKit"
#DotNet #CSharp #OutboxPattern
https://blog.codingmilitia.com/2024/12/03/introducing-outboxkit/
Introducing OutboxKit

After talking about the outbox pattern so much, and implementing it from scratch a few times in a few different projects, finally figured it was high time for me to build something I could reuse.

Coding Militia

Learn how #ChangeDataCapture & #StreamProcessing can help developers with typical challenges they often face when working on #microservices!

Gunnar Morling talks about the challenges you might encounter when deploying CDC into practice: https://bit.ly/46EjUGs

#InfoQ video w/ #transcript included

#Debezium #ApacheFlink #OutboxPattern #SoftwareArchitecture #QConLondon

Change Data Capture for Microservices

Gunnar Morling discusses how change data capture (CDC) and stream processing can help developers with typical challenges they often face when working on microservices.

InfoQ

You can then use #LogicalDecoding - #Postgres’ change data capture capability - to retrieve the messages from write-ahead log (WAL), process them, and relay them to external consumers.

In this #InfoQ article, Gunnar Morling explores how to take advantage of this feature for implementing three different use cases:
✅ Propagating data between microservices via the #OutboxPattern
#ApplicationLogging
✅ Enriching #AuditLogs with metadata

Learn more: http://bit.ly/3ZiMZnH

#Debezium #ApacheFlink #Microservices

The Wonders of Postgres Logical Decoding Messages

In this article, Gunnar Morling discusses Postgres database's logical decoding function to retrieve messages, process, and relay them to external consumers, with use cases like outbox and audit logs.

InfoQ
Communicating Data Changes Across Service Boundaries… Safely!

“Friends don’t let friends do dual writes.” — Gunnar Morling