課題から理解するDDD/CQRS/ES 3つの境界設計の探求 by 清家史郎

YAPC::Fukuoka 2025
トーク(20分)

課題から理解するDDD/CQRS/ES 3つの境界設計の探求

seike460 清家史郎 seike460
3

マイクロサービス設計でこんな課題に直面していませんか?

「なぜ一方のサービスの変更が、全く関係ないはずの他のサービスまで影響するのか?」
「同じデータなのに、なぜ更新処理は500ms、参照処理は50msと10倍差が生まれるのか?」
「システム障害時、現在の状態は分かるのに、なぜその状態になったかが全く追跡できないのか?」

本セッションでは、これらの現実的な課題から出発して、DDD/CQRS/ESという3つの境界設計に辿り着く過程を探求します。

  1. 責務の境界(DDD)
    なぜ変更が波及するのかドメインモデル散在が引き起こすサービス間結合を、境界付けられたコンテキストで解決する道筋

  2. 処理の境界(CQRS)
    なぜ更新と参照で異なる仕組みが必要なのかトランザクション要件と参照要件の根本的違いから、コマンドとクエリ分離への発想転換

  3. 因果の境界(Event Sourcing)
    なぜ結果だけでなく経緯も必要なのか状態変化をイベント記録することで開ける、システム振る舞い追跡と因果関係管理への扉

課題に直面したエンジニアがどのようにしてDDD/CQRS/ESという境界設計に辿り着くのか、その思考プロセスを追体験しましょう