历史版本22 :软件及硬件配置 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1.操作系统编辑

设计器可以安装在Windows、Mac OS上,可以将工程部署在windows、Solaris 、Aix、Linux、Unix、IRIX上;

2.数 据 库编辑

Oracle、SqlSever、Mysql、Access、Sybase、DB2、Postgre、Derby(主流的一些关系型数据库和多维数据库);

3.服 务 器编辑

Tomcat、Jboss、Weblogic、WeBSphere、Tongweb、resin等web应用服务器;

4.浏 览 器编辑

IE、FireFox、Chrome等主流浏览器。

5. 服务器推荐配置编辑

222


FR配置型测试报告
 
1 概述
1.1目的
根据finereport产品提供的指标测试服务器的推荐配置和最低配置。
1.2背景
产品经理调研收集整理了常用的通用测试场景15个,采取混合业务场景的方式按比例并发,在规定的响应时间下,调整硬件配置,总结推荐配置和最低配置。
1.3范围
本次测试主要在混合业务15个业务并发场景下,测试推荐配置、最低配置及推荐配置下的最大并发用户数。
1.4结论
  注册用户数  在线用户数  并发用户数 推荐配置 最低配置
  1000-2500  200-500  50 CPU:四核八线程,4GHZ
JVM内存:12GB
 CPU:双核四线程,3GHZ
JVM内存:5GB
  2400-6000  480-1200  120  CPU:四核八线程,4GHZ
JVM内存:12GB



说明:
注册用户数:系统注册了的用户
在线用户数: 用户同时在一定时间段的在线数量(一般注册人数的5%-20%之间,取20%)
并发用户数:同时向服务器发送请求的用户数(一般是在线人数的10-25%左右)
推荐配置时: 90%用户的访问时间低于1.5s
最低配置时: 70%用户的访问时间低于2s
JVM内存: 分配给FineReport容器Tomcat的内存(可设置为物理内存的80%左右)。
注:网络、数据库sql处理均影响体验时长,本次报告只针对FineReport处理时长,内网、非复杂sql,可忽略网速、数据库因素。
2 测试环境
2.1网络的拓扑结构

222

负载 机、测服务器、数据库在同一局域网进行,减少了网络对测试结果的影响。
2.2 服务器和测试机的配置

FineReport服务器

CPUIntel(R) Core(TM) i7-6700K CPU @ 4.00GHz

内存:64G

系统:Ubuntu 16.04.3 LTS

硬盘:机械硬盘

测试机

CPUIntel(R) Core(TM) i7-4790K CPU @ 3.60GHz

内存:32G

系统:Windows7专业版x64


Mysql服务器

CPUIntel(R) Core(TM) i7-7700K CPU @ 4.20GHz

内存:64G

硬盘:512G SSD

2.3 数据库配置

Mysql版本5.7

innodb_buffer_pool_size=1G

innodb_log_file_size=48M

max_connections=800

2.4 FineReport配置

FineReport 版本

9.0版本

2018.2.10 stable

初始jvm内存

8G

Tomcat线程数设置

server.xml

connectionTimeout="20000"

redirectPort="8443"

maxThreads="600"      

minSpareThreads="100"

maxSpareThreads="500"

acceptCount="700"

应用自身配置

默认


4 测试内容及方法
4.1 测试需求/目标
在规定业务场景、业务并发数及响应时间下,通过调整硬件配置总结归纳服务器的推荐配置和最低配置。并在推荐配置下进行压测,得出系统的最大用户数。
4.2 测试内容
本次测试使用产品收集的15个用户高频场景,混合场景51业务并发。测试最低配置时,70%用户的访问时间低于2s;推荐配置时,90%用户的访问时间低于1.5s。
1)所有涉及参数的,都使用数据集参数,不使用模板参数。
2)涉及多表关联的,都在SQL中关联,不使用设计器的过滤关联。
3)所有模板,都不涉及js事件,也不允许使用内置数据集,要求从数据库中取数。
4)用户查看数据无权限限制
4.2.1测试方法
按照用户场景比例(下表格)混合并发,调整CPU核心数、JVM内存,得出40组并发测试数据,分析40份LR测试报告中90Percent一栏数据。

场景

并发用户比例

运行场景设置

测试点

场景1

8%

5分钟

测试单用户操作响应时长

场景2

8%

5分钟

测试单用户操作响应时长

场景3

8%

5分钟

测试单用户操作响应时长

场景4

8%

5分钟

测试单用户操作响应时长

场景5

8%

5分钟

测试单用户操作响应时长

场景6

8%

5分钟

测试单用户操作响应时长

场景7

8%

5分钟

测试单用户操作响应时长

场景8

8%

5分钟

测试单用户操作响应时长

场景9

8%

5分钟

测试单用户操作响应时长

场景10

8%

5分钟

测试单用户操作响应时长

场景11

8%

5分钟

测试单用户操作响应时长

场景12

6%

5分钟

测试单用户操作响应时长

场景13

2%

5分钟

测试单用户操作响应时长

场景14

2%

5分钟

测试单用户操作响应时长

场景15

2%

5分钟

测试单用户操作响应时长

4.2.2测试场景
展现类

1

清单明细报表

要求:数据来源于3个数据库表,8500行展现,分页预览。

