好文档 - 专业文书写作范文服务资料分享网站

最全面的门户网站架构设计方案 - 图文 

天下 分享 时间: 加入收藏 我要投稿 点赞

公开 内部公开 机密 绝密√

3.2 测试结果

3.2.1 单个TOMCAT的WEB服务器 N客户O 数 线程数 500 请求间隔测试服次数 时间 务器 200万 200万 0毫秒 25毫秒 占用服务器内存 负载 >150 持续平均速时间 度 1298682秒 条/秒 288秒 293秒 422秒 413秒 742秒 744秒 1595秒 1575秒 6362秒 6351秒 4765条/秒 4123条/秒 2863条/秒 2922条/秒 1727条/秒 1608条/秒 742条/秒 737条/秒 471条/秒 472条/秒 完成请求 106万 137万 120万 120万 120万 128万 119万 118万 116万 300万 300万 结果说明 1 1 Test1 1.1G Test1 从第82秒开始,tomcat占用内存1.1g,但CPU资源被tomcat耗尽,服务器负载急剧升高,top显示已达150,服务器停止响应客户端请求,客户端请求速度急剧下降,错包率100%,测试被迫中断。 从第280秒左右开始,tomcat占用内存到达Xmx指定上限1.7g,Test1、Test2请求速度急剧下降,出现错包,错包率超过>6%,且仍在增加,测试终止。tomcat抛出“java.lang.OutOfMemoryError: GC overhead limit exceeded “异常。 服务端从第400秒左右开始,tomcat占用内存到达Xmx指定上限1.7g,Test1、Test2请求速度急剧下降,开始出现大量错包,422秒以后的错包率超过4.3%,且仍在在增加中,之前的错包率约为0.8%,测试终止。 服务端从第740秒左右开始,tomcat占用内存到达Xmx指定上限1.7g,Test1、Test2请求速度急剧下降,开始出现大量错包,测试终止,达到1.7G前,错包率只有0.008%,达到1.7g后,截止停止测试时,错包率增长到1.2%,且仍在在增加中。 web服务器负载小于2。 服务端从第1595秒左右开始,tomcat占用内存到达Xmx指定上限1.7g,Test1、Test2请求速度急剧下降,开始出现大量错包,达到1.7G前,错包率只有0.08%,达到1.7g后,截止停止测试时,错包率增长到2.3%,测试终止。 在测试进度到80%左右时,tomcat1占用内存达到了Xmx指定上限1.7g,但Test1、Test2请求速度并未下降,直到600万次请求全部完成,两个客户端分别有9个丢包,丢包率只有0.003%,最长的响应时长为12.728秒。 2 2 500 Test2 Test1 1.7G < 6 3 2 500 200万 50毫秒 Test2 Test1 1.7G < 3 4 2 500 200万 2001.7G 毫秒 Test2 Test1 < 2 5 2 500 200万 5001.7G 毫秒 Test2 Test1 1.7G Test2 < 1 6 2 500 300万 1000毫秒 < 1 4/10/2013

版权所有,侵权必究All rights reserved 第31页,共39页Page 31 , Total39

公开 内部公开 机密 绝密√

3.2.2 Nginx+2个TOMCAT的WEB服务器 NO 客户线程端数 数 2 250 请求间隔测试服次数 时间 务器 150万 0毫秒 Test1 Test1 Tomcat占用内存 1G < 2 1G 322秒 542秒 < 2 Test2 1.4G Test1 1.7G < 2 Test2 1.7G Test1 1.7G < 1 Test2 1.7G Test1 1.7G < 1 Test2 1.7G Test1 968M 5565秒 898条/秒 10149秒 492条/秒 < 1 Test2 1G 10149秒 492条/秒 500万 500万 500万 1863秒 1141秒 1860秒 544秒 1140秒 服务器负载 持续时间 347秒 平均速度 4322条/秒 4658条/秒 3690条/秒 3676条/秒 2445条/秒 2424条/秒 1490条/秒 1482条/秒 完成请求数 150万 150万 200万 200万 最大响应时长 93005毫秒 21244毫秒 45016毫秒 45014毫秒 平均响应时长 0.21毫秒 测试结果 1 300万次请求全部完成,无一错包。 0.23毫秒 0.27毫秒 2 2 500 200万 25毫秒 Test1 1.4G 400万次请求全部完成,无一错包。 0.27毫秒 3 2 500 300万 50毫秒 278万 276万 277万 276万 500万 93000毫秒 92987毫秒 9077毫秒 9044毫秒 1.09毫秒 1.11毫秒 2.02毫秒 服务端从第1100秒左右开始,Tomcat1、Tomcat2占用内存到达Xmx指定上限1.7g,Test1、Test2请求速度缓慢下降,但并无错包,人为终止测试。 服务端从第1800秒左右开始,Tomcat1、Tomcat2占用内存到达Xmx指定上限1.7g,Test1、Test2请求速度缓慢下降,但并无错包,人为终止测试。 完成测试,但Tomcat1、Tomcat2占用内存到达Xmx指定上限1.7g,无错包。 4 2 500 300万 200毫秒 5 2 500 500万 500毫秒 5475秒 913条/秒 6 2 500 500万 1000毫秒 完成测试,无一错包。 2.02毫秒 4/10/2013

