【こんぽーざぶるあーきてくちゃ】
コンポーザブルアーキテクチャ とは?
最終更新:
💡 レゴブロックのように組み替えられるシステム
再利用・組み合わせを考えて機能を部品化し、APIなどの接点を通じてシステムを構成する設計の考え方。機能の追加や交換をしやすくするため、部品の境界や契約、依存関係も設計する。
📌 このページのポイント
マイクロサービスと何が違うの?
なんでブロック化するの?
たとえば販売画面を追加するときに、既存の在庫管理や決済の機能を再利用したいからだよ。そのためには、部品の役割とAPIなどの接点をはっきりさせ、ほかの部品の内部に頼りすぎない設計が必要なんだ。
SaaSをいくつか契約するだけでいい?
じゃあ、部品の交換は簡単になるの?
交換の影響を小さくすることが狙いだよ。でも部品どうしの依存やデータ移行、接続先の障害などは残る。再利用できる部品を管理し、接点の変更や動作を確認する運用も大切だね。
導入は一気に進めるの?
既存の機能を少しずつ新しいサービスへ置き換えるストラングラーパターンも選択肢だよ。ただ、旧システムとデータを共有する期間や、要求の振り分けを設計する必要がある。システムの規模や制約に合った進め方を選ぶんだ。
まとめ:ざっくりこれだけ覚えればOK!
「コンポーザブルアーキテクチャ」って出てきたら「再利用できる機能の部品を組み合わせるシステム設計」と思えばだいたいOK!
📖 おまけ:英語の意味
「Composable Architecture」 = 組み立て可能なアーキテクチャ
💬 Composable(構成可能な)Architecture。レゴブロックのように必要なパーツを組み合わせてシステムを作るよ