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 打開快還入門文檔
其中有如下提示:
............. 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) ............
如果有你的linux系統有gcc和openssl環境的話,下面內容可以跳過,沒有的話跟我來安裝。
--------------------安裝gcc----------------------------------------------------------------------------
首先,要求我們運行必須有gcc 環境:
方法一 如果你的是redhat/centos版本的linux ,可以運行下面命令進行下載安裝 [root@youname test]# yum install gcc gcc-c++ 下載安裝C編譯器
方法二 rpm安裝如果安裝系統盤有,可以將安裝光盤插入,運行下面命令(虛擬機請參考插入安裝文件 的方式):[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文件
########### 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
對上面的內容配置完成後保存退出
進行性能測試
執行下面一條命令就開始 運行我們的性能測試了
[root@youname curl-loader-0.56]# curl-loader -f ./conf- examples/mysimp.conf
運行測試的過程中,上面的信息會不斷的更新(刷新)中。環境終於跑通了。後面會詳細學一下curl-loader的具體使用。