Tagged articles

Transactional Outbox

4 articles · Page 1 of 1
Tinker Programmer
Tinker Programmer
Jul 1, 2026 · Backend Development

How Domain Events Decouple Communication Between Bounded Contexts

The article analyzes the pitfalls of synchronous calls in a payroll microservice, defines domain events and their naming conventions, compares them with message‑queue messages, and presents two concrete implementations—Spring ApplicationEvent for intra‑process decoupling and RocketMQ with a transactional outbox for cross‑process communication—while also clarifying when event sourcing is appropriate.

DDDDomain EventsEvent‑Driven Architecture
0 likes · 15 min read
How Domain Events Decouple Communication Between Bounded Contexts
Java Web Project
Java Web Project
Apr 14, 2026 · Backend Development

Why Seata’s Global Locks Can Kill High‑QPS Services—and What to Do Instead

The author recounts 18 months of using Seata for distributed transactions, explains its three‑role architecture and AT mode, details how global locks caused severe latency and deadlocks under load, and shows how switching to a transactional outbox pattern restored performance and eliminated the undo_log bloat.

Distributed TransactionsPerformanceSeata
0 likes · 8 min read
Why Seata’s Global Locks Can Kill High‑QPS Services—and What to Do Instead
Full-Stack Internet Architecture
Full-Stack Internet Architecture
May 19, 2021 · Backend Development

Understanding Message Queues: Benefits, Design Challenges, and Transactional Solutions

This article explores the role of message queues in microservice architectures, discussing their advantages such as decoupling, asynchronous processing, and load shedding, while also addressing design challenges like concurrency, ordering, duplicate handling, and transactional messaging with solutions including Kafka partitions, outbox patterns, CDC, and RocketMQ.

CDCRocketMQTransactional Outbox
0 likes · 12 min read
Understanding Message Queues: Benefits, Design Challenges, and Transactional Solutions