硬件配置

型号

# dmidecode | grep "Product Name"

Product Name: VMware Virtual Platform
Product Name: 440BX Desktop Reference Platform

CPU

# cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq

 Intel(R) Xeon(R) CPU E5- v4 @ .00GHz

内存

# dmidecode|grep -P -A5 "Memory\s+Device" | grep Size |grep -v Range | cat -n

           Size:  MB
Size: MB

软件环境

操作系统

# cat /etc/redhat-release

CentOS Linux release 7.2. (Core)

服务版本

# /usr/local/openresty/nginx/sbin/nginx -v

nginx version: openresty/1.11.2.4

测试软件

# ab -V

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

并发测试

说明:测试基于Linux系统。

1000并发

测试1000并发,处理10000请求:

# ab -c 1000 -n 10000 http://10.27.88.50/index.html

Benchmarking 10.27.88.50 (be patient)
Completed requests
Completed requests
Completed requests
Completed requests
Completed requests
Completed requests
Completed requests
Completed requests
Completed requests
Completed requests
Finished requests Server Software: openresty/1.11.2.4
Server Hostname: 10.27.88.50
Server Port: Document Path: /index.html
Document Length: bytes
Concurrency Level:
Time taken for tests: 0.874 seconds
Complete requests:
Failed requests:
Write errors:
Total transferred: bytes
HTML transferred: bytes
Requests per second: 11437.38 [#/sec] (mean)
Time per request: 87.433 [ms] (mean)
Time per request: 0.087 [ms] (mean, across all concurrent requests)
Transfer rate: 9505.09 [Kbytes/sec] received Connection Times (ms) min mean[+/-sd] median max
Connect: 5.9
Processing: 27.8
Waiting: 27.7
Total: 29.9 Percentage of the requests served within a certain time (ms)
%
%
%
%
%
%
%
%
% (longest request)

2000并发

测试2000并发,处理50000请求:

# ab -c 2000 -n 50000 http://10.27.88.50/index.html

Benchmarking 10.27.88.50 (be patient)
Completed requests
Completed requests
Completed requests
Completed requests
Completed requests
Completed requests
Completed requests
Completed requests
Completed requests
Completed requests
Finished requests Server Software: openresty/1.11.2.4
Server Hostname: 10.27.88.50
Server Port: Document Path: /index.html
Document Length: bytes Concurrency Level:
Time taken for tests: 2.689 seconds
Complete requests: Failed requests:
(Connect: , Receive: , Length: , Exceptions: ) Write errors:
Non-2xx responses:
Total transferred: bytes
HTML transferred: bytes
Requests per second: 18593.35 [#/sec] (mean)
Time per request: 107.565 [ms] (mean)
Time per request: 0.054 [ms] (mean, across all concurrent requests)
Transfer rate: 15451.92 [Kbytes/sec] received Connection Times (ms) min mean[+/-sd] median max Connect: 137.3
Processing: 121.7
Waiting: 121.7
Total: 236.7 Percentage of the requests served within a certain time (ms) %
%
%
%
%
%
%
%
% (longest request)

3000并发

测试3000并发,处理100000请求:

# ab -c 3000 -n 100000 http://10.27.88.50/index.html

Benchmarking 10.27.88.50 (be patient)

Completed  requests
Completed requests
Completed requests
Completed requests
Completed requests
Completed requests
Completed requests
Completed requests
Completed requests
Completed requests
Finished requests Server Software: openresty/1.11.2.4
Server Hostname: 10.27.88.50
Server Port: Document Path: /index.html
Document Length: bytes Concurrency Level:
Time taken for tests: 5.065 seconds
Complete requests:
Failed requests: (Connect: , Receive: , Length: , Exceptions: ) Write errors:
Non-2xx responses:
Total transferred: bytes
HTML transferred: bytes
Requests per second: 19744.76 [#/sec] (mean)
Time per request: 151.939 [ms] (mean)
Time per request: 0.051 [ms] (mean, across all concurrent requests)
Transfer rate: 16408.79 [Kbytes/sec] received Connection Times (ms) min mean[+/-sd] median max Connect: 329.4
Processing: 185.9
Waiting: 185.9
Total: 433.0 Percentage of the requests served within a certain time (ms) %
%
%
%
%
%
%
%
% (longest request)

测试总结

数据汇总

请求连接数

并发数

请求失败数

每秒处理请求数

一次并发数请求响应时间(ms)

全体请求完成时间(s)

请求成功率

10000

1000

0

11437

87.43

0.874

100.00%

50000

2000

1

18593

107.57

2.689

99.998%

10000

3000

2

19744

151.94

5.065

99.998%

数据分析

通过测试结果可得如下分析:

1、Nginx的每秒请求处理能力是10000+,满足需求标准;

2、随着并发数的增大,一次并发请求的响应时间相应增大,满足需求标准;

3、随着请求连接数的增加,相应的总体请求完成时间也增加,当请求连接数从50k增加至100k时,总体请求时间增加至2倍,具有一定的稳定性和速度性,满足需求标准;

4、当请求连接数和并发数依次递增时,出现偶尔的请求失败数,全部请求成功率大于99.99%,满足需求标准;

5、单台服务器支持3000并发正常,满足需求标准。

NGINX压力测试的更多相关文章

  1. Nginx压力测试工具之WebBench

    Nginx压力测试工具之WebBench   在Apache中有自带的ab命令可以测试服务的压力,而nginx没有自带的命令,必须要采用第三方软件来测试,今天就简单介绍一下webbench对nginx ...

  2. nginx压力测试和并发预估

    一.Nginx并发预估 预估算法:{(?G)*1024-system}/请求大小 (?G):表示内存大小1024:表示内存容量标准进制system:表示系统和服务占用的额外内存和需要预留的内存请求大小 ...

  3. CentOS 6.7平台nginx压力测试(ab/webbench)

    压力测试工具一:webbench 1.安装 wget http://home.tiscali.cz/~cz210552/distfiles/webbench-1.5.tar.gz tar zxvf w ...

  4. nginx压力测试webbench

    下载压力测试工具webbench wget http://home.tiscali.cz/~cz210552/distfiles/webbench-1.5.tar.gz 安装依赖包 yum -y in ...

  5. nginx压力测试和优化配置

    115 yum -y install gcc automake autoconf libtool make 116 yum install ctags 117 mkdir -m 644 -p /usr ...

  6. Nginx压力测试问题

    [root@aa~]# This is ApacheBench, Version 2.3 <Revision:655654Revision:655654> Copyright 1996 A ...

  7. 自己开发的网站压力测试(阿里云1M带宽)

    背景 项目采用微服务架构设计,独立商城系统,博客系统,搜索系统,sso单点系统部署在docker环境下 商城系统(django) 博客系统(flask) 搜索系统(es+flask+restful) ...

  8. 记录一次自己对nginx+fastcgi(fpm)+mysql压力测试结果

    nginx + fastcgi(fpm) 压力测试: CentOS release 5.9 16核12G内存 静态页面: 并发1000,压测200秒,测试结果: 系统最大负载5.47 成功响应: 25 ...

  9. Nginx配置性能优化与压力测试webbench【转】

    这一篇我们来说Nginx配置性能优化与压力测试webbench. 基本的 (优化过的)配置 我们将修改的唯一文件是nginx.conf,其中包含Nginx不同模块的所有设置.你应该能够在服务器的/et ...

随机推荐

  1. 编写React组件的最佳实践

    此文翻译自这里. 当我刚开始写React的时候,我看过很多写组件的方法.一百篇教程就有一百种写法.虽然React本身已经成熟了,但是如何使用它似乎还没有一个"正确"的方法.所以我( ...

  2. 深刻理解iosBlock

    深刻理解iosBlock ///一个控制器里的方法 - (void)setRefreshHeader { ACWeakSelf(self); self.tableView.mj_header = [M ...

  3. 网络基础Cisco路由交换二

    三层交换技术 作用: 使用三层交换技术实现VLAN间通信. 三层交换=二层交换+三层转发 基于CEF的快速转发 主要包含两个转发用的信息表: 转发信息库(FIB):FIB类似于路由表,包含路由表中转发 ...

  4. Hibernate入门这一篇就够了

    前言 本博文主要讲解介绍Hibernate框架,ORM的概念和Hibernate入门,相信你们看了就会使用Hibernate了! 什么是Hibernate框架? Hibernate是一种ORM框架,全 ...

  5. 内存映射mmap的几个api及其使用

    内存映射 mmap 内存映射mmap函数的作用是建立一段可以被两个或者多个程度读写的内存段,一个程序对他进行任何修改,对其它程序可见.同样,这个功能可以用在对文件的处理上,mmap函数创建一个指向一个 ...

  6. 工作中常用的linux命令(2)

    1.find :查找指定文件名的路径: 列出当前目录以及子目录中的所有文件: 在当前目录下寻找特定文件名的文件: 列出长度为零的文件: 2.ps :查看某个程序的进程,例如查询mongodb和mysq ...

  7. java.lang.UnsupportedClassVersionError: Bad version number in .class file (unable to load class org.

    1.错误描述 严重: Exception starting filter struts2 java.lang.UnsupportedClassVersionError: Bad version num ...

  8. 如何在BIOS中设置RAID?

    随着价格的下降和相应主板的支持,目前SATA硬盘已经逐渐成为主流.但由于受芯片组和操作系统的影响,不少用户对SATA硬盘的使用及安装系统掌握不足,今天小编就给大家介绍一下SATA硬盘的日常应用技巧,希 ...

  9. Error:dojo.data.ItemFileWriteStore:Invalid item argument

    1.错误描述 dijit.form.ComboBox TypeError:_4e is undefined                                            Sea ...

  10. 初识Go语言

    一.Go语言的主要特性: ①    开放源代码的通用计算机编程语言.开放源代码的软件(以下简称开源软件)更容易被修正和改进. ②    虽为静态类型.编译型的语言,但go语言的语法却趋于脚本化,非常简 ...