1. 测试环境 1.1. 硬件环境
客户端和服务端
:
Cpu:
单核
2G
内存
:4GB
1.2. 网络环境
局域网
100Mbps
测试前把客户端和
服务端的
socket
数开大
/sbin/sysctl -w net.core.somaxconn=20000
测试前把客户端和服务端的文件打开数开大
ulimit -n 20000
2. 测试方法
用
ab
对
httpserver
并发
(100,1000,2000,5000,10000)
测试
10
万次
ab -n 100000 -c 100 http://192.168.13.105:8080/
ab -n 100000 -c 1000 http://192.168.13.105:8080/
ab -n 100000 -c 2000 http://192.168.13.105:8080/
3.
测试结果
Rps: Requests per second
产品
|
并发量
|
丢失数
|
rps
|
每分钟负载
|
最大响应时间(
ms
)
|
100
|
0
|
6061.91
|
1.26
|
16.496
|
|
1000
|
0
|
9878.99
|
1.31
|
101.225
|
|
2000
|
|
8590.68
|
1.51
|
232.811
|
|
5000
|
|
8053.36
|
1.16
|
620.859
|
|
10000
|
|
4876.96
|
1.12
|
2050.459
|
|
Netty
|
100
|
|
8733.74
|
0.96
|
11.450
|
1000
|
|
11101.22
|
1.11
|
90.080
|
|
2000
|
|
10622.91
|
1.67
|
188.272
|
|
5000
|
到达
50000
时挂了
|
|
|
|
|
10000
|
|
|
|
|
|
Nginx(
静态文件
)
|
100
|
0
|
12526.93
|
0.23
|
7.983
|
1000
|
0
|
13249.86
|
0.3
|
75.473
|
|
2000
|
0
|
11882.48
|
0.47
|
168.315
|
|
5000
|
0
|
7761.73
|
0.32
|
644.186
|
|
10000
|
0
|
4824.87
|
0.15
|
2072.595
|
|
Nginx(FastCGI,20
进程
)
|
100
|
|
出现很多错误
|
|
|
1000
|
0
|
|
|
|
|
2000
|
0
|
|
|
|
|
5000
|
0
|
|
|
|
|
10000
|
0
|
|
|
|
|
mongrel2
|
100
|
|
6366.11
|
0.22
|
15.708
|
1000
|
|
6381.22
|
0.49
|
156.710
|
|
2000
|
|
6263.62
|
0.30
|
319.304
|
|
5000
|
连接被重置
|
|
|
|
|
10000
|
|
|
|
|
4. 结论
Mima
和
netty
是用
java
动态生成
html
,在并发
2000
连接时效率能达到
8000rps
。
Nginx
后挂
fastcgi
的效率和后面处理语言的效率有关,如果后面用
c
的话,效率估计会很高
本文转自yifangyou 51CTO博客,原文链接:
本文转自yifangyou 51CTO博客,原文链接:,如需转载请自行联系原作者
,如需转载请自行联系原作者