2

普通分组报表+公式

要求:数据来源于3个数据库表,8500行展现,其中一列的内容由公式计算得来,分页预览。

3

普通交叉报表+图表+公式

要求:数据来源于3个数据库表,1030行展现,其中一列由公式计算得来,图表使用单元格图表——柱形图——单元格数据源,分页预览但所有内容一页内展示全。

4

条件属性+重复标题行

要求:在003分组带公式模板基础上,对表头设置重复,同时对公式所在列设置条件属性,超出一定范围的值进行红色高亮显示。

5

冻结

要求:数据来源于3个数据库表,以如下模板样式为参考,数据量要求30100行,分页预览。

6

大屏模板(绝对布局+组件重叠)

要求:数据来源于至少3个数据库表,组件不少于7个(其中至少1个报表块3个不同图表类型1个地图)且需要使用组件叠加,数据量不作要求。

参数查询类

7

参数查询清单报表

要求:数据来源于3个数据库表,至少3个查询参数,原始数据要求不少于1000条记录,查询后展现的数据量要求850行。

8

参数查询+分组报表+图表

要求:数据来源于3个数据库表,至少3个查询参数,原始数据要求不少于1000条记录,查询后展现的数据量要求830行,附带显示一个图表(单元格图表——柱形图——单元格数据),一页内展示。

填报类

9

不定行填报——页面展示

要求:8100行,一个数据库表就行,不直接展示控件,测试填报预览性能

10

不定行填报——提交入库

要求:8100行,提交回1个数据库表,不直接展示控件,测试提交入库性能

11

不定行填报——在线导入Excel

要求:导入Excel数据量为8200

12

自由格式填报——提交入库

要求:单个模板提交回2个数据库表,所有控件都设置校验,测试提交入库性能


打印导出类

13

导出Excel

要求:数据来源于3个数据库表,展现8500行,原样导出Excel,测试从点击导出按钮到导出完毕的时间

14

导出PDF

要求:数据来源于3个数据库表,展现8500行,导出PDF,测试从点击导出按钮到导出完毕的时间

15

报表打印

要求:数据来源于3个数据库表,模板分页预览数量为5页,使用如下参考的自由格式表样,走PDF打印方式,测试从点击打印按钮到弹出打印设置开始机器打印前的响应时间。


4.3 测试工具
主要测试工具为:LoadRunner性能测试工具
辅助软件:截图工具,Word
 
5 测试结果及分析
产品定义“我们的响应标准定为3秒内视作优秀体验,6秒内视作良好体验”。性能测试环境中的网速、sql执行、磁盘等因素均影响较小可以忽略,实际客户环境执行sql、网络、磁盘IO等均会有一定耗时, 这部分时间由客户环境及业务复杂度决定,假设这部分耗时过长,FR就算再快,就客户体验来说,还是非常差。
最终讨论确定:
最低配置时,70%用户的访问时间低于2s;
推荐配置时,90%用户的访问时间低于1.5s;
调整CPU核心数、JVM内存,得出40组并发测试数据,分析40份LR测试报告中90Percent一栏数据。
测试数据有如下特征:
在内存充裕情况下,逐条降低CPU线程数,模板响应时间逐渐增加
当CPU降为4线程时,详细数据如下,约30%用户访问时间超过2s
CPU条件在2)的条件下,逐渐降低内存大小,模板响应时间几乎不变,当内存低于5G时,模板响应时间开始上升
调CPU为八线程,内存为10G时,满足最优配置条件,继续增加内存模板响应时间没有明显变化,推荐12G留2G作为冗余。
由测试数据分析得出结论:
5.1 最低配置
CPU:双核四线程,3GHz  JVM内存:5GB

同时在线用户数

混合业务并发用户数

最低配置

200-500

50

CPU:双核四线程,3GHz
内存:5GB


最低配置下测试结果如下:

5.2推荐配置
CPU:四核八线程,4GHZ  JVM内存:12GB

同时在线用户数

混合业务并发用户数

推荐配置

200-500

50

CPU:四核八线程,4GHZ
内存:12GB

推荐配置下测试结果如下:

以上结果为数据库、网络、磁盘IO表现良好,服务器无其他负载情况下,FR的配置推荐。建议客户在项目实施中,进行充分的性能测试,包括数据库压测、网络资源监控、服务器资源监控等,合理优化系统的性能瓶颈,保证项目上线后的优良表现。

5.3推荐配置下的并发测试
一般客户并发访问模板时,系统收到的访问请求不是持续不断的,本次请求与下一次请求间存在时间间隔。为测试推荐配置下系统极限,调整运行时设置模拟客户实际使用场景,避免场景过于复杂,统一假设模板访问间隔为0.5到1s内的随机数,记录LR性能测试报告中90 percent列的数据。
并发负载测试

120并发时,70%以上访问响应时间低于2s,CPU达到瓶颈,内存使用合理,FR服务器约为最低配置时的性能。故120并发可作为此配置下的极限性能,此时客户在线用户数大概在1000左右。
数据量极限测试
根据以往POC经验,大数据量下模板响应时间受数据库性能影响大。具体客户的业务复杂度、数据库设计、模板用到SQL的复杂度,往往决定了FR最终的性能表现。故不在测试环境模拟大数据量极限测试。