Symfoware

Symfowareについての考察blog

Apache JMeterでmod_access_tokenの負荷テスト

mod_access_tokenをインストールしてみたり、
独自のnginx実装を作ったりしてみました。

apache2 mod_access_tokenをPythonから使用する
nginx 1.6.2 + lua-nginx-moduleでapache2 mod_access_tokenを実装
nginx 拡張モジュールでapache2 mod_access_tokenを実装


これのテストがしてみたくて、ツールを作ったり
お手軽にLinuxサーバー負荷をチェックするsimple-load-monitoring

JMeterの使い方を調べていました。
Apache JMeter 2.12の簡単な使い方



JMeterでパラメーター付きのテスト



GETパラメータ付きのテストは、HTTPリクエストの
「Parameters」タブに定義すれば良いようです。

523_01.png


Key、Valueのペアを3つ定義しています。

また、スレッド数を50、ループ回数を1,000に変更し、
合計50,000回のアクセスでテストしてみます。

テストは、Apache、nginxともに同じサーバーにインストールして実行しました。
設定値はデフォルトで特にチューニングは行っていません。



Apache2 + mod_access_token



テスト結果はこちら。
ロードアベレージが15ぐらいまで上がりました。
※15はあんまりだろと思い、再測定したら0.4から0.5ぐらいでした。
あんまり当てにならない?

523_02.png


cpu使用率も25%ぐらいまで上がっていますね。

523_03.png




nginx 1.6.2 + lua-nginx-module



自作したLuaモジュールの結果はこちら。
ロードアペレージはほとんど上がりません。

523_04.png

cpu使用率は15%ぐらい。
csが2,500を超えない程度です。結構優秀かも。

523_05.png





nginx 拡張モジュール



これが一番低負荷だろうと期待していたのですが、ひどい有り様です。

523_06.png

523_07.png


しかも3回アクセスすると1回エラーになります。これ、バグってますね。
時間を見つけてデバッグしよう。


改めて、負荷テストは大事だなと思いました。



※2015/1/10追記

nginxモジュールのバグを修正しました。
再度テストした結果はこちら。

523_08.png

523_09.png

一番性能が良さそうです。
関連記事

テーマ:サーバ - ジャンル:コンピュータ

  1. 2014/12/23(火) 18:51:21|
  2. 備忘録
  3. | トラックバック:0
  4. | コメント:0
  5. | 編集
次のページ