Apache-bench-overview

提供:Dev Guides
移動先:案内検索

Apacheベンチ-概要

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

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

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

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

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

Apache Benchとは何ですか?

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

Apache Benchの機能

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

  • オープンソースソフトウェアであるため、無料で入手できます。
  • これは、単純なコマンドラインコンピュータープログラムです。
  • プラットフォームに依存しないツールです。 これは、Linux/UnixでもWindowsサーバーでも同様に起動できることを意味します。
  • HTTPまたはHTTPSのWebサーバーのみの負荷およびパフォーマンステストを実行できます。
  • 拡張可能ではありません。

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

予防措置

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

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

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