`
lirig
  • 浏览: 235276 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Apache性能测试

    博客分类:
  • Jave
阅读更多

Apache性能测试

 

好久没有更新博客了,最近实在太忙,由于电脑配置比较好,一时冲动用ab测试了一把Apache。得出一些数据,希望对大家有帮助。

Ab是apache附带的组件非常易于使用,ab可以直接再web服务器上面使用,直接发送请求到apache上。测试的响应时间正是服务器的时间,不包括网络传输和本地用户cpu的时间。

 

测试参数:

 

apache:

Server version: Apache/2.2.15 (Unix)

linux:

Linux version 2.6.31.5-127.fc12.i686.PAE

cpu:

2010全新英特尔® 酷睿™ i5-520M 处理器(基本工作频率2.40GHz,最高工作频率2.93GHz, 2C/4T, 3MB L3缓存)

Memory:

4G

 

并发数为10时的测试结果

 

ab -n1000 -c10 http://127.0.0.1/

This is ApacheBench, Version 2.3 <$Revision: 655654 $>

Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/

Licensed to The Apache Software Foundation, http://www.apache.org/

 

Benchmarking 127.0.0.1 (be patient)

Completed 100 requests

Completed 200 requests

Completed 300 requests

Completed 400 requests

Completed 500 requests

Completed 600 requests

Completed 700 requests

Completed 800 requests

Completed 900 requests

Completed 1000 requests

Finished 1000 requests

 

Server Software:        Apache/2.2.15

Server Hostname:        127.0.0.1

Server Port:            80

 

Document Path:          /

Document Length:        44 bytes

 

Concurrency Level:      10

Time taken for tests:   0.253 seconds

Complete requests:      1000

Failed requests:        0

Write errors:           0

Total transferred:      295176 bytes

HTML transferred:       44176 bytes

Requests per second:    3957.39 [#/sec] (mean)

Time per request:       2.527 [ms] (mean)

Time per request:       0.253 [ms] (mean, across all concurrent requests)

Transfer rate:          1140.75 [Kbytes/sec] received

 

Connection Times (ms)

              min  mean[+/-sd] median   max

Connect:        0    1   0.4      1       3

Processing:     1    1   0.5      1       3

Waiting:        0    1   0.5      1       3

Total:          1    2   0.8      2       5

 

Percentage of the requests served within a certain time (ms)

  50%      2

  66%      3

  75%      3

  80%      3

  90%      3

  95%      4

  98%      4

  99%      4

 100%      5 (longest request)

 

对不同并发用户吞吐率测试结果

 

并发用户数

吞吐率(reqs/s)

请求等待时间(ms)

请求处理时间(ms)

1

4070.95

0.246

0.246

2

3434.99

0.582

0.291

5

4255.36

1.175

0.235

10

4836.95

2.435

0.243

20

8008.52

2.06

0.103

30

8297.79

3.979

0.133

50

8868.31

7.483

0.15

100

8373.04

9.998

0.1

150

4587.07

32.552

0.217

200

1262

158.479

0.792

500

389.62

1283.305

2.567

1000

329.42

3035.606

3.036

 

 测试结果分析

 

通过视图可以看出,随着并发数的不断增加,服务器的吞吐量开始不段升高,到达50时吞吐量最高,并发数大于50后吞吐量不断下降,当大于100时吞吐量急极下降。

 



 通过视图可以看到服务器平均请求处理时间随着并发数的增加的变化在并发数150之前请求时间变化不大,当并发数大于150后处理时间不断升高,后面就越来越慢。



       

通过上图可以看出用户请求等待时间随着并发数的增加的变化情况,并发在150之前等待时间变化不大,当大于150后时间不断升高。

 

从上面分析情况可以看出,在我本机测试时当用户并发数达到100以上情况将不太理想,不过不同的硬件配置会有不同的结果。

      

总结

不同场景下面可以测试结果不一样,不过曲线图走势一样。

Apache虽然是非常成熟的WEB服务器,后面可以考虑使用其他web服务器

lighttpd,nginx可以能是比较好的代替品,到时我会再用数据分析下。

 

 

 

4
2
分享到:
评论
4 楼 lirig 2010-06-07  
darkelf9 写道
apache默认的进程数最大值是150
你把这个参数调高以后结论应该不同

测试之前最好对服务器的配置有一些基本了解

修改后反而变得更加不理想:

Requests per second:    441.26 [#/sec] (mean)
Time per request:       339.936 [ms] (mean)
Time per request:       2.266 [ms] (mean, across all concurrent requests)
3 楼 lirig 2010-06-07  
tiger888 写道
单机测试到150并发有意义吗,如果是windows,五六十以后就没有意义了。

在单机测试还是非常有用的,测试nginx性能就非常好,性能肯定和硬件环境有莫大关系,不过在同一个环境下面,可以比较同类的软件。
2 楼 darkelf9 2010-06-06  
apache默认的进程数最大值是150
你把这个参数调高以后结论应该不同

测试之前最好对服务器的配置有一些基本了解
1 楼 tiger888 2010-06-06  
单机测试到150并发有意义吗,如果是windows,五六十以后就没有意义了。

相关推荐

Global site tag (gtag.js) - Google Analytics