問題タブ [apachebench]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
696 参照

caching - memcacheサーバーは、AB(Apache Benchmark)を介した大量のリクエストで接続を失いました

先週、合計40万行、約220 MBのmysqlサーバーで大きな問題が発生したため、memcacheの使用を開始することにしました。スクリプト全体を変更する前に、テストページが準備され、apacheベンチマークでテストされています(テストする正しい方法かどうかはわかりません)

上記のコマンドを使用してさらに多くのリクエストをテストすると、25000リクエスト後にmemcacheが切断を開始します。

これがtest.phpのサンプルコードです

?>

MySQLから取得したデータは約120KBです

memcached cachesize=1024も2048で試行されました

memcached maxconn = 4096

mysqlサーバーのトラフィックが多いために発生する問題は、memcacheの後で修正されるようですが、memcacheの切断が現在の問題です。今回はmysqlサーバーは機能するようですが、memcacheは切断されます。

どんなアイデアでも役に立ちます。ありがとう。

0 投票する
1 に答える
1214 参照

http - シンプルな Dart HTTP サーバーが Apache Bench でハングする

このGoogle Dartテスト プログラムがあります。

Chrome と Firefox で正常に動作し、supメッセージが表示されます。

ただし、Apache Bench を試してみるとすぐにハングします (abハングします)。

abApache HTTPサーバーをインストールすることで見つけることができ、binフォルダーの下に配置されます。

ab余談ですが、私が使用できる(そしてハングしない)ものに似た他のベンチマークツールはありますか?

0 投票する
0 に答える
260 参照

benchmarking - REST Web アプリケーションで ApacheBenchmark を使用してベンチマークを実行できない

ab を使用して 2 つの単純な REST Web フレームワード (RESTlet と RESTfulie) のベンチマークを行いたいのですが、両方のフレームワーク (hello world) を使用して非常に単純なアプリをデプロイし、次のコマンドを実行しようとしました。

しかし、私は常にこのエラーが発生します:

ローカルホストのベンチマーク (しばらくお待ちください)...apr_pollset_poll: 指定されたタイムアウトが期限切れになりました (70007)

私の問題は何ですか?または、REST Webアプリのテストに使用できるベンチマークツールの種類は、apache / phpサーバーで問題なく動作するため、RESTにアレルギーがあると思います。

0 投票する
1 に答える
523 参照

python - `-k`を追加すると、竜巻のApacheBenchテストが中止されるのはなぜですか?

私はこのような竜巻httpサーバーを起動します:

Connection: keep-aliveヘッダーを設定no_keep_aliveしてリクエストを取り込みたいのですがTrue

私が走るとき

出力

削除する-kと、すべてが正常に機能しています。

0 投票する
2 に答える
1669 参照

php - Apache Bench: 503 が多いのはなぜですか?

DreamHost で専用サーバーを実行しています: クアッド コア、4 GB RAM。

Linux (Debian)、Apache、PHP (オペコード キャッシング用の XCache を使用)、MySQL。

私がクエリしている URL には、毎回 18 個の MySQL クエリがあります。

「ab -n 500 -c 50 http://< url >/」を実行すると、次の結果が得られるのはなぜだろうか。

失敗した 377 件のリクエストはすべて 503 です。何が原因でしょうか? これを実行topしながら実行すると、プロセッサが約 24% に急上昇しましたが、それほど負担にはなりませんでした。

私の CMS によると、ページの 1 回の読み込みで、基本クラスの読み込みに 0.0017 秒、コントローラーの実行時間に 0.1711 秒、合計実行時間は 0.1731 秒で、2.887 MB のメモリを使用しています。

ab -n 100 -c 10失敗したリクエストは常に 0 件ですが、同時接続数が 25 を超えるものには、多数の失敗した接続があるようです。

来週は大量のトラフィックが一気に来ると予想されますが、サーバーを準備するにはどうすればよいですか? このまま持ちこたえますか?

編集:httpd.confを介して含まれている私のhttpd-mpm.confファイルから

0 投票する
1 に答える
394 参照

ruby-on-rails - ApacheBenchを正しく使用していますか?

ビデオコントローラー-アクションの表示で、2つのシナリオを試しました。最初のものはを使用increment_counterし、データベースに直接書き込みます。

2番目のアプローチはこのsave方法を使用します。

ApacheBenchでは、次のことを行います。

ビデオIDは18ですviews_count。abを実行するたびに、を介してリセットするようにしてVideo.find(18).update_attribute(:views_count, 18)ください。

両方のシナリオでApacheBenchを実行した後、100で一貫しています。データベースに直接書き込むため、メソッドよりも正確であるとviews_count想像しました。increment_countersave

私は正しくベンチングしていますか?

0 投票する
2 に答える
7362 参照

node.js - 多数の同時接続に苦労している Node.js

