2021-10-17のツイート

  • 17:15:16
    ヘキサゴナルアーキテクチャのアダプタの種類。REST API アダプタ、イベントを消費するコマンドハンドラアダプタ、イベントパブリッシュアダプタ、データベースアダプタ。
  • 17:19:24
    モデルが状態のみを持ち、ビジネスロジック専用のモジュールがあればトランザクションスクリプト。モデルが状態と振る舞いをもてばオブジェクト指向
  • 17:26:39
    必ず守らなければならないビジネスルールを不変条件と呼ぶ。例えば最低限の注文金額。
  • 17:33:27
    アグリゲートは整合性の単位。
  • 17:39:15
    アグリゲートの3つのルール。1、アグリゲートルートだけを参照する。2、アグリゲート間の参照では主キーを使う。3、一つのトランザクションで一つのアグリゲートを作成更新する。
  • 17:44:08
    サービスとアグリゲートは1対1。アグリゲート間の整合性はサーガで保証する。
  • 17:48:17
    アグリゲートの粒度は小さくする。同時に処理できるリクエストの数が増えてスケーラビリティが向上する。トランザクションの衝突を減らせる。ビジネスロジックの肥大化を防ぐ。
  • 17:53:42
    ビジネスロジックはアグリゲート、サービス、サーガの3つに分散される。サービスはビジネスロジックのエントリポイントとアグリゲートの永続化。サーガはアグリゲート間の整合性を保証。その他のビジネスロジックはアグリゲート。
  • 17:56:21
    どメインイベントはアグリゲートの状態変更を表す。
  • 18:01:17
    ドメインイベントはアグリゲート間の整合性保証やCQRSのデータ同期、web hookやメッセージブローカー、アプリケーションの監視、ユーザー行動のモデリングなどに使う。