文档章节

Lua 与php 性能测试说明文档

Foyon
 Foyon
发布于 2013/07/03 16:59
字数 1467
阅读 441
收藏 1


Lua php 性能测试说明文档


测试环境   192.168.10.30

获取同一物品信息  读取redis localhost6379


Php+nginx+redis


Lua+nginx+redis

ngx_lualua嵌入到nginx,让nginx执行lua脚本,高并发,非阻塞的处理各种请求。

url请求nginx服务器,然后lua查询redis,返回json数据。


基于 ngx_openresty/1.0.11.28



说明:经测试,lua php5倍速度以上,并发处理能力好,并发上1000后失败的比较多,可能和服务器配置相关。并发越高,请求数量越大,lua性能体现越明显~


100并发

50000请求

总耗时

Time per request:  

Time per request:

Transfer rate:  

Long request

php

30.192 seconds

1656.09 [#/sec] (mean)

Time per request:       60.383 [ms] (mean)

 0.604 [ms] (mean, across all concurrent requests)

  141 (longest request)

lua

6.147 seconds

8134.12 [#/sec] (mean)

Time per request:       12.294 [ms] (mean)

0.123 [ms] (mean, across all concurrent requests)

   23 (longest request)




500并发

10000请求

总耗时

Time per request:  

Time per request:

Transfer rate:  

Long request

php

7.098 seconds

1408.81 [#/sec] (mean)

 354.910 [ms] (mean)

0.710 [ms] (mean, across all concurrent requests)

7078 (longest request)

lua

1.702 seconds

5876.22 [#/sec] (mean)

   85.089 [ms] (mean)   

0.170 [ms] (mean, across all concurrent requests)

   1633 (longest request)







1000并发

50000请求

总耗时

Time per request:  

Time per request:

Transfer rate:  

Long request

php

51.890 seconds

(741 失败)

 963.57 [#/sec] (mean)

 1037.809 [ms] (mean)

1.038 [ms] (mean, across all concurrent requests)

44859 (longest request)

lua

7.337 seconds

( 49301 失败)

6815.02 [#/sec] 

146.735 [ms] (mean)

0.147 [ms] (mean, across all concurrent requests)

7071 (longest request)


Php   100并发

ab -c 100 -n 50000 "http://192.168.10.30/jjserver/jjtool/src/get_ware_dict.php?wareid=2069&waretype=1&id=357"  

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 192.168.10.30 (be patient)


Server Software:        nginx

Server Hostname:        192.168.10.30

Server Port:            80


Document Path:          /jjserver/jjtool/src/get_ware_dict.php?wareid=2069&waretype=1&id=357

Document Length:        455 bytes


Concurrency Level:      100

Time taken for tests:   30.192 seconds

Complete requests:      50000

Failed requests:        0

Write errors:           0

Total transferred:      29800000 bytes

HTML transferred:       22750000 bytes

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

Time per request:       60.383 [ms] (mean)

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

Transfer rate:          963.90 [Kbytes/sec] received


Connection Times (ms)

              min  mean[+/-sd] median   max

Connect:        0    0   0.2      0       5

Processing:     8   60   6.0     59     141

Waiting:        8   60   6.0     59     141

Total:         13   60   6.0     59     141


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

  50%     59

  66%     60

  75%     60

  80%     60

  90%     62

  95%     68

  98%     80

  99%     89

 100%    141 (longest request)


Lua 100并发

ab -c 100 -n 50000  "http://localhost:85/get_ware_dict?wareid=2069&waretype=&id"                                

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/


Server Software:        ngx_openresty/1.0.11.28

Server Hostname:        localhost

Server Port:            85


Document Path:          /get_ware_dict?wareid=2069&waretype=&id

Document Length:        456 bytes


Concurrency Level:      100

Time taken for tests:   6.147 seconds

Complete requests:      50000

Failed requests:        0

Write errors:           0

Total transferred:      31250000 bytes

HTML transferred:       22800000 bytes

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

Time per request:       12.294 [ms] (mean)

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

Transfer rate:          4964.67 [Kbytes/sec] received


Connection Times (ms)

              min  mean[+/-sd] median   max

Connect:        0    0   0.2      0       7

Processing:     2   12   1.1     12      23

Waiting:        1   12   1.1     12      23

Total:          5   12   1.1     12      23


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

  50%     12

  66%     12

  75%     12

  80%     12

  90%     13

  95%     14

  98%     16

  99%     17

 100%     23 (longest request)


Php500 并发

ab -c 500 -n 10000 "http://192.168.10.30/jjserver/jjtool/src/get_ware_dict.php?wareid=2069&waretype=1&id=357"                               

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 192.168.10.30 (be patient)


Server Software:        nginx

Server Hostname:        192.168.10.30

Server Port:            80


Document Path:          /jjserver/jjtool/src/get_ware_dict.php?wareid=2069&waretype=1&id=357

Document Length:        455 bytes


Concurrency Level:      500

Time taken for tests:   7.098 seconds

Complete requests:      10000

Failed requests:        0

Write errors:           0

Total transferred:      5960000 bytes

HTML transferred:       4550000 bytes

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

Time per request:       354.910 [ms] (mean)

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

Transfer rate:          819.97 [Kbytes/sec] received


Connection Times (ms)

              min  mean[+/-sd] median   max

Connect:        0   25 153.6      0    1021

Processing:     2  292 653.1    113    7070

Waiting:        2  292 653.1    113    7070

Total:          7  317 672.3    114    7078


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

  50%    114

  66%    125

  75%    134

  80%    143

  90%   1087

  95%   1148

  98%   3122

  99%   3216

 100%   7078 (longest request)


lua500并发

ab -c 500 -n 10000  "http://localhost:85/get_ware_dict?wareid=2069&waretype=&id"  

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 localhost (be patient)


Server Software:        ngx_openresty/1.0.11.28

Server Hostname:        localhost

Server Port:            85


Document Path:          /get_ware_dict?wareid=2069&waretype=&id

Document Length:        456 bytes


Concurrency Level:      500

Time taken for tests:   1.702 seconds

Complete requests:      10000

Failed requests:        0

Write errors:           0

Total transferred:      6250000 bytes

HTML transferred:       4560000 bytes

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

Time per request:       85.089 [ms] (mean)

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

Transfer rate:          3586.56 [Kbytes/sec] received


Connection Times (ms)

              min  mean[+/-sd] median   max

Connect:        0   35 181.4      0    1000

Processing:     3   30  77.2     16     633

Waiting:        3   30  77.2     16     633

Total:          5   64 249.9     16    1633


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

  50%     16

  66%     16

  75%     16

  80%     16

  90%     21

  95%     55

  98%   1223

  99%   1624

 100%   1633 (longest request)

Lua500 并发


Php 1000并发

ab -c 1000 -n 50000 "http://192.168.10.30/jjserver/jjtool/src/get_ware_dict.php?wareid=2069&waretype=1&id=357" 

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 192.168.10.30 (be patient)



Server Software:        nginx

Server Hostname:        192.168.10.30

Server Port:            80


Document Path:          /jjserver/jjtool/src/get_ware_dict.php?wareid=2069&waretype=1&id=357

Document Length:        455 bytes


Concurrency Level:      1000

Time taken for tests:   51.890 seconds

Complete requests:      50000

Failed requests:        741

   (Connect: 0, Receive: 0, Length: 741, Exceptions: 0)

Write errors:           0

Non-2xx responses:      741

Total transferred:      29880028 bytes

HTML transferred:       22810762 bytes

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

Time per request:       1037.809 [ms] (mean)

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

Transfer rate:          562.33 [Kbytes/sec] received


Connection Times (ms)

              min  mean[+/-sd] median   max

Connect:        0    6  72.2      0    1005

Processing:    14  713 2783.3     83   44841

Waiting:       14  713 2783.2     83   44841

Total:         44  719 2785.6     83   44859


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

  50%     83

  66%     96

  75%    113

  80%    138

  90%   1084

  95%   3134

  98%   7831

  99%  14639

 100%  44859 (longest request)


Lua 1000 并发

ab -c 1000 -n 50000  "http://localhost:85/get_ware_dict?wareid=2069&waretype=&id"                               

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/


Server Software:        ngx_openresty/1.0.11.28

Server Hostname:        localhost

Server Port:            85


Document Path:          /get_ware_dict?wareid=2069&waretype=&id

Document Length:        67 bytes


Concurrency Level:      1000

Time taken for tests:   7.337 seconds

Complete requests:      50000

Failed requests:        49301

   (Connect: 0, Receive: 0, Length: 49301, Exceptions: 0)

Write errors:           0

Total transferred:      30977390 bytes

HTML transferred:       22528089 bytes

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

Time per request:       146.735 [ms] (mean)

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

Transfer rate:          4123.27 [Kbytes/sec] received


Connection Times (ms)

              min  mean[+/-sd] median   max

Connect:        0   61 312.8      0    7000

Processing:     0   40 222.6     18    4723

Waiting:        0   40 222.6     18    4723

Total:         13  101 439.6     18    7071


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

  50%     18

  66%     18

  75%     19

  80%     19

  90%     22

  95%    999

  98%   1019

  99%   2454

 100%   7071 (longest request)


© 著作权归作者所有

Foyon
粉丝 4
博文 8
码字总数 7357
作品 0
海淀
程序员
私信 提问
hi-nginx-1.3.4 发布,特性更新和bug修复

hi-nginx-1.3.4已经发布。 更新: nginx升级至1.13.10 修复上传文件组件bug 修复hi-project脚本有关php工程创建模板 新增python、lua和php指定运行特定脚本功能 完善php语言支持 更新一些第三...

所以呢
2018/03/21
719
4
OpenResty(nginx+lua) 开发入门

OpenResty 官网:http://openresty.org/ OpenResty® - 中文官方站 http://openresty.org/cn/ OpenResty 是一个nginx和它的各种三方模块的一个打包而成的软件平台。最重要的一点是它将lua/l...

English0523
2017/11/13
0
0
wrk压力测试工具

wrk安装 Mac下安装:brew install wrk 即可安装成功,进入wrk目录/usr/local/Cellar/wrk/4.0.2/bin,执行wrk命令即可 简单的性能测试 bin git:(master) wrk -t12 -c100 -d30s http://weibo.c...

okowo
2017/05/25
0
0
ngx_lua_module-1.0.5.0 (LUA编写网页脚本,支持windows和linux)

注:最新版本在以下博客发布:http://blog.csdn.net/ngwsx/ ngxluamodule是一个nginx http模块,它把lua解析器内嵌到nginx,用来解析并执行lua语言编写的网页后台脚本。 特性: *) HTML网页中...

无名码农
2011/08/01
0
0
RedBridge: 为Redis提供HTTP API及连接池功能

RedBridge 是一款基于Redis的 HTTP API。使用LUA直接跟Redis交互,对Redis的连接实现连接池。(类似数据库的存储过程) 高效的实现复杂的业务逻辑。 项目网址:http://code.google.com/p/redb...

红薯
2011/10/19
3.9K
6

没有更多内容

加载失败,请刷新页面

加载更多

tornadofx动画演示分钱问题,多种方法

import javafx.animation.AnimationTimerimport javafx.collections.FXCollectionsimport javafx.scene.paint.Colorimport javafx.scene.shape.Rectangleimport javafx.util.Duratio......

oschina4cyy
31分钟前
1
0
Bootstrap(四)列表与代码

列表 无序列表 <ul> <li>...</li></ul> 有序列表 <ol> <li>...</li></ol> 去点列表 <ul class="list-unstyled"> <li>...</li></ul> 内联列表(列表元素放置于同一行) <ul class="......

ZeroBit
34分钟前
2
0
信必优成功案例 – H3C/CMCC企业项目管理系统

项目背景 •企业项目管理(EPM)系统涵盖了(无线)需求管理、预算管理、立项管理、建设管理、后评估等一系列功能,实现了从预算到建设到项目完成评估阶段的全面覆盖。同时,通过管理流程的电...

symbiochina88
35分钟前
1
0
DevExpress WPF v19.1新版亮点:PDF Viewer等控件新功能

行业领先的.NET界面控件DevExpress 日前正式发布v19.1版本,本站将以连载的形式介绍各版本新增内容。在本系列文章中将为大家介绍DevExpress WPF v19.1中新增的一些控件及部分功能增强,点击下...

FILA6666
36分钟前
1
0
PHP 获取类 / 对象的属性字段及属性值

get_class_vars 获取类的公有属性及默认值(包含公有的静态属性),用来列举类的公有属性字段。 get_object_vars 获取对象的公有属性及属性值(不包含公有的静态属性)。 ReflectionClass 如...

big_cat
38分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部