ツイート
モノリスからマイクロサービスへ
#今日の30分 +1分。「モノリスからマイクロサービスへ」159ページまで。トレーサー書き込みの話。アプリケーションでのデータ同期の一種で、真の情報源を段階的に移行していくパターン。コンテキストに境界がない、ごちゃまぜのコードから、境界を見出し切り出し移行するようなイメージ。
— ざっきー dev (@zakky_dev) 2021年5月31日
#今日の30分 -1分。「モノリスからマイクロサービスへ」166ページまで。DBの分割、DBとコードの分割順番で先にDBを分割する話について。同じデータベースエンジン内でスキーマだけ分割することは、独立した変更や情報隠蔽の観点から必要になる。しかし、物理的に分割すべきかは状況による。
— ざっきー dev (@zakky_dev) 2021年6月1日
#今日の30分 -3分。「モノリスからマイクロサービスへ」175ページまで。先にコードを分割するケースと、スキーマ分割の例の話。両方同時に分割するケースの話もあったけど、「やるべきではない」みたいな話だったので。基本的にはコード優先。モノリスの変更が可能で、かつ懸念があるときのみDBが先。
— ざっきー dev (@zakky_dev) 2021年6月2日
#今日の30分 -1分。「モノリスからマイクロサービスへ」185ページまで。外部キーのコードへの移動について。モノリスで使っているスキーマを分割する場合、これまで外部キーで保っていたデータの整合性や、テーブル結合によるデータ取得などができなくなる。この問題は避けられない。
— ざっきー dev (@zakky_dev) 2021年6月3日
#今日の30分 -5分。「モノリスからマイクロサービスへ」194ページまで。外部キーのコードへの移動方法で専用サービスを作るやり方と、マイクロサービスにおけるトランザクションの問題について。トランザクション周りの話は確かマイクロサービスパターンにもあった。それだけ大きな問題なんだろう。
— ざっきー dev (@zakky_dev) 2021年6月4日
#今日の30分 +2分。「モノリスからマイクロサービスへ」205ページまで。サーガパターンの話。トランザクションを複数のサブトランザクションに分割し、それぞれをサービスで実行する。失敗したらコミットしたトランザクションを打ち消す補償トランザクションを実行するようにサービスに通知する。
— ざっきー dev (@zakky_dev) 2021年6月5日
#今日の30分 -3分。「モノリスからマイクロサービスへ」212ページまで。混合スタイルのサーガと、成長の痛みの話。マイクロサービスアーキテクチャはモノリスと比べて複雑であり、サービス数が増えるほどに痛みもまた増えていく。例えば所有権のスケールなどは代表的で、一歩間違えれば分散モノリス。
— ざっきー dev (@zakky_dev) 2021年6月6日
ふりかえり
前回の結果
- タイミングを決めて「今日の30分」とは別枠で本を読む
- -
- 1on1の仕方を調整する
- -
今回の追加活動
前回の活動を継続。