Apacheベンチ-概要

パフォーマンステストは、ビジネスの成功に不可欠であることが証明されています。パフォーマンスの悪いサイトは経済的損失に直面するだけでなく、時には法的な影響につながる可能性があります。

購入、オンライン受験、請求書の支払いなどの重要なオンラインインタラクションで、パフォーマンスが遅く信頼性の低いサイトに我慢したいと思う人は誰もいません。インターネットが非常に広く利用できるため、選択肢の範囲は膨大です。顧客を獲得するよりも顧客を失う方が簡単であり、パフォーマンスは重要なゲームチェンジャーです。

負荷テストツールの必要性

負荷テストツールの必要性を理解できれば、それを使用する理由と動機が得られます。いくつかの有名なビジネスサイトは、多くの訪問者を迎えるときに深刻なダウンタイムに見舞われています。EコマースWebサイトは、広告キャンペーンに多額の投資を行っていますが、負荷テストには投資していません。したがって、そのマーケティングがトラフィックをもたらす場合、彼らは最適なシステムパフォーマンスを保証することができません。

負荷テストを無視するもう1つのよく知られた例は、WordPressWebサイトでの「接続の確立エラー」の例です。したがって、本番環境にデプロイする前に、Webサイトまたはアプリケーションの負荷テストを行うことをお勧めします。今後、より詳細なテストを実行する前に、プロジェクトのベストケースシナリオをすばやく確立しておくと便利です。

Apacheベンチとは何ですか?

Apache Bench(ab)は、ハイパーテキスト転送プロトコル(HTTP)Webサーバーのベンチマークを行うためのApache組織のツールです。Apache Webサーバーのパフォーマンスを測定するように設計されていますが、同様に優れている他のWebサーバーのテストにも使用できます。このツールを使用すると、Webサーバーが処理できる1秒あたりのリクエスト数をすばやく知ることができます。

Apacheベンチの機能

ApacheBenchの重要な機能と制限を見てみましょう。機能と制限は以下のとおりです-

  • オープンソースソフトウェアであるため、無料で入手できます。

  • シンプルなコマンドラインコンピュータプログラムです。

  • これはプラットフォームに依存しないツールです。これは、Linux / UnixまたはWindowsサーバーでも同様に呼び出すことができることを意味します。

  • Webサーバー(HTTPまたはHTTPS)に対してのみ負荷およびパフォーマンステストを実行できます。

  • 拡張可能ではありません。

Apache Benchは、同時実行レベル(-cフラグで指定)に関係なく、1つのオペレーティングシステムスレッドのみを使用します。したがって、大容量サーバーのベンチマークを行う場合、ApacheBenchの単一インスタンス自体がボトルネックになる可能性があります。サーバーに複数のプロセッサコアがある場合は、ターゲットURLを完全に飽和させるために、ApacheBenchの追加のインスタンスを並行して使用することをお勧めします。

予防措置

テストの実行中に特定の間隔で同時実行性を高めるためのディレクティブがApacheベンチにないことに注意する必要があります。したがって、abを使用して負荷テストを実行することは、サービス拒否(DOS)攻撃と同等です。長時間の高負荷テストを行う場合は、VPSサービスプロバイダーに通知し、事前の許可を得るようにすることをお勧めします。適切な時間間隔を割り当てるか、負荷テストタスクのためにノードをシフトします。

次に、VPS(テストノードになる)からApache Benchを学習するためだけに、第三者のWebサイトを継続的に長期間テストしている場合、VPSパブリックIPが第三者のWebサイトによってブロックされる可能性があります。永久に。その場合、同じIPでそのWebサイトに接続することはできません。ただし、将来本当にWebサイトに接続する場合は、ターゲットWebサイトのシステム管理者に相談するか、VPSサービスプロバイダーを利用して別のIPでサーバーの新しいインスタンスを作成するしかありません。

警告しましたが、このチュートリアルのすべてのテストは十分に安全であり、システム管理者が一般的に「システムの悪用」と呼ぶものから外れていることを保証します。