地图性能测试利器PerfQA Analyzer
Posted 点亮的芦苇
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了地图性能测试利器PerfQA Analyzer相关的知识,希望对你有一定的参考价值。
PerfQA Analyzer作为一个地图性能测试工具,能针对ArcGIS 技术堆栈的系统进行性能问题的排查,用于系统试运行阶段的压力测试以及在线系统运维。大大减轻了GIS系统管理员的性能调优工作压力。
总的来说,该工具适用于以下GIS岗位人员:
- GIS系统管理人员
- GIS制图人员
- GIS开发人员
工具的安装
安装使用简单。
提供两个安装包,一个是面向当前登录用户使用的,另一个是该电脑上所有用户。
下面来介绍一下这个工具的使用。
该工具提供两种使用方式:
1.在ArcMap中交互使用
进入ArcMap后,点击Customize>Toolbars>PerfQA Analyzer,则可以看到上面的这个工具栏了。
点击第一个按钮后,会弹出PerfQA Analyzer浮动面板。
分别有以下几个栏目:
1.1 Rendering
在和地图交互时,用于显示各项绘制性能指标。
分图层显示这些性能指标:背景绘制耗时、图形绘制耗时、标注绘制耗时、选择集绘制耗时、地理选择集绘制耗时、总耗时。
背景绘制阶段:绘制地图背景,一般是白色的背景。相当于esriViewDrawPhase中的esriViewBackground。
图形绘制阶段:指的是图层几何图形的绘制。相当于esriViewDrawPhase中的esriViewGeography。
标注绘制阶段:指的是图层的标注、注记的绘制。相当于esriViewDrawPhase中的esriViewGraphics。
选择集绘制阶段:指的是高亮显示选中的图层记录。相当于esriViewDrawPhase中的esriViewGeoSelection。
地理选择集阶段:指的是注记层中的图元绘制。相当于esriViewDrawPhase中的esriViewGraphicsSelection。
由于ArcMap默认是会采用缓存模式来绘制图形,所以有的时候,地图刷新并不会需要重新绘制,这时ArcMap会从缓存中直接绘制位图,速度是非常快的,在Rendering对应的耗时值就会显示“-”。
1.2 Extents
生成随机的矩形范围,用于压力测试。
可以选择创建新的范围列表、读取已有的范围列表、通过范围列表转换为多边形要素类、加载范围要素类、创建要素类名称列表。
下面是生成的范围列表文本文件。
通过范围生成压力测试脚本,可以生成包含渲染显示和数据查询两种指令的脚本。
下面是自动生成的渲染显示压力测试脚本。
1.3脚本
通过Generate页面,可以根据设定的编辑参数,以及当前地图范围,生成包含相应的编辑指令的脚本,用于压力测试。
支持的编辑指令有:新增、删除、查询、移动、旋转和分割。
在脚本页面,可以查看生成的脚本。并且可以点击执行。在执行前需要检查一下脚本,一般需要手动填写空间数据库的用户密码。
1.4 日志
运行脚本后,会自动切换到日志栏目。
1.5 访问数据
可以根据当前地图范围,统计访问数据的耗时,以及标注计算的耗时。
1.6 DBMS
主要用于启用DBMS的Trace功能,发现以下性能异常问题。
需要要求测试的登录用户具有以下DBMS权限:
grant alter session, alter system to <登录用户>;
提供三种级别的Oracle Trace选项。
生成的Trace文件,可以使用Oracle的TKPROF工具查看和分析,这里就不展开说明了。
下图是使用TKPROF获得的某条空间查询语句的耗时统计。
2.使用命令行调用
一般该方式主要用于做压力测试。
3.下载地址
http://downloads.esri.com/Support/downloads/other_/Setup%20PerfQA%20Analyzer%2010.5.zip
http://downloads2.esri.com/support/TechArticles/Setup-PerfQA-Analyzer-10.4.zip
http://downloads2.esri.com/support/TechArticles/Setup-PerfQA-Analyzer-10.3.zip
http://downloads2.esri.com/support/TechArticles/Setup-PerfQA-Analyzer-10.2.zip
http://downloads2.esri.com/support/TechArticles/Setup-PerfQA-Analyzer-10.1.zip
以上是关于地图性能测试利器PerfQA Analyzer的主要内容,如果未能解决你的问题,请参考以下文章