测试了linux下的几种压力测试工具,发现有些不支持https,先简单总结如下:
  一、apache的ab工具
  /home/webadm/bin/ab -c 50 -n 10000 https://2hei.net/mt/index.html
  SSL not compiled in; no https support
  看样子是说SSL没有编译进来,所以不支持https
  二、apache的flood工具
  http://httpd.apache.org/test/flood/
  wget http://www.apache.org/dist/httpd/flood/flood-0.4.tar.gz
  如果要支持https的话,需要添加如下的编译参数:–with-apr –with-apr-util –enable-ssl
  具体代码也可以从svn获取。
  不过我在编译的时候遇到一些问题,apr-util包在make的时候总是报错!
  三、web-bench工具
  http://freshmeat.net/projects/web-bench/
  ./webbench -c 20 -t 10 https://2hei.net/mt/index.html
  Webbench – Simple Web Benchmark 1.5
  Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
  Only HTTP protocol is directly supported, set –proxy for others.
  明确提示了提示不支持https哦!
  四、http_load工具,曾经的爱,http测试的结果还很令人满意。
  http://acme.com/software/http_load/
  ./http_load -rate 5 -seconds 10 urls
  ./http_load: unknown protocol – https://2hei.net/mt/index.html
  吼吼,看来之前常用的http_load也不支持https
  五、siege工具
  http://www.joedog.org/index/siege-home
  编译使之支持https
  ./configure –prefix=/home/2hei.net/siege –with-ssl=/usr/include/openssl
  基本用法:
./siege
SIEGE 2.69
Usage: siege [options]
siege [options] URL
siege -g URL
Options:
-V, –version           VERSION, prints version number to screen.
-h, –help              HELP, prints this section.
-C, –config            CONFIGURATION, show the current configuration.
-v, –verbose           VERBOSE, prints notification to screen.
-g, –get               GET, pull down headers from the server and display HTTP
transaction. Great for web application debugging.
-c, –concurrent=NUM    CONCURRENT users, default is 10
-u, –url=”URL”         Deprecated. Set URL as the last argument.
-i, –internet          INTERNET user simulation, hits the URLs randomly.
-b, –benchmark         BENCHMARK, signifies no delay for time testing.
-t, –time=NUMm         TIME based testing where “m” is the modifier S, M, or H
no space between NUM and “m”, ex: –time=1H, one hour test.
-r, –reps=NUM          REPS, number of times to run the test, default is 25
-f, –file=FILE         FILE, change the configuration file to file.
-R, –rc=FILE           RC, change the siegerc file to file.  Overrides
the SIEGERC environmental variable.
-l, –log               LOG, logs the transaction to PREFIX/var/siege.log
-m, –mark=”text”       MARK, mark the log file with a string separator.
-d, –delay=NUM         Time DELAY, random delay between 1 and num designed
to simulate human activity. Default value is 3
-H, –header=”text”     Add a header to request (can be many)
-A, –user-agent=”text” Sets User-Agent in request
siege -c 20 -r 2 -f url
-c 20 并发20个用户
-r 2 重复循环2次
-f url 任务列表:URL列表
  结论相当凑合,纵欲找到可以支持https压力测试的工具了。