クラウドプラクティショナー試験の勉強中に柔軟で弾力性があるクラウドアーキテクチャという言葉が出てきたのでメモメモ。
そもそもシステムにおける柔軟とか弾力性って何?
🔶 柔軟(Flexibility)
要求の変化に合わせて簡単に構成や機能を変更できる性質。
例:
- 突然「新しい機能を追加したい」と言われても構成を大きく変えずに対応できる
- トラフィック量、データ量、利用者数の増減に応じてシステムを調整しやすい
- 必要に応じて別のサービスへ移行しやすい(例:EC2 → Lambda への置き換えなど)
柔軟である=変化に強いシステム
🔷 弾力性(Elasticity)
負荷に応じて自動的にリソースを増減できる性質。
クラウドにおける「弾力性」はほぼ Auto Scaling の考え方と同義。
例:
- アクセス増 → EC2 インスタンスが自動で増える
- 夜間など利用が少ない時間帯 → 余分なインスタンスを自動削減
- Lambda なら実行数を勝手にスケールしてくれる
弾力性がある=ムダなコストを減らしつつ高パフォーマンスを維持できる。
| 概念 | 意味 | 例 |
|---|---|---|
| 柔軟性 | 変更・拡張がしやすい | 新サービス追加、構成変更が楽 |
| 弾力性 | 自動スケール(増減)できる | Auto Scaling / Lambdaの自動拡張 |
AWSが提供する柔軟性・弾力性の代表例
★ 柔軟性の例
- マイクロサービス構成
- Serverless(Lambda, API Gateway)
- マルチAZ構成での配置変更
- Docker / ECS / EKS での柔軟なリリース
★ 弾力性の例
- Auto Scaling(EC2 のスケールアウト/イン)
- Lambda の自動スケーリング
- DynamoDB のオンデマンドモード(自動スループット調整)
- Aurora Serverless の自動キャパシティ調整
どれも「必要な時に必要なだけリソースを使い、不要になったら削る」思想。
🎯 一言でまとめると
柔軟性=システムが変化に適応しやすい
弾力性=負荷に応じて自動で伸び縮みする
クラウド時代のアーキテクチャでは、この2つが揃うことで
コスト最適化・高可用性・高速開発 が実現できます。
参考記事
https://repost.aws/ja/questions/QUK3VX8M9pRGa7uFFgFB17gw/%E5%BC%BE%E5%8A%9B%E6%80%A7%E3%81%A8%E6%8B%A1%E5%BC%B5%E6%80%A7-%E3%82%B9%E3%82%B1%E3%83%BC%E3%83%A9%E3%83%93%E3%83%AA%E3%83%86%E3%82%A3-%E3%81%AE%E9%81%95%E3%81%84
https://note.com/takehiroupup/n/nda35df91e49e