版权所有,侵权必究All rights reserved 第32页,共39页Page 32 , Total39

公开 内部公开 机密 绝密√

3.2.3 Nginx+2个TOMCAT的WEB服务器+缓冲 NO 客户线程端数 数 2 250 请求间隔次数 时间 150万 200万 0毫秒 25毫秒 测试服务器 Test1 Test2 Test1 Test2 Test1 Test2 Test1 Test2 Test1 Test2 Test1 Test2 Tomcat占用内存 0.2G 0.2G 0.4G < 1 0.4G 0.4G < 1 0.2G 0.4G < 1 0.2G 0.4G < 1 0.2G 0.4G < 1 0.2G 服务器负载 < 1 持续平均速度 时间 (条/秒) 64秒 23437 59秒 25423 19610202 秒 19410361 秒 3797915 秒 3847812 秒 12202459 秒 12412417 秒 5031993 秒 5055989 秒 1004498 0秒 1003498 8秒 完成请最大响应平均响应时求数 时长 长 150万 9993毫秒 0.04毫秒 150万 3472毫秒 0.04毫秒 测试结果 1 2 2 500 200万 9616毫秒 0.10毫秒 开启Nginx缓存后,400万次请求全部完成,分别200万 9608毫秒 0.10毫秒 有241和216个错包。 300万 9015毫秒 0.13毫秒 开启Nginx缓存后,600万次请求全部完成,无一10234毫300万 0.13毫秒 错包。 秒 300万 3018毫秒 0.40毫秒 开启Nginx缓存后,600万次请求全部完成,无一300万 3384毫秒 0.41毫秒 错包。 500万 3020毫秒 1.00毫秒 开启Nginx缓存后,1000万次请求全部完成,无一500万 3394毫秒 1.01毫秒 错包。 3 2 500 300万 50毫秒 4 2 500 300万 200毫秒 5 2 500 500万 500毫秒 6 2 500 500万 1000毫秒 1000500万 3020毫秒 2.00毫秒 开启Nginx缓存后,万次请求全部完成,无一500万 78毫秒 2.00毫秒 错包。 注:本次测试所用jsp页面仅100个字节大小,测试过程中带宽压力可以忽略不计。测试过程中曾尝试过使用100k大小静态页面,结果显示在千兆内网下,无论是单Tomcat亦或是Nginx+2Tomcat,请求速度最大均不超过1000条/秒,网络带宽使用已经达到800M,接近千M内网上限。因此,实际应用中,网络带宽对整个web服务的影响会非常大4/10/2013

版权所有,侵权必究All rights reserved 第33页,共39页Page 33 , Total39

公开 内部公开√ 机密

3.3 测试结果分析

1. 系统参数的影响分析

1) worker_processes 参数对Nginx性能的影响

测试过程中分别设定worker_processes为8、4、2、1时发现,该参数对nginx性能影响不大,对服务器资源消耗也没有太大影响,相关资料显示,该参数的值最好跟cpu核数相等,能够发挥最大性能,本次测试nginx所在服务器为2颗双核cpu,因此最终测试设定为4。 2) MaxThread参数对tomcat并发性的影响

本次测试tomcat的 MaxThread参数设定为500,进行13000条/秒并发测试时,tomcat启动并发线程过多,将服务器cpu耗尽。分析MaxThread虽能够提高tomcat并发能力,但前提是在一个合理的范围内,要确保服务器负载不会因为并发线程过多而急剧升高,从而停止响应。 3) -Xmx最大内存值对Tomcat能够持续响应高并发的影响

