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的更多相关文章

  1. Gatling->次时代性能测试利器

    Gatling作为一款开源免费的性能测试工具越来越受到广大程序员的欢迎.免费当然是好的,最缺钱的就是程序员了;开源更好啊,缺啥功能.想做定制化的可以自己动手,丰衣足食.其实我最喜欢的原因是其提供了简洁 ...

  2. 实战一:LoadRunner性能测试利器

    转自:https://blog.csdn.net/weixin_42350428/article/details/82106603 企业的网络应用环境都必须支持大量用户,网络体系架构中含各类应用环境且 ...

  3. Matplotlib Toolkits:地图绘制工具

    Matplotlib Toolkits:地图绘制工具 有没有一种可以直接在详细地图(如谷歌地图)上绘制上百万坐标点的工具???谷歌地图坐标点多了也不能绘制了. Basemap (Not distrib ...

  4. 使用jMeter测试Solr服务接口

    之前一直用ab做简单的服务接口测试,ab功能强悍,使用简单,但是没有生成专题图和表格等功能,因此,我们决定使用jmeter来作为我们测试工具.接下来,我们将详细介绍jmeter使用的步骤,主要包括:j ...

  5. 超级干货 :一文读懂数据可视化 ZT

    前言 数据可视化,是指将相对晦涩的的数据通过可视的.交互的方式进行展示,从而形象.直观地表达数据蕴含的信息和规律. 早期的数据可视化作为咨询机构.金融企业的专业工具,其应用领域较为单一,应用形态较为保 ...

  6. 测者的性能测试手册:JVM的监控利器

    测者的性能测试手册:JVM的监控利器 每次聊起性能测试,最后的终结话题就是怎么做优化.其实在Java的复杂项目中都会有内存不足问题.内存泄露问题.线程死锁问题.CPU问题.这些问题工程测试或者是小压力 ...

  7. web性能测试的新利器 - Gatling 介绍

    转载:http://www.51testing.com/html/10/26810-852956.html 最近发现了一个新的性能测试工具Gatling,貌似比Jmeter还好玩.这几天就先简单介绍一 ...

  8. 智能手机取证利器再进化-UFED Cloud Analyzer

    智能手机在现代人生活中,和钱包,钥匙一样,成了不可或缺的生活必需品,举凡食衣住行育乐都需要携带随身使用,因此,智能手机里所存放的,就是一个人的生活缩影,只是人们多半不自知智能手机竟是如此贴心的为你/妳 ...

  9. 将不确定变为确定~老赵写的CodeTimer是代码性能测试的利器

    首先,非常感谢赵老大的CodeTimer,它让我们更好的了解到代码执行的性能,从而可以让我们从性能的角度来考虑问题,有些东西可能我们认为是这样的,但经理测试并非如何,这正应了我之前的那名话:“机器最能 ...

随机推荐

  1. Python学习笔记——import模块

    OS模块 直接输出系统命令到屏幕,该方法获取的命令返回值不可被赋值给变量,输出结果受编码影响会乱码: import os os.system("ipconfig") 将执行获取的系 ...

  2. raft如何实现Linearizable Read

    Linearizable Read通俗来讲,就是读请求需要读到最新的已经commit的数据,不会读到老数据. 对于使用raft协议来保证多副本强一致的系统中,读写请求都可以通过走一次raft协议来满足 ...

  3. Android性能优化:ViewStub

    在开发应用程序的时候,经常会遇到这样的情况,会在运行时动态根据条件来决定显示哪个View或某个布局.那么最通常的想法就是把可能用到的View都写在上面,先把它们的可见性都设为View.GONE,然后在 ...

  4. JavaBean规范

    JavaBean规范 (1)JavaBean 类必须是一个公共类,并将其访问属性设置为 public  ,如: public class user{ …}(2)JavaBean 类必须有一个空的构造函 ...

  5. (转)Synchronized(对象锁)和Static Synchronized(类锁)的区别

    场景:面试的时候经常用得到! 1 综述 Synchronized和Static Synchronized区别 一个是实例锁(锁在某一个实例对象上,如果该类是单例,那么该锁也具有全局锁的概念),一个是全 ...

  6. 第一回:Scrapy的试水

    前言:今天算是见到Scrapy的第二天,之前只是偶尔查了查,对于这个框架的各种解释,我-----都-----看------不------懂----,没办法,见面就是刚. 目的:如题,试水 目标:< ...

  7. block的各种定义

    1.作为变量 //block 的申明,定义,调用,block快捷方式inline //<#returnType#>(^<#blockName#>)(<#parameter ...

  8. 1.Why Apache Spark?

    Why Apache Spark? 1 Why Apache Spark 2 关于Apache Spark 3 如何安装Apache Spark 4 Apache Spark的工作原理 5 spark ...

  9. Java之IO流补充

    IO流例子 package com.hanqi.maya.util; import java.io.BufferedReader; import java.io.BufferedWriter; imp ...

  10. MySQL系列(四)---引擎

    MySql中的引擎 目录 MySQL系列(一):基础知识大总结 MySQL系列(二):MySQL事务 MySQL系列(三):索引 引擎种类 FEDERATED MRG_MYISAM MyISAM BL ...