【すとれすてすと】

ストレステスト とは?

公開:
💡 壊れる前に壊す、それが本当の強さを知る方法
📌 このページのポイント
ストレステスト:限界を超えた負荷でシステムを試す 負荷(リクエスト数) 時間 → 限界値 通常動作範囲(負荷テスト) クラッシュ! 回復 負荷テスト 限界値「以内」での動作を確認 ストレステスト 限界値を「超えて」壊れ方を確認
ストレステストは限界値を超えた先のクラッシュと回復を観察する
ひよこ ひよこ
ストレステストって、システムをわざと壊すってこと?
ペンギン先生 ペンギン先生
半分正解だよ。「壊れる境界線がどこか」を把握するために、意図的に限界を超えた負荷をかけるんだ。壊れること自体が目的じゃなくて、どこで・どう壊れるかを知るのが目的だよ。
ひよこ ひよこ
負荷テストとどう違うの?似てる気がするんだけど。
ペンギン先生 ペンギン先生
負荷テストは「想定内の最大負荷でちゃんと動くか」を確認するもの。ストレステストはさらに上を行って、想定を超えた負荷をかけるんだよ。「100人まで大丈夫」という仕様なら、1000人を当てたらどうなるかを調べる感じだね。
ひよこ ひよこ
実際にどんな風にテストするの?
ペンギン先生 ペンギン先生
大量のリクエストを一気に送ったり、CPUやメモリを意図的に使い切ったり、ネットワークを遅くしたりするよ。JMeterやk6というツールをよく使うんだ。クラッシュ後にちゃんと再起動して正常に戻れるかも確認するよ。
ひよこ ひよこ
壊れたあとの回復も見るんだね。それって何のために?
ペンギン先生 ペンギン先生
実際の本番環境でも、いつか必ず限界を超える瞬間は来るんだよ。そのとき「きれいに落ちて素早く復旧できるか」「データが壊れないか」を事前に確認しておくことで、本番での被害を最小限にできるんだよ。
ひよこ ひよこ
ストレステストって、リリース前にやるものなの?
ペンギン先生 ペンギン先生
大きなイベントや大幅な機能追加の前に特にやるべきものだよ。たとえばECサイトならセール前、ゲームなら新キャラ実装前とかね。SLA可用性99.9%を保証しているなら、そのコミットメントを守れるか確かめる意味でも重要だよ。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「ストレステスト」って出てきたら「限界を超えた負荷でシステムを試す試験」と思えればだいたいOK!
📖 おまけ:英語の意味
「Stress Test」 = 負荷限界テスト
💬 「Stress(ストレス・過負荷)」が語源で、システムに意図的な過剰ストレスをかけて強度を測るテストのことだよ
← 用語集にもどる