物联网能耗监控项目性能测试报告V0全解.docx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《物联网能耗监控项目性能测试报告V0全解.docx》由会员分享,可在线阅读,更多相关《物联网能耗监控项目性能测试报告V0全解.docx(26页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、文档编号NH_XN_01文档类别测试文档文档级别高中移动物联网能耗监控平台V2.0性能测试报告的各块功能在单次操作下,响应时间不超过3秒。排除明显的性能问题。2、选取多个典型业务场景,对整个平台进行负载测试。依次加大并发数,直到请求响应报 错(包括服务器拒绝、超时、程序报错)或者系统、程序崩溃。由于时间问题,此次不单 独针对单个业务场景做测试,如果在测试过程中发现某个业务场景性能可能存在问题,再 单独压测。3、平台稳定性测试,在用户访问峰值压力下,持续访问平台功能,测试平台是否能长时间 稳定运行。预期得到的测试结果指标有:指标名称指标说明限制条件最优并发数在一定限制条件下,平台所能承受的最大并
2、发数(严格并发)在这个并发数下,平均响应时间不超过5秒,系统无报错,服务器系统资源cpu不超过75%,内存不超过75%最大吞吐量系统每秒能够处理的最大请求数。单位:请求数/秒在这个吞吐量下,平均响应时间不超过5秒,系统无报错,服务器平均系统资源cpu不超过75%,内存不超过75%平均响应时间最优并发数下的系统平均响应时间条件同最优并发数持续稳定运行时间在最优并发数下持续运行的时间持续稳定运行期间系统不报错,不崩 溃,系统资源占用稳定。一般不小于 1小时。针对TERMINAL数据收发服务的测试采用如下策略:1、先测试单次收发数据的处理响应时间,排除明显性能问题。部门管理体系文件-能耗监控项目性能
3、测试报告V1.02、再分别测试数据接收和下发的处理速度。测试数据接收速度的时候,写程序用EDP协 议模拟设备云直接上传大量的实时监控数据。发送完后统计全部写入消息队列的时间、 验证正确率。测试下发时,先在消息队列中加入大量下发数据,再开启程序发送到设备云,记录消息全部出队列时间,即下发完成耗时。3、最后测试程序较长时间运行的稳定性。4、测试过程中需要监控消息队列的处理情况和系统资源占用情况。预期得到的测试结果指标有:指标名称指标说明限制条件数据接收处理速度在一定限制条件下,程序处理消息的速度(单位:消息数/秒)在这个处理速度下,消息处理错误率为0,系统无报错,服务器系统资源在处理完成后回落到正
4、常值。数据下发处理速度在一定限制条件下,程序下发消息的速度(单位:消息数/秒)在这个处理速度下,消息处理错误率为0,系统无报错,服务器系统资源在处理完成后回落到正常值。持续稳定运行时间在整体最大处理速度下,程序能持续稳定运行的时间运行期间系统不报错,不崩溃,系统 资源占用稳定(CPU持续值不超过 85%,内存持续值不超过85%,且执 行完后迅速回落到正常值)。一般不小于1小时。针对HANDLE数据处理服务程序的测试采用如下策略:模拟真实场景准备大量各种业务数据消息进入消息队列,开启消息处理程序执行解 析入库操作,执行完后记录处理时间,校验处理结果的正确性。预期得到的测试结果指标有:消息处理速度
5、XX条/秒和最小持续稳定运行时间。针对定时任务的测试策略和方法如下:在测试数据库中加入一定量的真实业务数据,然后开启各个定时任务执行,记录定时 任务的执行时间和资源消耗情况,校验处理结果的正确性。预期得到的测试结果指标有:每个定时任务的执行耗时。部门管理体系文件能耗监控项目性能测试报告V1.02. 3测试工具及程序本次性能测试要使用到的测试工具和用途如下:工具名称工具用途工具版本是否需培训Jmeter用于测试能耗监控平台性能V2. 13否FireBug用于排查网页性能V2. 0. 8否本次能耗监控平台测试使用开源性能测试工具Jmeter V2. 13模拟用户发送请求访问 平台,通过Jmeter
6、线程组控制生成虚拟用户数,对被测系统进行负载测试。如果在 测试 web应用过程中发现某些页面单次访问加载时间很慢则采用FireBug工具进行排 查。对于 Linux系统的服务器使用)r6自带的监控插件来监控。本次性能测试要使用到的测试程序及其功能定义如下:程序名称程序主要实现功能程序开发语言使用说明feinnoonenet_emulator模拟DTU设备向设备云上传监控数据JAVA启动后每隔5分钟发送4.6万条消息到terminal程序2. 4系统资源监控及关注指标每次压力测试结果数据由测试工具Jmeter自带的监听器搜集成聚合报告。Jmeter聚合报告需关注的参数和指标如下:指标名称性能参数
7、说明正常范围值平均响应时间average指单次测试总请求数的平均响应时间。小于3-5秒中间时间median中位数,也就是50 %用户的响应时间小于3秒90%用户响应时间90%_line90 %用户的响应时间小于5秒最大响应时间max单次测试中最大的响应时间小于5秒事务错误率error%本次测试中错误的请求数/请求总数等于0%吞吐量Throughput表示每秒完成的请求数越大越好每秒数据量KB/Sec每秒从服务器端接收到的数据量略小于带宽Linux服务器资源占用监控工具选用Jmeter自带的监控插件来监控,具体需要监控的服务器指标有:指标名称说明正常范围值CPU使用率(%CPU )程序的cpu的
8、使用率不超过80%内存内存使用率(MEM )程序的内存使用率不超过75%平均负载(Lord Average )过去1分钟、5分钟、15分钟内运行进程队列中 的平均进程数量。不超过5对于数据库需要监控的指标有数据库连接数、SQL执行时间、监控执行太慢的SQL。对于Tomcat web服务器需要监控的有:当前连接请求数、1窈日志。2. 5测试结果2. 5. 1能耗监控平台2. 5. 1. 1测试结果根据测试方案既定的测试策略和方法,测试出能耗监控平台(web应用)性能情 况如 下。主要业务功能的单次响应时间能耗监控平台主要页面单次访问耗时测试前置条件业务数据已准备完毕:1万用户数据、1万企业、4万
9、设备。使用工具FireBUG: c页面加载耗时分析问题编号问题描述当前状态1-1持续运行加数据脚本后java堆内存溢出。已修复1-2加压并发100时报错tomcat线程被占满。已修复1-3查询类功能加压并发到200,数据库cpu 一直保持100%。已修复1-4并发500访问时报错,数据库连接池连接数不够用。已修复1-5并发500访问时,部分程序功能报404错误。已修复以上各问题处理详情如下:【问题1T】持续运行加数据脚本后报错java.lang.OutOfMemoryError: PermGen space问题原因:JAVA堆PermGen space内存溢出。解决方案:加内存,手动设置Max
10、PermSize大小修改TOMCAT_HOME/bin/catalina.sh在 /echoUsing CATALINA_BASE: $CATALINA_BASE 0上面加入:JAVA_OPTS=-server-XX:PermSize=64M -XX:MaxPermSize=128m【问题 1-2加压并发 100 时报错 INFO: Maximum number of threads (200) created forconnector with address null and port 8091问题原因:没有配置Tomcat程序池解决方案:已加上Tomcat程序池,最大线程设置为500【问
11、题查询类功能加压并发到200,数据库cpu一直保持100%,数据库资源占用大,平 均响应时间长,tomcat线程大多数处于等待中。问题原因:数据库没有加索引、部分SQL执行耗时较长(有问题的SQL见附录)。解决方案:添加数据库索引,优化SQL,已完成优化。【问题并发500的时候,响应时间太长,程序报错:nested exception isorg.hibernate.exception.GenericJDBCException: Could not open connectioncom.alibaba.druid.pool.GetConnectionTimeoutException: loop
12、WaitCount lz wait millis60000问题原因:数据库连接数太少,只有32个。连接池溢出导致的等待时间过长所以响应太慢。解决方案:修改数据库连接池配置,增大连接数至500。【问题1-5并发500的时候,部分功能出现404错误。问题原因:不详解决方案:优化了 SQL增大了数据库连接池后,该问题没有再复现。2. 5. 2数据收发模块(Terminal)测试与设备云交互的数据收发模块分为两部分:一部分是数据接收、另一部分是数据 下发。主要测试程序收发数据的速度。2. 5. 2. 1测试结果测试数据上传下发消息数据上传下发测试测试目的测试程序处理数据接收下发的速度。上传/下发处理消
13、息总量总耗时错误率系统资源占用测试结果上传消息294595秒0应用:cpu45%,内存6.2%通过463638秒0应用:cpu50%,内存8%通过75416268小时0应用:cpu50.0%,内存 10.2%通过下发消息3510180秒0应用:cpu5%,内存6%通过31万9分钟0应用:cpu6.4%,内存 9.4%通过持续两天,每分 钟3万数据80秒/次0应用:cpu8%,内存10%通过测试结论Terminal程序接收上传数据速度为:5892条/秒Terminal程序处理下发数据速度为:439条/秒备注说明1)假设有10万台设备,每台设备5条数据流,则完成一次采集数据50万上传的时间是85
14、秒,可以满足业务需求。2)每天凌晨设备指令下发是10万,全部下发完毕是3.7分钟,也满足业务需求。2.5. 2. 2发现的问题暂无2. 5.3消息解析程序(Handle)2. 5. 3. 1测试结果部门管理体系文件-能耗监控项目性能测试报告V1.0消息解析程序测试测试目的测试消息解析程序的处理速度消息总数总耗时平均入库速度是否全部入库系统资源占用测试结果463631.5分钟30908条/分钟是应用:cpu45%,内存30%数据 库:cpu35%,内存88%队列/缓 存:cpu10%,内存 10%通过32454110分钟32454条份钟是应用:cpu57%,内存30.7%数据 库:cpu35%
15、,内存88%队歹旷缓 存:cpu10.8%,内存 10%通过171543148分钟35738条/分钟是应用:cpu60%,内存30%数据库:cpu36.5%,内存87.7%队列/缓存:cpu11.2%,内存8%通过1019986(每次处 理 46363 条,共处 理22次)6小时30908条/分钟是,无数据积压应用:cpu52%,内存30.3%数据 库:cpu33%,内存89%队列/缓 存:cpu11%,内存 9%通过测试结论Handle程序处理数据平均3万条/分钟。若以5分钟作为每台设备的采集周期,每台设备1个 数据 流,则可支撑15万台设备,已达到业务要求。该程序能在数据量大时,持续不间断
16、正确处理数据至 少1小时左右。能稳定支持数据采集处理。3.5. 3. 2发现的问题问题编号问题描述当前状态3-1Handle程序处理数据入库速度太慢(速度30条/秒)。已修复3-2Handle程序处理数据入库有数据遗漏。已修复3-3Handle程序线程池占满后报错,程序崩溃无法继续运行。已修复以上各问题处理详情如下:【问题3-1 Handle程序处理数据入库速度太慢(速度30条/秒)。问题原因:程序采用单线程处理,且每条数据入库都要去打开连接写数据库。解决方案:程序采用多线程处理。【问题32】Handle程序处理数据入库有数据遗漏( 68246条数据少入库50条)。问题原因:程序采用多线程处理
17、后数据有遗漏。解决方案:修改程序处理。【问题33】Handle程序线程池占满后报错,程序崩溃无法继续运行。com.feinno.energy.utils.thread.SimpleThreadPool - The work queue is full!java.util.concurrent.RejectedExecutionException: null问题原因:程序问题。解决方案:修改程序处理。文修订记录版本日期版本描述作者检查人/日期备注2015. 06. 291.0创建文档唐晓文部门管理体系文件-能耗监控项目性能测试报告V1.02. 5.4定时任务2. 5. 4. 1测试结果定时任务主
18、要测试任务执行时间,详细测试结果见下表:定时任务名称执行频率数据量执行耗时程序是否报错测试结果检查设备状态每30分钟一次476041秒否通过清除数据库表数据每天3:05执行6个表的数据1秒内否通过Data表统计入Statistics 表每天2:05执行91万数据86秒否通过整点报告每1小时执行一次10002142秒否通过MN策略下发每天00:05执行3510121秒否通过定时策略扫描每10分钟一次351011秒内否通过定时策略下发不定时1509秒否通过系统资源占用没任务执行时:应用cpu占用0.7%,内存占用4.1% ;数据库cpu0.7% , 21.5%有多个任务同时执行时:应用cpu占用5
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 联网 能耗 监控 项目 性能 测试报告 V0
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内