クラウド設計原則におけるコンポーネントの疎結合化

疎結合化(Loose Coupling)は、サービス間の依存関係をAmazon SQSやSNSなどの非同期インターフェイスで分離することで、1つのコンポーネントの停止や遅延が他に波及しないようにする重要な設計原則である。 処理能力は増やせるが、同期依存の相手が停止すると待ちや失敗が伝播する。依存の切離しには非同期のキュー等を設計する。 台数調整はできるが、サービス間の実行依存は残る。コンポーネントごとに異なる処理ペースを持たせる疎結合化と区別する。 一時的な遅延を待てる一方、相手の停止で資源を長時間占有し得る。障害伝播の防止には接続を長く待つより依存を切り離す。

AWS Well-Architectedの信頼性の柱において、1つのマイクロサービスやコンポーネントの障害や高負荷がシステム全体に連鎖して停止することを防ぐための設計原則として、最も適切なものを1つ選択してください。

出典AWS非公式・オリジナル問題
ア
各サービスのインスタンスサイズを大きくする
イ
全サービスを同じAuto Scalingグループで増減させる
ウ
キューなどを使ってコンポーネントを疎結合にする
エ
サービス間のHTTP接続タイムアウトを長くする