`

nginx网站性能优化和测试1

 
阅读更多

内容摘要 ab的全称是ApacheBench,是 Apache 附带的一个小工具,专门用于 HTTP Server 的benchmark testing,可以同时模拟多个并发请求。前段时间看到公司的开发人员也在用它作一些测试,看起来也不错,很简单,也很容易使用

引子

按照原定计划,今天开始研究 JMeter ,一天的时间看完了大半的 User Manual ,发现原来只要沉住气,学习效率还是蛮高的,而且大堆的英文文档也没有那么可怕 ^_^

本来想顺便把文档翻译一下,不过后来想了想,看懂是一回事,全部翻译出来又是另外一回事了,工作量太大,而且这也不是我一开始要研究 JMeter 的本意。不如大家有兴趣一起研究的遇到问题再一起讨论吧。

开源工具通常都是为了某个特定的目的而开发出来的,所以如果想找到一个开源的性能测试工具去与 LoadRunner 或者 QALoad 之类去比较,实在有些勉强。但是开源工具也有它自己的优势:小巧、轻便,在自己擅长的领域可以提供优秀的解决方案。所以,我们可以考虑准备一个自己的“开源测试工具箱”,平时利用空闲时间了解各种工具所适用的环境和目的,知识慢慢积累下来以后,就可以在遇到问题时顺手拈来 轻松化解 ^_^

另外,如果 8 月份和 9 月份的空闲时间足够多,我想我会写一个系列文章来讲述在实际的开发和测试过程中引入开源性能测试工具的情况。如果有朋友感兴趣,希望大家可以一起研究和讨论。

简介

ab 的全称是 ApacheBench Apache 附带的一个小工具 专门用于 HTTP Server benchmark testing 可以同时模拟多个并发请求。前段时间看到公司的开发人员也在用它作一些测试,看起来也不错,很简单,也很容易使用,所以今天花一点时间看了一下。

通过下面的一个简单的例子和注释,相信大家可以更容易理解这个工具的使用。

一个简单的例子

/* 在这个例子的一开始,我执行了这样一个命令 ab -n 10 -c 10 http://www.google.com/ 这个命令的意思是启动 ab ,向 www.google.com 发送10个请求(-n 10)   ,并每次发送10个请求 (-c 10)——也就是说一次都发过去了 。跟着下面的是 ab 输出的测试报告,红色部分是我添加的注释。 */

C:\Program Files\Apache Software Foundation\Apache2.2\bin>ab -n 10 -c 10 http

://www.google.com/

This is ApacheBench, Version 2.0.40-dev <$Revision: 1.146 $> apache-2.0

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

Copyright 1997-2005 The Apache Software Foundation, http://www.apache.org/

 

Benchmarking www.google.com (be patient).....done

 

 

Server Software:        GWS/2.1

Server Hostname:        www.google.com

Server Port:            80

 

Document Path:          /

Document Length:        230 bytes

 

Concurrency Level:      10

/* 整个测试持续的时间 */

Time taken for tests:   3.234651 seconds

/* 完成的请求数量 */

Complete requests:      10

/* 失败的请求数量 */

Failed requests:        0

Write errors:           0

Non-2xx responses:      10

Keep-Alive requests:    10

/* 整个场景中的网络传输量 */

Total transferred:      6020 bytes

/* 整个场景中的 HTML 内容传输量 */

HTML transferred:       2300 bytes

/* 大家最关心的指标之一,相当于 LR 中的 每秒事务数 ,后面括号中的 mean 表示这是一个平均值 */

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

/* 大家最关心的指标之二,相当于 LR 中的 平均事务响应时间 ,后面括号中的 mean 表示这是一个平均值 */

Time per request:       3234.651 [ms] (mean)

/* 这个还不知道是什么意思,有知道的朋友请留言,谢谢 ^_^ */

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

/* 平均每秒网络上的流量,可以帮助排除是否存在网络流量过大导致响应时间延长的问题 */

Transfer rate:          1.55 [Kbytes/sec] received

/* 网络上消耗的时间的分解,各项数据的具体算法还不是很清楚 */

Connection Times (ms)

              min  mean[+/-sd] median   max

Connect:       20  318 926.1     30    2954

Processing:    40 2160 1462.0   3034    3154

Waiting:       40 2160 1462.0   3034    3154

Total:         60 2479 1276.4   3064    3184

 

/* 下面的内容为整个场景中所有请求的响应情况。在场景中每个请求都有一个响应时间,其中 50 的用户响应时间小于 3064 毫秒, 60 的用户响应时间小于 3094 毫秒,最大的响应时间小于 3184 毫秒 */

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

  50%   3064

  66%   3094

  75%   3124

  80%   3154

  90%   3184

  95%   3184

  98%   3184

  99%   3184

  100%   3184 (longest request)



转载自:

版权声明 :本文可以被转载,但是在未经本人许可前,不得用于任何商业用途或其他以盈利为目的的用途。本人保留对本文的一切权利。如需转载,请在转载是保留此版权声明,并保证本文的完整性。也请转贴者理解创作的辛劳,尊重作者的劳动成果。

作者:陈雷 (Jackei)

邮箱: jackeichan@gmail.com

Blog:http://jackei.cnblogs.com

分享到:
评论

相关推荐

    nginx性能测试与优化1

    【Nginx性能测试与优化】是针对Nginx服务器进行性能评估和调优的过程,以便提高其处理HTTP请求的能力和资源利用率。本篇主要涉及了两个测试工具——ab和wrk,以及如何在CentOS7上编译安装Nginx 1.16.1稳定版,并使用...

    nginx优化详细优化参数

    #### 三、Nginx性能优化 ##### 3.1 调整工作进程数 根据服务器CPU核心数量来设置`worker_processes`,通常设置为等于或小于CPU核心数。 **配置示例**: ```nginx worker_processes auto; # 自动根据CPU核心数调整 `...

    nginx+tomcat测试报告.doc

    Nginx+Tomcat架构测试报告 1. 测试目的 本次测试的主要目的是评估单个Tomcat服务器与Nginx反向代理结合后的性能表现,...此外,还可以研究其他性能优化手段,如使用更高效的缓存策略、调整Nginx和Tomcat的缓存配置等。

    nginx 配置及优化

    **Nginx配置与优化详解** Nginx是一款高性能的HTTP和反向代理服务器...实际操作中,还需要根据具体业务场景进行调整,不断测试和优化以达到最佳性能。记得随时查看官方文档和社区分享,获取最新的配置技巧和最佳实践。

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

    Nginx作为一款广泛应用的反向代理和负载均衡服务器,其高效的性能和低资源消耗使其成为处理高并发场景的首选。本文将详细探讨如何通过系统层面和Nginx配置层面的优化,使Nginx能够轻松应对上万甚至十万级别的并发...

    基于Redis缓存数据库和Nginx负载均衡技术的购物网站性能优化.docx

    【基于Redis缓存数据库和Nginx负载均衡技术的购物网站性能优化】 随着互联网的快速发展,电子商务已经成为人们日常生活的重要组成部分。购物网站的性能优化对于提供流畅的用户体验和支撑大规模并发访问至关重要。本...

    Nginx和Varnish优化补充

    Nginx和Varnish是当前流行的高性能Web服务器和反向代理服务器,经常用于缓存和负载均衡。针对这两个技术的优化补充知识点,主要围绕提升服务器性能、处理静态内容的能力以及如何正确配置以应对后端服务变更。 首先...

    nginx1.18 nginx1.18 nginx1.18

    - **模块更新**:与第三方模块的兼容性改进,例如模块的性能优化或新功能添加。 安装和配置 Nginx 1.18 在 Linux 系统上通常涉及以下步骤: 1. **下载**:从 Nginx 官方网站或通过包管理器(如 apt-get 或 yum)...

    Nginx高性能WEB服务器系列(超级详细)

    Nginx 日志记录了服务器的所有访问记录,对其进行分析可以帮助优化性能和解决安全问题。 - **日志格式**:通过 `access_log` 指令配置日志格式。 - **日志分析工具**:使用如 AWK、Sed、Logstash 等工具进行日志...

    性能测试诊断分析与优化

    Web服务器如Apache或Nginx的性能可以通过监控响应时间、并发连接数、CPU和内存使用情况来评估。应用服务器如Tomcat或Jboss的性能指标包括线程池状态、内存泄漏、错误日志等。数据库性能优化则涉及SQL查询效率、索引...

    大型网站性能优化实战从前端网络CDN到后端大促的全链路性能优化

    在构建和运营大型网站时,性能优化是至关重要的,它直接影响到用户体验、网站的可扩展性和业务的成功。本文将深入探讨从前端网络CDN到后端大促的全链路性能优化策略,以提高网站的加载速度、响应时间和整体效率。 ...

    nginx日志测试使用 access.log.zip

    总之,`access.log`是Nginx服务器的重要组成部分,它提供了宝贵的服务器运行数据,通过有效的日志分析,我们可以更好地理解用户行为,优化网站性能,以及确保系统的稳定性和安全性。`access.log.zip`压缩文件的解压...

    nginx-php配置测试通过

    对于性能优化,可以调整Nginx和PHP-FPM的配置,例如设置合适的缓存大小、调整工作进程数量等。 总结,Nginx与PHP的整合对于搭建高效、稳定的动态网站环境至关重要。通过合理配置Nginx和PHP-FPM,以及针对特定框架如...

    keepalive nginx及面试题压力测试视频.zip

    在IT行业中,网络服务器的高可用性和性能优化是至关重要的,而`keepalive`和`nginx`正是两个关键的工具,用于实现这一目标。在这个名为"keepalive nginx及面试题压力测试视频.zip"的压缩包文件中,包含了关于这两个...

    nginx配置优化

    **Nginx配置优化**是提高Web服务器性能的关键步骤,特别是在处理高并发访问、静态资源分发和反向代理等场景下。Nginx以其轻量级、高性能和稳定性著称,通过合理的配置,可以有效地减少响应时间,提高系统整体效率。 ...

    linux-本说明介绍了如何提高Nginx的性能安全性和其他重要事项

    1. **性能优化** - **配置优化**:调整Nginx配置文件,例如增大worker_processes数量,根据硬件资源设定合适的worker_connections,以及开启或关闭不必要的模块。 - **缓存策略**:启用HTTP缓存,设置合理的缓存...

    nginx测试代码

    本资源包“nginx测试代码”提供了7个Nginx的代码示例,旨在帮助初学者更好地理解和掌握Nginx的配置及使用。 1. **Nginx的基本架构**: Nginx采用事件驱动模型,非阻塞I/O,使其在处理高并发请求时表现出色。它的...

    Nginx的基本配置与优化

    #### 三、Nginx性能优化 为了提高Nginx的性能和效率,可以通过以下几种方式进行优化: 1. **调整worker_processes和worker_connections**: 根据服务器的实际硬件配置进行调整,以达到最佳的并发处理能力。 2. **...

Global site tag (gtag.js) - Google Analytics