ArcGIS性能测试-System Test之动态地图服务ExportMap性能测试


1.简介

客户端应用访问动态地图服务,主要使用的是动态地图服务的出图功能,即调用地图服务的ExportMap操作。本示例主要是测试动态地图服务的出图性能。

2.创建测试工程

使用工具栏上的New工具创建测试工程。

新建工程

3.添加GIS Server服务

添加GIS Server服务是通过配置ArcGIS Server REST根地址实现。使用工具栏上的Add GIS Server工具来添加。
ArcGIS Server REST地址格式:http://<hostname>:6080/arcgis/rest/services,如果GIS服务的访问需要登录,勾选上Requires authentication,并输入账号密码。

Add Server

添加完成,System Test会自动在GIS Servers下增加服务列表。

4.创建测试数据

4.1.加载地图服务

在上一步添加的GIS服务中选择测试的地图服务,以SampleWorldCities为例,右键选择view service,将地图服务添加到地图中。

预览地图服务

4.2.设置数据范围

使用工具栏上的Envelope工具,在地图上画出测试的数据范围。

*

4.3.设置地图输出参数

使用工具栏上的Map工具,定义输出参数,如比例尺、图片大小等。

输入参数设置

比例尺设置完成,会自动在左边树结构的Data Sources下添加bbox.csv节点。csv文件记录了地图服务使用export接口时所需的所有参数值,每个比例尺下每个bbox范围一条记录。

bbox

4.4.预览各比例尺下的数据

展开Data Sources,右键选择bbox.csv文件,选择Preview Scale Data下的各比例尺预览数据。

预览

5.创建Web测试

5.1.创建测试

右键选择bbox.csv文件,选择Create Export Load Test-->Scale Based Transactions Test

创建测试

Scale Based Transactions Test会为每个比例尺增加一个bbox_<scale>.csv,同时在Load Tests和Web Tests下添加测试项。

5.2.负载设置

创建完测试会自动打开负载设置,也可以展开Load Tests,右键选择SampleWorldCities-->Edit打开。
示例:初始负载用户数1个,停止负载时用户数3各,步长1个用户,每次增加用户耗时时长5秒,每次负载持续时间1分钟。

负载设置

5.3.监控的Server设置

(1)监控Server设置
设置内容包括:增删监控服务器,服务器的登录用户,测试连接等。默认情况下只添加了System Test所在的客户机。

server设置

点击Auto会自动将与测试相关的服务器添加进来。
(2)添加远程监控服务器注意事项
windows平台需要开启WMI访问才支持被System Test远程监控。开启WMI的方法见文末附录章节

特别需要注意的是:System Test软件必须以开启WMI时设置的远程访问账号来运行。否则点击Auto或者手动Add服务器都不会将远程服务器添加进来。

6.执行测试

6.1.开始执行测试

展开Load Tests,右键选择SampleWorldCities-->Start Load Test,或者使用工具栏上的Start Load Test工具。

执行测试

6.2.监测执行情况

测试执行过程中会动态的显示测试信息,支持右键控制图例显示与否、对图缩放、指标显示与否控制等操作。

1.

6.3.测试报告

测试完成会自动生成Excel报告。报告包含16项内容,每项都以图和表的方式展示。

  1. Test Configuration
  2. Scalability + Performance (Tr) - Transaction Response Time
  3. Scalability + Performance (Req) - Request Response Time
  4. Request Status
  5. Average Content Length
  6. % Processor Time (CPU)
  7. % Idle Time (Disk)
  8. Disk Throughput
  9. Available Bytes (Memory)
  10. Network Throughput
  11. Individual Transaction Response
  12. Individual Transaction Length
  13. Megabits/Transaction
  14. CPU Service Time/Transaction vs. Step Load
  15. Key Indicators vs. Step Load
  16. Machine Specifications

各项指标说明见ArcGIS性能测试-System Test基础入门

image.png

7.检验测试结果

根据Excel报告,检查性能是否满足要求。

8.核心参数与内容解析

8.1.数据范围设置

数据范围设置主要用来定义地图服务被访问的主要区域范围,即用户感兴趣区域,不需要精确的值。客户端访问时,出图的范围会在这个定义的范围内。该范围设置将用在地图输出比例尺设置中。

8.2.地图输出参数设置

(1)ExportMap操作接口说明
动态地图服务访问使用的是ExportMap操作接口,该接口需要的主要参数如下:

参数名 参数说明
bbox 输出地图的图片范围大小,使用xmin,ymin,xmax,ymax表示
size 输出图片的像素大小,使用width,height表示
bboxSR bbox的空间参考
imageSR 输出图片的空间参考
mapScale 输出地图的比例尺

