2021-10-20のツイート
- 14:41:57
アグリゲートのステート管理とサーガは一心同体。
2021-10-19のツイート
- 14:04:09
ドメインイベントインターフェース。 サービスイベントインターフェース。 サービスイベントクラス。 ドメインイベントエンベロープクラス。 - 14:04:47
ドメインイベントエンベロープクラスはイベントIDやタイムスタンプなどのメタデータをもつ。 - 14:06:41
サービスイベントクラスにコンシューマが必要な情報を入れることをイベントエンリッチメントと呼ぶ。 - 14:10:41
ドメインイベントは Xが起きたらYをすること と表現される。 - 14:12:12
イベントストリーミングでドメインイベントを探す。 イベントのブレーンストーミング、イベントトリガーの特定、イベントを消費生成するアグリゲートの特定、の順序で行う。
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やメッセージブローカー、アプリケーションの監視、ユーザー行動のモデリングなどに使う。
2021-10-09のツイート
- 03:02:52
モデル→ビュー(シングル·コレクション)→画面 の順にOOUI設計をする。フォルダとファイルはモデル。ビューはフォルダ一覧とファイル一覧とファイル詳細。大きい画面ならそれらのビューで一画面。モバイルならフォルダ一覧画面、ファイル一覧画面、ファイル詳細画面にわかれる。
2021-10-02のツイート
- 16:31:42
SQSの最大メッセージ数は10件。 - 16:33:04
SQSは月100万リクエストまで無料。すべてのAPIリクエストはリクエストとしてカウントされる。 - 16:39:13
SQSのメッセージ受信方法はショートポーリングとロングポーリングの2つある。ショートポーリングはメッセージの有無に関わらずレスポンスを返すので、空のレスポンスが返されることがある。これを防ぐにはロングポーリングを使う。 - 16:40:47
SQSの遅延キューとメッセージタイマーは、キューに送られたメッセージを一定期間見えなくする。遅延キューはすべてのメッセージに対し、メッセージタイマーは個別のメッセージに適用される。 - 16:45:54
Step Functionは1回限りの実行保証、分散処理、並列処理、順序保証ができる。フローのステートを管理できる。 - 16:52:07
SNSは複数のプロトコルに対応したプッシュ型の通知サービス。トピック単位で通知を管理し、サブスライバーがプロトコルを選択する。パブリッシャーはメッセージを配信する。 - 16:56:28
信頼性は故障のしにくさ。可用性は稼働率。頻繁に故障しても使える時間が長ければ可用性は高くなる。一度故障するとしばらく使えないが、めったに故障しないなら信頼性は高くなる。
2021-09-25のツイート
- 01:44:26
type array = string[] type arrayElement = array[number] // string 配列の要素の型を取得する。 - 19:29:22
そろそろ転職活動をしようかと思い、コーディングテストの準備を始める。
2021-09-22のツイート
- 03:26:50
headerを固定すると次の要素が下に回り込んで重なる。次の要素のpaddingをheaderの高さの分だけ設定すると解決する。 - 12:27:19
毎日テーマを決めて学んだことをまとめたい。今日はAmplifyとAppsyncの認証、認可について。 - 12:28:53
MySQLのon duplicate key updateを使えばインサートとアップデートを同時に実行できる。 - 15:22:34
Session managerについて調べる。