天天看點

性能測試工具curl-loader(linux)

curl-loader介紹

      curl-loader(也被稱為“omes-NIK”和“davilka”)是一個開源的C語言編寫的工具,模拟應用負載和成千上萬的幾十萬人的HTTP / HTTPS和FTP/ FTPS的用戶端應用程式的行為,每個有其自己的源IP位址。相反,其他curl-loader使用真正的C編寫的用戶端協定棧,即libcurl和TLS/ openssl的SSL的HTTP和FTP協定棧,支援登入和驗證口味和模拟使用者行為的工具。  

    是以,體積雖小,但不要小看他的能力哦!^_^  curl-loader 性能測試工具在初做測試時就有聽過,但由于它的運作環境是linux系統,是以,一直沒下載下傳使用,現在剛好可以趁着學linux的機會把玩一下。

------------------------------------------------------------------------------------------------

-       運作環境:centOS 4.8                                     -

-   下載下傳位址: 

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

         -

-   官方配置文檔: 

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

                 -

安裝步驟:

[root@youname test]# tar jxvf curl-loader-0.56.rar.bz2     解壓檔案

解壓之後

[root@youname test]# cd curl-loader-0.56      進入目錄

[root@youname  curl-loader-0.56 ]# vi QUICK-START     打開快還入門文檔

其中有如下提示:

性能測試工具curl-loader(linux)

.............      
Build it using general C development environment with bash,
gcc (3 or 4 series), make, etc on a linux machine.

Building pre-requirements are:
1. openssl binaries;
2. openssl development package with include files (on debian package libssl-dev)      
............      
性能測試工具curl-loader(linux)

如果有你的linux系統有gcc和openssl環境的話,下面内容可以跳過,沒有的話跟我來安裝。   

--------------------安裝gcc----------------------------------------------------------------------------

 首先,要求我們運作必須有gcc 環境:

    方法一  

    如果你的是redhat/centos版本的linux,可以運作下面指令進行下載下傳安裝

     [root@youname test]# yum install gcc gcc-c++   下載下傳安裝C編譯器

方法二       
rpm安裝如果安裝系統盤有,可以将安裝CD光牒插入,運作下面指令(虛拟機請參考插入安裝檔案的方式):      
[root@youname test]# rpm -ivh gcc*      

 ----------------------------安裝 openssl------------------------------------------------------------------------------------

 其次,要求我們運作需要安裝openssl 包

   [root@youname curl-loader-0.56]# rpm -qa | grep ssl  檢視自己是否安裝了openssl服務。

   方法一

   下載下傳相應的服務并安裝(方法繁瑣,這裡給連結)  

   下載下傳:

http://download.chinaunix.net/download/0001000/11.shtml

   安裝方式 :

http://myswirl.blog.163.com/blog/static/513186422007101410149578/

   方法二  

   上面方式比較麻煩,最簡單的方式就DVD/CD方式将系統盤插入,然後在系統盤/centOS/RPMS/目錄中找到:

   openssl-0.9.7a-43.17.el4_7.2.rpm

   openssl-devel-0.9.7a-43.17.el4_7.2.rpm

  兩rpm包,雙點選安裝重新開機就OK了。

     當然,也可以參照安裝gcc的方法二通過指令安裝

[root@youname test]# rpm -ivh  [檔案名]      

 -------------------------------------------------------------------------------------------------------------------------------------------------

前提環境滿足後,下面一個指令就開始安裝了。

[root@youname test]# make          自動編譯

編譯完成後curl-loader可執行程式,curl-loader 為我們提供了一些例了,我們先看一下例子中如何配置性能選項

[root@youname curl-loader-0.56]# cd  conf-examples/         打例子目錄  

[root@youname conf-examples]# cp 10K.conf  mysimp.conf     将10K.conf檔案拷貝到目前目錄下并命名為mysimp.conf

[root@youname conf-examples]# vi mysimp.conf    打開編輯mysimp.conf檔案

性能測試工具curl-loader(linux)
########### GENERAL SECTION ################################
BATCH_NAME= 10K //測試對象的名稱
CLIENTS_NUM_MAX=10000 //最大虛拟使用者數
CLIENTS_NUM_START=100 //一開始啟動使用者數   
CLIENTS_RAMPUP_INC=50 //每秒鐘啟動幾個使用者
INTERFACE =eth0 //使用的網卡eth0
NETMASK=16 //子網路遮罩位數
IP_ADDR_MIN= 192.168.1.1 //起始IP位址
IP_ADDR_MAX= 192.168.53.255 #Actually - this is for self-control //最後的IP位址範圍
CYCLES_NUM= -1 // -1 表示無限循環
URLS_NUM= 1 

########### 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      
性能測試工具curl-loader(linux)

對上面的内容配置完成後儲存退出

進行性能測試

執行下面一條指令就開始運作我們的性能測試了

[root@youname curl-loader-0.56]#  curl-loader  -f  ./conf-examples/mysimp.conf

性能測試工具curl-loader(linux)

運作測試的過程中,上面的資訊會不斷的更新(重新整理)中。環境終于跑通了。後面會詳細學一下curl-loader的具體使用。