`
CharlesCui
  • 浏览: 427360 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Nginx和Apache简单的并发压力测试

阅读更多

同样的环境,大小差不了几个字节的页面,

Nginx的worker_connections  1024;

Apache的MaxClients          150,worker模式;


照理说压Nginx如果用1024个并发压效果是最好的,同样压apache并发150的话效果也是最好的。


Nginx的测试结果:

[root@localhost nginx-0.7.19]# ab -t 60 -c 1024 http://192.168.1.101:8080/ 
This is ApacheBench, Version 2.0.40-dev <$Revision: 1.116 $> apache-2.0 Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/ Copyright (c) 1998-2002 The Apache Software Foundation, http://www.apache.org/ Benchmarking 192.168.1.101 (be patient) Completed 5000 requests Completed 10000 requests Completed 15000 requests Completed 20000 requests Completed 25000 requests Completed 30000 requests Completed 35000 requests Completed 40000 requests Completed 45000 requests Finished 50000 requests Server Software: nginx/0.7.19 Server Hostname: 192.168.1.101 Server Port: 8080 Document Path: / Document Length: 151 bytes Concurrency Level: 1024 Time taken for tests: 28.791802 seconds Complete requests: 50000 Failed requests: 0 Write errors: 0 Total transferred: 18100000 bytes HTML transferred: 7550000 bytes Requests per second: 1736.61 [#/sec] (mean) Time per request: 589.656 [ms] (mean) Time per request: 0.576 [ms] (mean, across all concurrent requests) Transfer rate: 613.89 [Kbytes/sec] received Connection Times (ms) min mean[+/-sd] median max Connect: 0 0 19.0 0 2998 Processing: 33 531 448.3 458 3452 Waiting: 10 298 457.2 237 3415 Total: 33 531 448.7 458 3452 Percentage of the requests served within a certain time (ms) 50% 458 66% 466 75% 478 80% 483 90% 502 95% 599 98% 3409 99% 3428 100% 3452 (longest request)






Nginx5000个请求只花费了28秒就搞定。


Apache的测试结果:

[root@localhost nginx-0.7.19]# ab -t 60 -c 150 http://192.168.1.101/ 
This is ApacheBench, Version 2.0.40-dev <$Revision: 1.116 $> apache-2.0 Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/ Copyright (c) 1998-2002 The Apache Software Foundation, http://www.apache.org/ Benchmarking 192.168.1.101 (be patient) Completed 5000 requests Completed 10000 requests Completed 15000 requests Completed 20000 requests Completed 25000 requests Completed 30000 requests Completed 35000 requests Finished 39842 requests Server Software: Apache/2.2.10 Server Hostname: 192.168.1.101 Server Port: 80 Document Path: / Document Length: 44 bytes Concurrency Level: 150 Time taken for tests: 60.74169 seconds Complete requests: 39842 Failed requests: 0 Write errors: 0 Total transferred: 11953500 bytes HTML transferred: 1753180 bytes Requests per second: 663.21 [#/sec] (mean) Time per request: 226.172 [ms] (mean) Time per request: 1.508 [ms] (mean, across all concurrent requests) Transfer rate: 194.31 [Kbytes/sec] received Connection Times (ms) min mean[+/-sd] median max Connect: 0 0 47.5 0 3000 Processing: 62 223 696.2 111 12013 Waiting: 0 156 605.3 58 9025 Total: 62 224 701.2 111 12013 Percentage of the requests served within a certain time (ms) 50% 111 66% 119 75% 125 80% 129 90% 159 95% 191 98% 3011 99% 3017 100% 12013 (longest request)





Apache一分钟只搞定了4000个请求。


再试试,Nginx的并发150时候的速度:

[root@localhost nginx-0.7.19]# ab -t 60 -c 150 http://192.168.1.101:8080/ 
This is ApacheBench, Version 2.0.40-dev <$Revision: 1.116 $> apache-2.0 Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/ Copyright (c) 1998-2002 The Apache Software Foundation, http://www.apache.org/ Benchmarking 192.168.1.101 (be patient) Completed 5000 requests Completed 10000 requests Completed 15000 requests Completed 20000 requests Completed 25000 requests Completed 30000 requests Completed 35000 requests Completed 40000 requests Completed 45000 requests Finished 50000 requests Server Software: nginx/0.7.19 Server Hostname: 192.168.1.101 Server Port: 8080 Document Path: / Document Length: 151 bytes Concurrency Level: 150 Time taken for tests: 27.603372 seconds Complete requests: 50000 Failed requests: 0 Write errors: 0 Total transferred: 18100000 bytes HTML transferred: 7550000 bytes Requests per second: 1811.37 [#/sec] (mean) Time per request: 82.810 [ms] (mean) Time per request: 0.552 [ms] (mean, across all concurrent requests) Transfer rate: 640.32 [Kbytes/sec] received Connection Times (ms) min mean[+/-sd] median max Connect: 0 0 19.0 0 2998 Processing: 3 81 222.2 63 3066 Waiting: 0 47 216.0 31 3021 Total: 3 81 223.0 63 3066 Percentage of the requests served within a certain time (ms) 50% 63 66% 64 75% 65 80% 66 90% 70 95% 75 98% 86 99% 91 100% 3066 (longest request)




此次和上次Nginx1024个并发相比快了一秒钟,27秒搞定50000个请求


再试试,Apache的并发1024时候的速度:

我估计会被压死,先把帖子发出去,没压死再修改。。。

[root@localhost nginx-0.7.19]# ab -t 60 -c 1024 http://192.168.1.101/ 
This is ApacheBench, Version 2.0.40-dev <$Revision: 1.116 $> apache-2.0 Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/ Copyright (c) 1998-2002 The Apache Software Foundation, http://www.apache.org/ Benchmarking 192.168.1.101 (be patient) Finished 2737 requests Server Software: Apache/2.2.10 Server Hostname: 192.168.1.101 Server Port: 80 Document Path: / Document Length: 44 bytes Concurrency Level: 1024 Time taken for tests: 75.767759 seconds Complete requests: 2737 Failed requests: 0 Write errors: 0 Total transferred: 821100 bytes HTML transferred: 120428 bytes Requests per second: 36.12 [#/sec] (mean) Time per request: 28347.164 [ms] (mean) Time per request: 27.683 [ms] (mean, across all concurrent requests) Transfer rate: 10.57 [Kbytes/sec] received Connection Times (ms) min mean[+/-sd] median max Connect: 0 20 248.8 0 3002 Processing: 15158 20495 5117.8 18237 36418 Waiting: 23 9583 5978.2 9136 21205 Total: 15158 20516 5119.1 18238 39402 Percentage of the requests served within a certain time (ms) 50% 18238 66% 21138 75% 21187 80% 21197 90% 24196 95% 36319 98% 36415 99% 36417 100% 39402 (longest request)




居然没有死机! 结论:在我本机当前环境下,Nginx处理高并发小请求的速度要快于Apache。

 

分享到:
评论
8 楼 luliangy 2012-09-06  
哥,你什么配置,我10W个请求10秒左右就搞定了,毫无压力,RPS在1W左右
7 楼 CharlesCui 2008-12-05  
CharlesCui 写道

sdh5724 写道
拿Apache做压力测试都是没有理解Apache的精髓----稳定性第一, 性能第二. 2者使用完全不同的理念做的东西. 你理解我为什么那apache做压力测试么?


开始用nginx的时候大家都说它比apache快很多,所以纯跑一下http看谁处理短连接更快,没有关注apache是否比nginx更稳定。
现在用nginx在生产上的项目并不多,apache还是主流,就是因为apache的稳定大家都信任,而nginx还没经受过长时间的考验。

你说的没错,apache很稳定!
6 楼 CharlesCui 2008-12-05  
sdh5724 写道

拿Apache做压力测试都是没有理解Apache的精髓----稳定性第一, 性能第二. 2者使用完全不同的理念做的东西.

你理解我为什么那apache做压力测试么?
5 楼 sdh5724 2008-12-04  
拿Apache做压力测试都是没有理解Apache的精髓----稳定性第一, 性能第二. 2者使用完全不同的理念做的东西.
4 楼 CharlesCui 2008-12-01  
配置好的话就多弄出几个虚拟机。
3 楼 toeo 2008-11-30  
就这个多个服务器集群的问题。。就是很麻烦。。没有那么多电脑。。。公司有个台式机。。和自己的笔记本集群实验下。。。不知道如何。。哪里弄那么多电脑。。二手淘点。。
2 楼 CharlesCui 2008-10-21  
大请求怎么衡量?

改天我写个Rails+Sqlite3的应用测测看,就是从Sqlite3里面查10条记录出来吧,不带索引。

web服务器应该用一个mongrel还是用mongrel集群啊?我只有一台机器,而且是虚拟机。
1 楼 rihoonet 2008-10-20  
高并发大请求的情况呢,有测试过吗?

相关推荐

    nginx视频教程-nginx单机1W并发优化-反向代理实现nginx+apache动静分离

    20-ab压力测试及nginx性能统计模块.wmv 47.6MB 19-大访问量优化整体思路.wmv 51.1MB 18-第3方模块编译及一致性哈希应用.wmv 133.4MB 17-nginx连接memcached.wmv 78.7MB 16-nginx实现负载均衡.wmv 102.3MB 15-...

    实战Nginx取代Apache的高性能Web服务器_文字版

    通过以上这些知识点的学习和实践,你将能够熟练掌握Nginx的配置和管理,实现高效的Web服务,从而有效地取代Apache,满足高并发、高稳定性的业务需求。在实际工作中,结合具体的业务场景进行灵活调整,Nginx将成为你...

    LVS+keeplived+nginx+apache

    在介绍如何搭建高可用、高性能PHP集群的过程中,涉及的技术点和知识点主要围绕LVS、Keepalived、Nginx和Apache这几个组件展开。下文将详细阐述这些组件的作用以及如何将它们组合起来实现目标。 首先,LVS(Linux ...

    Nginx超过Apache10倍的配置方法

    文中对比了Nginx与Apache在同一负载下处理请求的能力,Nginx在每秒处理的请求数和系统负载方面都表现出优越性,表明在高并发场景下,Nginx具有更高的效率和稳定性。 总结来说,Nginx凭借其高效的事件驱动模型和对...

    配置Nginx前端Apache后端服务器

    Nginx以其高效的静态文件处理能力和良好的并发性能,常被用作前端服务器;而Apache则以其丰富的模块和强大的动态页面处理能力,作为后端服务器。本文将深入探讨如何配置Nginx前端和Apache后端的服务器,以及如何实现...

    nginx替代方案,nginx代替apache与jboss

    ### Nginx 作为 Apache 和 JBoss 的替代方案 #### 背景介绍 随着互联网技术的不断发展,网站流量的增长对服务器性能提出了更高要求。Apache 和 JBoss 是两种广泛使用的 Web 服务器和应用服务器,但在高并发场景下,...

    Nginx+Apache负载均衡

    - **测试**:启动所有 Tomcat 实例和 Nginx 服务,通过访问 Nginx 提供的 URL 来验证负载均衡效果。 #### 六、总结 - **高性能负载均衡**:Nginx+Apache 组合提供了一个高性能、低成本的负载均衡解决方案,能够...

    nginx+apache+mysql+php+memcached+squid搭建门户网站

    ### Nginx+Apache+MySQL+PHP+Memcached+Squid 搭建门户网站 #### 一、前言与架构概述 随着互联网技术的发展,...在实际部署过程中,还需根据具体需求对各个组件进行细致的调优和测试,确保整个系统的高效稳定运行。

    优化nginx大并发——轻松应对上万并发访问

    完成上述优化后,可以通过工具如ApacheBench(ab)进行压力测试,例如`ab -r -n 150000 -c 10000 http://192.168.1.198/msg.php`,模拟150000次请求,每次10000个并发,来验证优化效果。 需要注意的是,优化不仅仅...

    实战Nginx取代Apache的高性能Web服务器.rar

    《实战Nginx取代Apache的高性能Web服务器》一书,主要探讨了如何利用Nginx这一现代、高性能的Web服务器来替代传统的Apache服务器,以提升网站的运行效率和响应速度。Nginx以其异步非阻塞的I/O模型、模块化设计以及...

    apache与nginx安装使用

    以上就是关于Apache和Nginx的安装与简单配置介绍。具体使用时,还需要根据实际需求进行调整,并注意安全设置,例如SSL/TLS证书的配置、防火墙规则等。希望这些信息能帮助你搭建和管理自己的HTTP服务器。

    实战Nginx取代Apache的高性能Web服务器

    自2004年发布以来,Nginx以其高性能、稳定性、丰富的功能集、简单的配置和低资源消耗而受到越来越多的关注和采用。 那么在什么情况下会选择Nginx来取代Apache呢?主要的原因是性能上的考量。Nginx采用的是高度可...

    Nginx+Apache搭建前后端web生产环境

    在部署完成后,测试Nginx和Apache的配置是否正确,确保所有服务都能正常启动并响应请求。监控系统性能,根据实际情况进行调优,如调整Nginx的worker进程数、优化Apache的模块配置等。 总的来说,Nginx+Apache的组合...

    apache与nginx区别

    根据测试结果,Nginx能够轻松支持超过50,000个并发连接,而Apache在此方面的表现相对较弱。 - **资源占用**:Nginx由于其轻量级的设计,在内存占用方面远低于Apache。这意味着Nginx能够在有限的硬件资源下提供更好的...

    Nginx:取代apache的高性能服务器

    Nginx选择了epoll和kqueue作为网络I/O模型,在高连接并发的情况下,Nginx是Apache服务器不错的替代品,它能够支持高达50 000个并发连接数的响应,运行稳定,且内存、CPU等系统资源消耗非常低。, 本书主要分为4个部分...

    实战Nginx_取代Apache的高性能Web服务器_代码

    Nginx是一款高性能的Web服务器和反向代理服务器,它以其高效的并发处理能力、轻量级的进程模型以及丰富的模块支持而备受青睐。本实战教程将深入探讨如何使用Nginx取代Apache,以提升Web服务的性能。 1. **Nginx与...

    nginx优化 突破十万并发

    相比于Apache,Nginx使用了异步非阻塞的方式来处理请求,因此在处理静态文件和高并发连接时有着非常优秀的表现。 要让Nginx支持高并发,我们主要会从以下几个方面进行优化配置: 1. worker_processes配置项指定了...

Global site tag (gtag.js) - Google Analytics