ExportMap接口使用示例:
http://portal.xinli.local:6080/arcgis/rest/services/SampleWorldCities/MapServer/export?transactionname=Transaction1&scale=1128&bbox=-122%2C30%2C-108%2C39&bboxSR=4326&imageSR=4326&size=1024%2C768&f=image&gdbVersion=

注意:System Test默认生成的请求地址中,scale参数在REST中不存在,且未起作用。需要修改为mapScale。
展开Web Tests-->SampleWorldCities-->bbox,在每个bbox下右键选择url地址-->Edit。修改其中的scale为mapScale。

修改参数

(2)地图输出参数设置说明
地图输出参数与地图服务的ExportMap操作接口所需的参数对应。
Image Width和Image Height:定义输出图片的大小。
Scale:定义输出地图的比例尺。一般定义成与底图缓存服务一致。
Records per scale:定义每个比例尺下输出的bbox个数,即每个比例尺下输出多少张图片。
Randomized:指数据会随机分布在bbox定义的范围中。对比测试发现勾选与不勾选bbox范围没有太大差别。且在bbox右键菜单中提供了切换功能。

8.3.各比例尺预览图说明

地图输出参数设置完成,会自动计算出每个比例尺下的bbox范围值,以及其他的输出参数信息。这里的预览指的是查看每个比例尺下计算出来的bbox范围,以及该范围下包含的数据。

8.4.负载测试的几种类型

几种负载测试类型说明如下:

负载测试类型 说明
Transaction Aggregate Test 每次执行使用所有比例尺。
Scale Based Transactions Test 每次执行使用比例尺组中的一个输出比例尺。可以分析测试每个比例尺下的执行性能。
Layer Based Transactions Test(Troubleshooting) 用于测试指定图层和指定比例尺下的执行性能。注:测试客户端比较占用内存。

9.附录

9.1.Windows平台启用WMI远程监控

(1)创建远程监控访问账号
本例使用的是GIS Server的安装账号。再将账号分配到用户组:Administrators、Distributed COM Users、Performance Monitor Users。
(2)被监控端启用DCOM
命令行中输入dcomcnfg打开组件服务,再打开组件服务-->计算机-->我的电脑的属性。勾选上“在此计算机上启用分布式COM”,设置默认身份验证级别为连接,默认模拟级别为标识。

打开COM安全-->启动和激活权限-->编辑限制,添加远程访问账号,并设置允许的权限。如添加GIS Server安装账号,并设置权限:本地启动、远程启动、本地激活、远程激活。
(3)被监控端启用RPC和WMI服务
在系统服务中启用Remote Procedure Call (RPC)、Windows Management Instrumentation、WMI Performance Adapter服务。
启用完成,可检查服务端口启用情况:netstat -an,默认使用的是135和445端口。
(4)被监控端防火墙设置
最简单方式关闭防火墙。或者开放135和445端口。
(5)被监控端设置WMI属性
命令行输入wmimgmt.msc,然后打开WMI控件属性,为\root\CIMV2和\root\WMI配置安全设置,添加远程访问账号,并设置允许的权限。将启用账号、远程启用、读取权限赋予远端监控使用的访问账号。如添加GIS Server安装账号,并设置权限。

(6)在监控端测试远程访问
命令行输入wbemtest,打开连接,输入命名空间和访问账号。

连接成功会回到测试器。

打开枚举类,使用递归方式查询所有WMI对象。

如果要查看某个具体WMI对象的值,找到对应的对象名双击打开,再选择对话框中的实例。

再双击具体值,选择显示MOF可进一步查看明细。

9.2.添加远程监控的GIS Server服务器测试记录

(1)测试问题1:在Load Test Definition中点Auto按钮无结果。
在Servers配置中,点Auto按钮,并没有自动添加测试请求相关的服务器。
(2)测试问题2:使用手动方式Add服务器,Auth成功,但Detect无结果。
手动添加GIS Server所在的服务器IP地址,同时输入WMI开启时配置的远程访问账号。再点Detect时,远程服务器的硬件信息仍为空。

(3)日志分析
在Preferences中将System Test的日志等级更改为debug。

重新测试,日志记录中报错误:Access denied to user arcgis

(4)解决方法

  1. 在System Test所在的机器上新建WMI配置的远程访问账号。再将账号分配到用户组中,如Administrators用户组。
  2. 以新建的账号登录机器,再运行System Test。
  3. 在Web Tests下新建测试。


  4. 新建Load Tests测试。默认Servers下只添加了客户端机器。


  5. 编辑Servers设置,点Auto会自动添加192.168.80.1的服务器,同时会显示硬件信息。


参考资料:
[1] System Test帮助

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,098评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,213评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,960评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,519评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,512评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,533评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,914评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,574评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,804评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,563评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,644评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,350评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,933评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,908评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,146评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,847评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,361评论 2 342

推荐阅读更多精彩内容