Tagged articles

Domain Events

14 articles · Page 1 of 1
Code Farming
Code Farming
Sep 2, 2026 · Backend Development

Event Sourcing: Decouple Microservices with Domain Events

This article explains how event sourcing replaces synchronous call chains with domain events to decouple microservices, detailing the four core event elements, a three-step publish-subscribe flow using Spring Cloud Stream, and a practical template for implementation.

Domain EventsDomain-Driven DesignEvent Sourcing
0 likes · 6 min read
Event Sourcing: Decouple Microservices with Domain Events
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jul 9, 2026 · Backend Development

5 Tips to Keep Your Spring Service Clean and High‑Quality

This article presents five practical patterns—single‑use‑case classes, a lightweight Facade, self‑validating input records, domain‑event side‑effects, and ports‑and‑adapters—that transform monolithic Spring @Service classes into modular, readable, testable, and transaction‑safe components, improving maintainability and extensibility.

Domain EventsFacadeService design
0 likes · 15 min read
5 Tips to Keep Your Spring Service Clean and High‑Quality
Tinker Programmer
Tinker Programmer
Jul 3, 2026 · Backend Development

How Aggregate Roots Guard Business Invariants – The Final Defense Line

The article examines a payroll bug caused by exposing internal collections, then explains three immutable‑focused rules for aggregate roots—expose only through the root, keep each transaction to a single aggregate, and reference other aggregates by ID only—showing how proper design prevents consistency errors, performance loss, and concurrency conflicts in Spring Boot applications.

@TransactionalAggregate RootDomain Events
0 likes · 17 min read
How Aggregate Roots Guard Business Invariants – The Final Defense Line
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 EventsRocketMQ
0 likes · 15 min read
How Domain Events Decouple Communication Between Bounded Contexts
ZhiKe AI
ZhiKe AI
Jun 2, 2026 · Backend Development

Why DDD Still Fails to Deliver Business‑Friendly Code When Treated as a Mere Architecture Pattern

The article argues that Domain‑Driven Design is not an architectural style but a two‑layer framework—strategic design defines bounded contexts and ubiquitous language, while tactical design supplies the modeling tools—explaining common misreadings and showing how DDD complements Clean, Hexagonal, CQRS, and Event Sourcing approaches.

AggregatesDomain EventsDomain-Driven Design
0 likes · 14 min read
Why DDD Still Fails to Deliver Business‑Friendly Code When Treated as a Mere Architecture Pattern
Xiaolin Talks Programming
Xiaolin Talks Programming
May 27, 2026 · Backend Development

DDD Implementation Guide: Bounded Contexts, Aggregates, Domain Events & Spring Boot Architecture

A comprehensive practical guide to implementing Domain-Driven Design in complex business systems, covering bounded context division using Event Storming and subdomain analysis, aggregate root and entity design with code examples, domain event patterns for decoupling and eventual consistency, and integrating DDD with Spring Boot's layered architecture using onion/clean architecture principles.

Aggregate RootDDDDomain Events
0 likes · 37 min read
DDD Implementation Guide: Bounded Contexts, Aggregates, Domain Events & Spring Boot Architecture
ZhiKe AI
ZhiKe AI
May 14, 2026 · Fundamentals

Why DDD Is a Cognitive Alignment Tool, Not Just an Architecture

The article explains how Domain‑Driven Design addresses the pitfalls of bloated services, unclear boundaries, and inconsistent terminology by introducing bounded contexts, aggregates, and domain events, and outlines a step‑by‑step adoption process while debunking common misconceptions.

AggregatesDomain EventsDomain-Driven Design
0 likes · 9 min read
Why DDD Is a Cognitive Alignment Tool, Not Just an Architecture
Architect's Journey
Architect's Journey
Jan 22, 2025 · Backend Development

Deep Dive into DDD Rich Model: Best Practices

The article explains the DDD rich (or active) model, its core characteristics, compares it with the anemic model, and shows how to apply it in a shared‑rental billing domain using Java, DDD layers, domain events, and a lightweight framework.

DDDDomain EventsDomain-Driven Design
0 likes · 10 min read
Deep Dive into DDD Rich Model: Best Practices
Tencent Cloud Developer
Tencent Cloud Developer
May 8, 2024 · Backend Development

Understanding Domain-Driven Design: Concepts, Principles, and Microservices Integration

The article explains Domain‑Driven Design’s philosophy of aligning business language with code, defines key concepts such as bounded contexts, entities, value objects, aggregates, and shows how these ideas translate into microservice decomposition, event‑driven integration, and reduced coupling for cloud‑native systems.

Aggregate RootDDDDomain Events
0 likes · 16 min read
Understanding Domain-Driven Design: Concepts, Principles, and Microservices Integration
ITPUB
ITPUB
Feb 15, 2023 · Backend Development

Mastering Domain Events in Go: Definition, Publishing, and Consumption

This article explains what domain events are, how to define them with proper naming and attributes, explores multiple techniques for publishing events in Go—including parameter injection, static-like helpers, return‑based and repository‑based approaches—and describes strategies for consuming events safely and atomically.

DDDDomain EventsEvent Consumption
0 likes · 15 min read
Mastering Domain Events in Go: Definition, Publishing, and Consumption
Architecture Digest
Architecture Digest
Apr 2, 2022 · Backend Development

Applying Domain-Driven Design to Model a Payment System at Airwallex

This article explains how Airwallex uses Domain-Driven Design (DDD) to model a complex payment system, covering problem and solution spaces, bounded contexts, domain models, services, events, infrastructure, and the transition from domain concepts to microservices.

Domain Eventsbounded-contextpayment system
0 likes · 10 min read
Applying Domain-Driven Design to Model a Payment System at Airwallex
ITFLY8 Architecture Home
ITFLY8 Architecture Home
Sep 26, 2020 · Fundamentals

Why Development Teams Need DDD: Insights, Challenges, and Solutions

In this interview, senior ZTE architect Zhang Xiaolong explains why development teams should adopt Domain‑Driven Design, outlines key practices such as a unified language, layered architecture, and domain events, and discusses common obstacles—including limited case studies and tooling gaps—and offers practical solutions to successfully implement DDD in complex, high‑performance telecom software.

Domain EventsDomain-Driven Design
0 likes · 6 min read
Why Development Teams Need DDD: Insights, Challenges, and Solutions
vivo Internet Technology
vivo Internet Technology
Apr 8, 2020 · Backend Development

Applying Domain Events, Saga, and CQRS in Domain-Driven Design

The article, the second in a DDD practice series, shows how immutable domain events can capture business milestones and be stored and published, introduces Saga—both choreography and orchestration—to manage distributed transactions with compensations, and explains how CQRS separates read and write models, illustrating each concept with Java code while highlighting the resulting decoupling, scalability, and modeling clarity alongside added complexity and storage challenges.

CQRSDomain EventsDomain-Driven Design
0 likes · 21 min read
Applying Domain Events, Saga, and CQRS in Domain-Driven Design
Programmer DD
Programmer DD
Aug 19, 2017 · Backend Development

Decoupling Business Logic with Domain Events Using Guava EventBus

This article explains how to apply Domain‑Driven Design's domain events to separate reply handling from push notification logic, discusses the shortcomings of embedding side‑effects directly, compares Spring and Guava event mechanisms, and provides a custom Guava‑based publisher implementation with synchronous and asynchronous buses.

Domain EventsDomain-Driven DesignEventBus
0 likes · 8 min read
Decoupling Business Logic with Domain Events Using Guava EventBus