シンプルなシステムにCQRSを選ぶ理由 〜サーバーレスで実現する低コスト設計〜 by 清家史郎

PHPerKaigi 2026
レギュラートーク(40分)

シンプルなシステムにCQRSを選ぶ理由 〜サーバーレスで実現する低コスト設計〜

seike460 清家史郎 seike460
5

「CQRSは大規模で複雑なシステム向けのパターンである」

これが一般的な認識です
AWS公式ドキュメントでも「シンプルなCRUDアプリケーションには推奨しない」と明記されています
ではシンプルなシステムにCQRSを選ぶ理由はあるのか、答えはサーバーレスアーキテクチャにありました

Lambda、DynamoDB、DynamoDB Streamsを組み合わせることで、CQRSの複雑さを吸収しながらメリットだけを享受できます
pay-per-useの課金モデルにより、小規模でもコスト負担なく読み書き分離の恩恵を受けられる
将来のスケーラビリティを考慮しつつ、現在は低コストで開始できる設計を実現します
これがシンプルなシステムにCQRSを選ぶ理由です

本セッションではDynamoDBをイベントストアとして活用した実装、Streamsによるリアルタイム同期、冪等性の担保、最終整合性との向き合い方、SQSとDead Letter Queueを用いたエラーハンドリングまで、実際の実装方法について解説します。

シンプルだからCQRSは不要、ではない
シンプルだからこそ、サーバーレスでCQRSを低コストに始められる
その選択肢を持ち帰ってください

  • 想定する聴講者
    • CQRSに興味がある人
    • サーバーレスアーキテクチャの導入を検討している方
    • 小規模システムでコスト効率と将来の拡張性を両立したい方