スケーラビリティ(Scalability)とは、システムやアプリケーションが負荷の増加に対してどれだけ効率的に対応できるかを示す能力を指します。具体的には、ユーザー数の増加、データ量の増加、トランザクションの増加などに対して、システムのパフォーマンスやリソース使用率をどのように維持または改善できるかを評価します。
スケーラビリティの種類
垂直スケーリング
スケールアップ(Scale Up)とも呼ばれ、単一のサーバーやコンピュータのリソース(CPU、メモリ、ストレージなど)を増加させることで、システムのパフォーマンスを向上させます。
水平スケーリング
スケールアウト(Scale Out)とも呼ばれ、複数のサーバーやコンピュータを追加することで、システム全体のリソースを増加させます。これにより、負荷分散が可能となり、システムのキャパシティが向上します。
評価項目
スケーラビリティは主に下記項目を評価します。
パフォーマンス
システムのレスポンス時間やスループットの変化を評価します
リソース
システムがCPU、メモリ、ストレージなどを、どの程度効率的に使用しているかを評価します
可用性
負荷が増加した際、システムがどの程度高い可用性を維持できるかを評価します。この評価項目は冗長性やフェイルオーバー機能に依存します
コスト
スケーリングに伴うハードウェア、ソフトウェア、運用コストなどを評価します