持续高并发请求状态下,有6次测试是因为tomcat内存达到指定最大值导致响应变慢,直至内存溢出停止响应,因此,Tomcat最大内存对tomcat能够持续响应高并发请求有很大的影响,调整该值,应该可以增加Tomcat响应高并发请求的总数,进而延长WEB服务能够支撑峰值的时间。 2. 各架构下的性能分析

1) Nginx+2Tomcat的最大并发性低于单Tomcat,Nginx+2Tomcat最快为8980条/秒,单Tomcat

为12986条/秒,分析可能是受nginx所在服务器性能影响所致。

2) 单tomcat在配置1.7g最大内存时,在持续超过1479条/秒的并发请求下,在稳定支撑约240

万次响应后,Tomcat内存达到1.7上限,之后Tomcat响应会急剧变慢,错包急剧上升。 3) Nginx+2tomcat架构下,2个tomcat分别配置1.7g最大内存时,在持续超过2900条/秒的并发

请求下,能够稳定支撑约540万次左右响应,之后两个Tomcat内存都会达到1.7上限,响应会急剧变慢,但错包情况并未出现。

4) 在Nginx+2tomcat,同时配置了缓存的情况下,可以达到1.5万以上的并发处理能力

3.4 评测结果

1) 单个tomcat的处理能力在500条/秒左右

单个tomcat能稳定支持每秒500左右的并发请求。

2) Nginx+Tomcat比单个Tomcat更稳定,不易出现错包,可以通过扩充tomcat集群(新增

tomcat服务器)来提升系统的并发能力

单个tomcat在超出并发能力的提求下,处理能力大大下降,并出现大量错包,而采用Nginx+2Tomcat架构在各种测试下,均未出现错包,但处理能力也会下降。

单个tomcat能稳定支持每秒500左右的并发请求,而Nginx+2Tomcat能支持每秒1000左右

4/10/2013

版权所有,侵权必究All rights reserved

第34页,共39页Page 34 ,

Total39

公开 内部公开√ 机密

的并发请求。所以可以通过新加tomcat服务器来提升系统的并发能力,但在tomcat的总体处理能力超过nginx的处理能力时无效。

3) Nginx+2Tomcat配置了缓存后,静态页面的并发能力不再受tomcat的限制,单个nginx的

并发处理能力能达到1.5万以上。

配置了缓存后,nginx+2tomcat的处理能力实测数据超过了1.5万次/秒,而单个tomcat可以支撑500次/秒,则从理论上计算一组Nginx+30个Tomcat集群可以支撑1.5万次/秒的并发处理。

注:为tomcat均分配1.7G内存。

4 配置选型

4.1 网络带宽

只考虑门户访问的带宽占用,后台管理页面等其他业务访问与门户访问相差2-3个数量级,这一部分网

络流量占用忽略。同时考虑网络带宽利用率(70%) 根据业务设计能力,每秒网络流量=WEB网站每秒钟访问流量

=(每次访问占用的带宽×每秒访问次数)/带宽利用率 =(200K*8*n)/0.7

注:一般门户的首页大小>1M、平均200K/页面,我们以平均值来计算。

并发能力 100次/秒 200次/秒 500次/秒 1000次/秒

占用的网络带宽 228 M 457 M 1442 M 2286 M 4.2 架构和硬件配置选型

4.2.1 硬件配置参考

序号 1 1.1 产品功能 主机设备 参考型号、配置 TPMC IBM System x3850 M2, 4个处理器,每处理器为6核,共计数据库服务器 24核。内存大小16G。SAS硬盘,硬盘大小587 GB。4U 机架,684508 集成双千兆以太网接口,两块千兆的光纤网卡。 4/10/2013

版权所有,侵权必究All rights reserved

第35页,共39页Page 35 ,

Total39

最全面的门户网站架构设计方案 - 图文 

公开内部公开机密绝密√3.2测试结果3.2.1单个TOMCAT的WEB服务器N客户O数线程数500请求间隔测试服次数时间务器200万200万0毫秒25毫秒占用服务器内存负载>150持续平均速时间度1298682秒条/秒288秒293秒422秒413秒74
推荐度:
点击下载文档文档为doc格式
1kckk2louf92i2p9mddy
领取福利

微信扫码领取福利

微信扫码分享