私は、10,000 個のクライアントがすべて一度に、3 分ごとにデータを送信しようとする正確なタイミングがとられている、少し変わったアプリケーションに取り組んでいます。この「ab」コマンドは、現実世界の 1 つの弾幕をかなり正確にシミュレートします。

これらの送信を収集するために、rackspacecloud VPS インスタンスの Ubuntu 12.4 で Node.js を使用していますが、すべてのビジネス ロジックを削除して http リクエストを no- op。

テストが約 90% 完了すると、長時間ハングします。不思議なことに、これは一貫して 90% で発生します - c=n=10k の場合、9000 で c=n=5k の場合、4500 で。c=n=2k の場合、1800 です。テストは実際には最終的に完了し、多くの場合、エラーは発生しません。ただし、ab ログとノード ログの両方で、テスト実行の約 80 ~ 90% まで継続的な処理が示され、その後、完了する前に長い一時停止が発生します。

ノードがリクエストを正常に処理している場合、CPU 使用率は通常約 50 ~ 70% です。ハング期間中、CPU は 100% まで上昇します。ときどき 0 近くに留まります。不規則な CPU 応答と、実際の接続数 (% 完了のみ) とは無関係に見えるという事実の間で、私はガベージ コレクターを疑いません。

ローカルホストとリモートサーバーで「ab」を実行してみました-同じ効果です。

おそらく接続を閉じることを含む、TCPスタックに関連する何かが疑われますが、構成の変更はどれも役に立ちませんでした。私の変更:

  • ulimit -n 999999
  • listen() すると、バックログを 10000 に設定します

sysctl の変更は次のとおりです。

また、カーネルログに次のメッセージが表示される傾向があることにも気付きました。

TCP バックログ キューは決してオーバーフローしないように十分に深くする必要があるため、このメッセージには困惑しています。syn Cookie を無効にすると、「Cookie の送信」が「接続の削除」になります。

これはある種の Linux TCP スタック チューニングの問題であると推測し、ネットで見つけたほぼすべてのものを読みました。私が試したことは何も問題ではないようです。何かアドバイス?

更新: tcp_max_syn_backlog、somaxconn、netdev_max_backlog、および listen() バックログ パラメータを 50k に設定して試しましたが、動作は変わりません。それでも SYN フラッド警告が生成されます。

0 投票する
1 に答える
4171 参照

ruby-on-rails - Apache ベンチマーク multipart/form-data

Apache ベンチマーク ポスト ファイルで奇妙な問題に直面しています。

ファイルのアップロードを処理する機能を強調する必要があります。それで、私はググって、投稿ファイルを適切に構築する方法を説明している投稿を見つけました。その内容は次のようになります。

abラインはこれです:

ab がリクエストを作成すると、生成されるヘッダーは次のようになります。

予想される戻り値は、raise params.inspect であり、データが反対側に到着しているかどうかを確認できます。境界を削除すると、params で受信したデータを確認できますが、これは私が望むものではありません。ファイルのアップロードを取得したい。

誰にもヒントがありますか?本当に感謝します。

0 投票する
3 に答える
3413 参照

php - ローカルサーバーでapacheベンチを使用する

apacheベンチを介してサイトの負荷(サイトはphpに書き込みます)をテストしたいと思います。

私はローカルサーバー(xampp)、OC:ウィンドウを持っています。

ディレクトリapache/benchにファイルab.exeがあります。これは、apachebenchがローカルサーバーにインストールされていることを意味します。

ローカルサイトlocalhost/my_testがあり、このサイトで同時1000要求をシミュレートしたいので、CMDで次のコマンドを記述します。

ab -c 1000 localhost / my_test

CMDからの回答は次 のとおりです。 「ab」は、内部または外部コマンド、操作可能なプログラム、またはバッチファイルとして認識されません。

教えてください、どこが間違っていますか?

0 投票する
1 に答える
2725 参照

nginx - Very low request per second values as a resut of Apache ab test on nginx server

I am testing my new site on the following setup * 2 m1.large ec2 instances as web server behind a elastic load balancer * both webserver has memcache/apc/nginx/php-fpm installed * 1 m1.large ec2 instance for mongo db when I run this from a remote server ab -n 100 http://beta.domain.com/ I get the following results

APC hit rate is around 98%. Also I am checking the memcached log file as I do this test and I can see the ab is hitting both servers and hitting the values on memcached (All hit, no misses). But still RPS value is 0.79. Isn't this very low? Am I missing the point here?

EDIT

Also all static content (css, js, images) are being served from Amazon S3 in gz format and have 1 year expiration date.

*EDIT 2 *

I ran the same test with -c 50 parameter and here is the result

** Load Generation **

I guess ab does that, doesn't it? Sorry, I am quite new to benchmarking :) I also added -c 50 and ran the test again. See the results above.

** Testing page **

This page lists 20 products with image, description etc. Does some backend calculations but results are all cached in memcache, so it never actually hits the database (mongo). I can see this from memcache log file.

** What else **

Here is the result of vmstat on one of the servers during the ab test

and iostat