测试报告word版下载:http://pan.baidu.com/s/1o8SI8Y2
1. 测试目的
本测试报告是LINUX平台上,SuperMap iServer 9D对放于不同的MongoDB服务器上的100亿张MongoDB瓦片发布为地图服务后的出图测试,来验证MongoDB瓦片在不同MongoDB服务器出图的性能。
2. 术语/缩略语定义
- TPS(TransactionPer Second): 每秒钟系统能够处理的交易或事务的数量。它是衡量系统处理能力的重要指标。
- 吞吐量:指在一次性能测试过程中网络上传输的数据量的总和。
- 吞吐率(Throughput):吞吐量/传输时间,指定单位时间内处理的客户端请求数量。
- 点击率(HitPer Second):每秒钟用户向 Web 服务器提交的HTTP 请求数。
- 事务:用户的一个或一系列操作,代表一定的功能。
3. 测试环境和测试数据
3.1 测试环境
设备 | 硬件配置 | 软件配置 |
iServer服务 112.204 | 内存32G、64bit | Ubuntu 4.8.4-2ubuntu1~14.04.3 SuperMap iServer 版本: supermap_iserver_900_15021_3019_linux64_deploy |
MongoDB单节点 12.103 | Intel(R)Xeon(R) CPU E5-264 0 v3 @ 2.60GHz 内存 96G、64bit | CentOS release 6.5 (Final) MongoDB3.2.6 |
MongoDB单节点 12.201 | Intel(R)Xeon(R) CPU E5-264 0 v3 @ 2.60GHz 内存 32G、64bit | ubuntu1404 MongoDB3.2.6 |
MongoDB服务3 MongoDB分片集群 192.168.12.201、 192.168.12.202、 192.168.12.203、 192.168.12.205 | CPU: Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz 内存:32G 网卡:千兆网卡 硬盘:128G固态盘以及一个3T的硬盘 | ubuntu1404 MongoDB3.4.2(x64) 连接集群方式: 192.168.12.203:30000 |
紧凑缓存文件ugcv5 12.103 | Intel(R)Xeon(R) CPU E5-264 0 v3 @ 2.60GHz 内存 96G、64bit | 凑缓存文件个数:684891 个cf文件 ; 紧凑缓存大小:1.1T (1126500M) |
负载机 | Intel(R)Core(TM) i7-4790K CPU 内存 32G、64bit | Win7 HP LoadRunne11 |
3.1.2 MongoDB分片集架构图
Route节点部署在203上
Config节点部署在201、202、203集群上
Shard一共有四个分片分别部署在201、202、203、2053.2 测试数据
数据 | 数据描述 | 备注 |
MongoDB瓦片 | 地图名:china 切片类型:地图瓦片 | 100亿张 |
测试截图
3.3 测试场景
3.3.1 场景简介(以下场景是根据100亿MongoDB瓦片存放位置不同区分的)
场景NO. | 业务名称 | 测试场景 | 备注 |
场景一 | 96G内存+MongoDB单节点 | 100 、500、1000个用户测试分别执行持续 5分钟 |
|
场景二 | 32G内存+MongoDB单节点 | 100 个用户测试分别执行持续 5分钟 |
|
场景三 | 32G内存+MongoDB分片集 | 100 、500、1000个用户测试执行持续 5分钟 |
|
场景四 | 紧凑缓存文件 | 100 个用户测试分别执行持续 5分钟 |
|
3.3.2 详细介绍
测试URL | 测试场景 |
场景一:MongoDB出图(96G内存,MongoDB单节点) | |
http://192.168.12.204:8090/iserver/services/map-mongodb1/rest/maps/china/tileImage.jpg?tileversion=33d659af-f3d1-4d7f-8a6b-b8843b15c789&transparent=false&cacheEnabled=true&width=256&height=256&x={X}&y={Y}&scale={scale}&redirect=false&overlapDisplayed=false | scale:0.000110767、0.000221533、0.000443066、0.000886132 {indexX}:[0, 11184] {indexY}:[0, 11296] |
备注: iServer单进程 100亿MongoDB瓦片位置:12.103 (96G) 场景:100 、500、1000个用户测试分别执行持续 5分钟 | |
场景二:MongoDB出图(32G内存,MongoDB单节点) | |
http://192.168.12.204:8090/iserver/services/map-mongodb/rest/maps/china/tileImage.jpg?tileversion=33d659af-f3d1-4d7f-8a6b-b8843b15c789&transparent=false&cacheEnabled=true&width=256&height=256&x={X}&y={Y}&scale={scale}&redirect=false&overlapDisplayed=false | scale:0.000110767、0.000221533、0.000443066、0.000886132 {indexX}:[0, 11184] {indexY}:[0, 11296] |
备注: iServer单进程 100亿MongoDB瓦片位置:12.201 (32G) 场景:100 、个用户测试执行持续 5分钟 | |
场景三:MongoDB出图(32G内存,mongoDB分片集) | |
http://192.168.12.204:8090/iserver/services/map-mongodb2/rest/maps/china/tileImage.jpg?tileversion=33d659af-f3d1-4d7f-8a6b-b8843b15c789&transparent=false&cacheEnabled=true&width=256&height=256&x={X}&y={Y}&scale={scale}&redirect=false&overlapDisplayed=false | scale:0.000110767、0.000221533、0.000443066、0.000886132 {ndex}:[0, 11184] {indexY}:[0, 11296] |
备注: iServer单进程 100亿Mongodb瓦片位置:12.203 (32G,Mongod分片) 场景:100 、500、1000个用户测试执行持续 5分钟 | |
场景四:紧凑缓存文件ugcv5 | |
http://192.168.12.103:8090/iserver/services/map-ugcv5-china2014L120compact/rest/maps/china.ijs?tileversion=33d659af-f3d1-4d7f-8a6b-b8843b15c789&transparent=false&cacheEnabled=true&width=256&height=256&x={X}&y={Y}&scale={scale}&redirect=false&overlapDisplayed=false | scale:0.000110767、0.000221533、0.000443066、0.000886132 { ndex}:[0, 11184] {indexY}:[0, 11296] |
备注: iServer单进程 100亿Mongodb瓦片位置:12.103紧凑缓存文件 场景:100 、个用户测试执行持续 5分钟 |
4 测试结果
4.1 Workload Summary
1) 100亿MongoDB瓦片放于不同位置时出图性能对比测试结果
2) 100亿MongoDB瓦片不同并发数出图性能对比测试结果
(96G内存单节点MongoDB服务器和32G内存的MongoDB分片集)
5 结论和建议
由于100亿MongoDB瓦片放于32G内存的电脑时,100个用户并发时,性能不理想,所以没有测试更多的并发数的性能。1. 从4.2.1中可以得到以下结论:
1) 100个用户并发时,100亿MongoDB瓦片存储在96G内存MongoDB单节点上的平均响应时间为0.909s,是存储在32G内存单节点MongoDB上的出图性能(平均响应时间2.042s)的2.25倍,说明MongoDB瓦片所在电脑的内存越大,出图性能越好。
2) 100个用户并发时,100亿MongoDB瓦片存储在32G内存MongoDB分片集中的平均响应时间为0.956s,是存储在32G内存单节点MongoDB上的出图性能(平均响应时间2.042s)的2.13倍,说明100亿MongoDB瓦片存储在MongoDB分片集中比存储于MongoDB单节点中,出图性能好。
3) 100个用户并发时,100亿MongoDB瓦片存储在紧凑缓存文件的平均响应时间为1.408s,比存储在32G内存单节点MongoDB分片集上的出图性能(平均响应时间0.956s)慢了147.3%,说明MongoDB的性能优于紧凑文件。
2. 从4.2.2中可以得到以下结论:
1) 1000个用户并发时,100亿Mongodb瓦片存储于96G内存单节点MongoDB时,平均能响应时间为2.911s,是存储于32G内存MongoDB分片集中的出图性能(平均响应时间4.546s)的1.56倍。如需提高MongoDB瓦片出图性能,建议增大MongoDB瓦片所在电脑的内存。