9

かなりオープンな質問で申し訳ありませんが、非常に価値のある議論の領域だと思います。

最近のAWS の停止とそれに続く膨大な数のホラー ストーリーに続いて、私は Netflix が適用した Chaos Monkey の「テクニック」に本当に感銘を受けました (ほぼ無傷で生き残った数少ないものの 1 つです。

この概念を知らない人のために説明すると、これは基本的に、回復力を継続的にテストする方法として、インフラストラクチャを巡回し、途中で混乱を引き起こす小さなボットです。

Jeff Atwood の Chaos Monkey の記事を除けば、これが他の場所で採用されていることについてはほとんど見つけることができませんでした。

優れたテスト駆動型開発が堅固な基盤であることは理解していますが、これは、最新の状態を維持したい企業/組織の武器庫への素晴らしい追加になると思います。

  • 他の誰かが以前にこのトピックにアプローチしたことがありますか?
  • 接続性とセキュリティの脆弱性以外に、そのようなコードがヒットする特定の領域はありますか?
  • このアプローチに関する他の考え/感情はありますか?
4

1 に答える 1

6

システムに負荷をかけるために実行できるテストがいくつかあります。データベースに書き込むページのロード テストに apache ベンチを使用するのが好きです。ヒット数と同時ユーザー数の両方についてテストします

500 人の同時ユーザーが合計 5000 件のリクエストを行う
$ ab -n 5000 -c 500 url

Web サーバーがこれに耐えられることはわかっていますが、情報をログに記録する方法に問題があることがわかりました。サイトのさまざまな側面を指摘できます。

キャッシュを使用すると、テストの途中でキャッシュをクリアして、すべてが迅速に回復することを確認できます。

サーバーを VM にレプリケートできる場合は、RAM の量を変更し、ハード ディスクをアンマウントし、ディスク容量を使い果たし、ネットワーク インターフェイスを切断するなどの方法があります。

パスワードを総当たり攻撃して、そのユーザーのレートを制限する前に、システムが n 回のログイン試行のみを許可するようにすることができます。

于 2011-05-13T21:16:23.203 に答える