サーバーが処理できる最大負荷を計算するにはどうすればよいですか?
-
06-07-2019 - |
質問
どのように難しいか:証明されていないパス、彼は書いた:
...ジェフと彼の プログラマーはとても良かったので 80,000を提供できるサイトを構築しました 訪問者1日(約755,000ページ ビュー)
サーバーが処理できる最大負荷を計算するにはどうすればよいですか?
他のヒント
ソフトウェアのベンチマークは、見かけよりもはるかに難しいことがよくあります。確かに、ソフトウェアのパフォーマンスを示す数値を簡単に生成できますが、エンドユーザーの実際の使用パターンを非常に正確に表現して計算しない限り、実際の結果とはまったく異なる場合があります野生で。ウェブサイトは、ベンチマークを正しく行うことが難しいことで有名です。もちろん、ページを生成するのにかかる時間を測定するスクリプトを実行できますが、実際の使用状況で表示されるものとは非常に異なる数値になります。
サーバーが処理できるものの堅実なベンチマークを作成するには、まずユーザーの使用パターンを把握する必要があります。サイトが既に稼働している場合、ログからこのデータを簡単に収集できます。次に、実際のユーザーが示すものとまったく同じパターンをエミュレートするシミュレーションを作成する必要があります。つまり、フロントページの表示、ログイン、ステータスページの表示などです。ページが異なるとサーバーに異なる負荷がかかるため、サーバーの負荷をシミュレートするときに実際に正しいページセットを取得する必要があります。最後に、どのリソースがユーザーによってキャッシュされているかを把握する必要があります。アクセスログを調べるか、firebugなどのツールを使用して、これを再度行うことができます。
JMeter、ab、または httperf
複数の「ストレステスト」を作成できます。他のポスターが言っているようにそれらを実行します。
ApacheにはJMeterと呼ばれるツールがあり、これらのテストを作成して数回実行できます。
ご挨拶。
Apacheには、サーバーのベンチマークに使用できる ab
というツールがあります。ロード要求と同時実行状況をシミュレートできます。
基本的に、ユーザーの振る舞いを模倣し、サーバーの応答が受け入れられなくなるまで、模倣されるユーザーの数を増やし続ける必要があります。
これを行うことができるさまざまなツールがありますが、基本的には、サイトでいくつかのセッションアクティビティを記録し、それらのセッションを何度も再生(実際のユーザーの行動を反映するためにランダム化を追加)します。
各セッションのパフォーマンスをログに記録し、パフォーマンスが受け入れられなくなるまで負荷を増やし続けます。