「Curl-loader」の編集履歴(バックアップ)一覧に戻る

Curl-loader - (2010/08/01 (日) 09:13:53) のソース

CurlLoaderは、cURLライブラリを使用した、負荷テストツールです。
HTTP(S)またはFTP(S)のクライアントとして動作します。
特徴として、複数のIPアドレスを使って、別々のクライアントから要求が来る状況を擬似的に再現できます。

 http://curl-loader.sourceforge.net/

**ダウンロード
 http://sourceforge.net/projects/curl-loader/files/

**インストール(Linuxでの手順です。)
+事前に「openssl」、「libssl-dev」をインストールして置くこと。
+ダウンロードしたファイルを展開し、展開したディレクトリ内にcdして、makeコマンドを実行。
+次に sudo make install するとmanと共にインストールされる。
  $ sudo make install 
  mkdir -p /usr/bin 
  mkdir -p /usr/share/man/man1
  mkdir -p /usr/share/man/man5
  mkdir -p /usr/share/doc/curl-loader/
  cp -f curl-loader /usr/bin
  cp -f doc/curl-loader.1 /usr/share/man/man1/  
  cp -f doc/curl-loader-config.5 /usr/share/man/man5/
  cp -f doc/* /usr/share/doc/curl-loader/ 
  cp -rf conf-examples /usr/share/doc/curl-loader/

**使い方
 コマンドの書式は以下のとおり。
   curl-loader -f configfile [options]

 どのような負荷をかけるかをconfigfileに設定する。configfileの設定内容については、「man cule-loader-config」を見るとよい。
 その後ろのoptionsの設定内容は、「man curl-loader」を見るとよい。
 なお、以下にも書いてある。
  http://curl-loader.sourceforge.net/doc/faq.html

 インストールディレクトリにあるconf-examplesディレクトリに、configfileのサンプルがある。
 例えば、10k.confは以下のようになっている。
 $ cat 10K.conf
 ########### GENERAL SECTION ################################
 BATCH_NAME= 10K          <-- 実行時に作成されるファイルにつく名前(なんでもよい)
 CLIENTS_NUM_MAX=10000      <-- クライアント数の最大値
 CLIENTS_NUM_START=100       <-- 最初に起動するるクライアント数
 CLIENTS_RAMPUP_INC=50       <-- 1秒毎に追加起動されるクライアント数
 INTERFACE=eth0           <-- 使用インターフェース
 NETMASK=16             <-- ネットマスク、CIDR形式でも255.255.255.0のような形式でも指定可能。
 IP_ADDR_MIN= 192.168.1.1      <-- クライアントIPアドレス最小値
 IP_ADDR_MAX= 192.168.53.255    <-- クライアントIPアドレス最大値
                      各クライアントは、最小値から最大値の範囲でIPアドレスが割り当てられる。
 CYCLES_NUM= -1           <-- 最大クライアント数分起動して要求が完了するまでを1回として、その繰り返し数。
                      -1は無限(Ctrl+cで止める)。
 URLS_NUM= 1             <-- リクエスト先のURLの最大数。この数分URL SECTIONが作成される。
 
 ########### URL SECTION ####################################
 
 URL=http://localhost/index.html    <-- リクエスト先URL
 #URL=http://localhost/ACE-INSTALL.html
 URL_SHORT_NAME="local-index"      <-- 画面
 REQUEST_TYPE=GET
 TIMER_URL_COMPLETION = 5000      # In msec. When positive, Now it is enforced by cancelling url fetch on timeout
 TIMER_AFTER_URL_SLEEP =20