关于Apache,Nginx 的一些测试

1,在用AB(apache benchmark) 对apache进行测试的时候,可以得到明显的结论html网页的请求和打开速度是php网页的N 倍。原因就不多说了,php的程序结构和数据库设计影响了页面的执行响应时间。

因此对于很多网站来说,如果对于页面有较高的要求的话还是静态化比较适合,注意是真的静态化。

 

2,服务器上虽然安装了nginx,但是对于Nginx  能提升性能到什么地步,真的没有一个概念,使用IE同时访问apache和nginx 对应的相同代码的网站,多次对比测试,感觉不到任何明显的不同; 但是在用AB 进行静态文件的对比测试的时候,就发觉了比较大的不同:

 

2.1 ab 对于apache的测试

 

 ab -n 200000 -c 20 -k http://test.xxx.com/index.html

 

测试结果:

 

Concurrency Level:      20
Time taken for tests:   14.340333 seconds
Complete requests:      200000
Failed requests:        0
Write errors:           0
Non-2xx responses:      200014
Keep-Alive requests:    198030
Total transferred:      101118390 bytes
HTML transferred:       58004060 bytes
Requests per second:    13946.68 [#/sec] (mean)
Time per request:       1.434 [ms] (mean)
Time per request:       0.072 [ms] (mean, across all concurrent requests)
Transfer rate:          6886.03 [Kbytes/sec] received

2.2 ab 对于nginx的测试

 ab -n 200000 -c 20 -k http://test.xxx.com:8081/index.html

 


Concurrency Level:      20
Time taken for tests:   7.399364 seconds
Complete requests:      200000
Failed requests:        0
Write errors:           0
Non-2xx responses:      200004
Keep-Alive requests:    198010
Total transferred:      761605282 bytes
HTML transferred:       730414608 bytes
Requests per second:    27029.35 [#/sec] (mean)
Time per request:       0.740 [ms] (mean)
Time per request:       0.037 [ms] (mean, across all concurrent requests)
Transfer rate:          100516.07 [Kbytes/sec] received

 

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

对于静态文件来说,nginx性能提升了一倍。而且多次测试发现apache会出现性能下降的现象。而nginx基本不出现这一问题。

 

而对于动态文件的测试发觉Nginx 并不明显,推测可能是因为数据库的调用存在瓶颈,所以导致了不明显,而且就算是nginx中使用的是fastcgi模式,也没有传说中的那么牛X,而关键问题还是出现在数据库瓶颈和程序设计上

 

而且从进程数量上来说nginx 也比httpd 少很多,资源占用情况暂时未对比。httpd 在大量请求错误发生后会存在大量的垃圾进程。

 

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

初步结论是:

1,改善程序结构和数据库设计;减少数据库瓶颈

2,如果是file 或者图片模式的服务器用nginx最好(没有试过lighthttpd),而程序服务器从稳健的角度来讲还是用apache比较合适。

3,对于很多人来说php是一门很快的语言,但是实际上在结构上如果设计混乱的话,PHP反而是最差劲的语言。而面向对象的机理可以从结构上减少这种混乱!

4,一台好的服务器可以提升至少1倍的性能(这个好是指同等价位但是相差2-3年左右的配置),这个结论基于静态文件!

 

 

 

补充测试了一下:

 

利用ab 对某php文件(apache),里面只有phpinfo函数进行了测试,得出的结论是 每秒能完成2000次左右的页面请求。所以如果有人要忽悠你的话,你就懂了!!!

在较差的服务器上 apache只能 完成500/s 次的请求。而nginx 居然可以完成大约1200 次左右的请求。提升了一倍。

但是值得注意的是在对nginx 模式进行大量测试的时候会出现php-cgi 崩溃的问题。暂时不知道是什么原因。也没有去分析。独立Apache下暂时没有这一问题

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值