Java読書会BOF 「マイクロサービスパターン」を読む会 第11回

[戻る]

開催概要
日時 2022年6月18日 10:00 - 17:00
場所 てくのかわさき 第4研修室
出席者(敬称略) 高橋(智)、高橋(徹)、遠藤、吉本、平山、岩室(書記)

13. マイクロサービスのリファクタリング

13.3 サービスとモノリスの連携方法の設計

13.3.3 認証と認可の処理

13.4 新機能をサービスとして実装する:配達ミスの処理

13.4.1 遅延配達サービスの設計

  • 「所有していない」= 主体的に更新処理する権限を持っていない (他システムからのレプリカを保持するのみ)
  • 図13.14: 「定期的に実行」という情報が記述されないのに違和感がある
    • 外部とのインタラクションに必要な情報のみが記述されている
    • 「定期的に実行」の部分はサブシステム内部の話なので、記述されない (文章で説明されていればよい)

13.4.2 遅延配達サービスのインテグレーショングルーの設計

  • 1:1だと部分的なデータの転送が可能だが、マイクロサービスが10個あったら?
    • 1:n の通信になる ⇒ 送信されたデータは何時消せるか? (1:1 なら受信されたことが確認できれば消せる)
    • Pub/Sub (Publish/Subscribe) メッセージングシステムのトピックを用いる?
  • 今時なら、クラウドが提供するPaaSの大きなRDBを用意して、個々のアプリはコンテナで作成するのもあり?
    • DBのレプリカとか考える必要がない

13.5 モノリスの分解:配達管理の抽出

13.5.1 既存の配達管理機能の概要

13.5.2 配達サービスの概要

13.5.3 配達サービスのドメインモデルの設計

13.5.4 配達サービスのインテグレーショングルーの設計

13.5.5 配達サービス連携のためのFTGOモノリスの書き換え

  • 一番難しいところが、さらっと流されていないか?
    • トランザクションが使えなくなってサーガに書き換えないといけない
    • トランザクションのキャンセルはロールバックするだけだが、サーガは新規で書かなければならない
    • 同期を最終的に非同期にしなければならない

13.6 まとめ

(以上)

[戻る]