热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

地图性能测试利器PerfQAAnalyzer

PerfQAAnalyzer作为一个地图性能测试工具,能针对ArcGIS技术堆栈的系统进行性能问题的排查,用于系统试运行阶段的压力测试以及在线系统运维。大大减轻了GIS系统管理

 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

 


推荐阅读
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • 本文介绍了Hyperledger Fabric外部链码构建与运行的相关知识,包括在Hyperledger Fabric 2.0版本之前链码构建和运行的困难性,外部构建模式的实现原理以及外部构建和运行API的使用方法。通过本文的介绍,读者可以了解到如何利用外部构建和运行的方式来实现链码的构建和运行,并且不再受限于特定的语言和部署环境。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 本文介绍了在Oracle数据库中创建序列时如何选择cache或nocache参数。cache参数可以提高序列的存取速度,但可能会导致序列丢失;nocache参数可以避免序列丢失,但在高并发访问时可能导致性能问题。文章详细解释了两者的区别和使用场景。 ... [详细]
  • 如何在php文件中添加图片?
    本文详细解答了如何在php文件中添加图片的问题,包括插入图片的代码、使用PHPword在载入模板中插入图片的方法,以及使用gd库生成不同类型的图像文件的示例。同时还介绍了如何生成一个正方形文件的步骤。希望对大家有所帮助。 ... [详细]
  • 本文介绍了OkHttp3的基本使用和特性,包括支持HTTP/2、连接池、GZIP压缩、缓存等功能。同时还提到了OkHttp3的适用平台和源码阅读计划。文章还介绍了OkHttp3的请求/响应API的设计和使用方式,包括阻塞式的同步请求和带回调的异步请求。 ... [详细]
  • 篇首语:本文由编程笔记#小编为大家整理,主要介绍了软件测试知识点之数据库压力测试方法小结相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 上图是InnoDB存储引擎的结构。1、缓冲池InnoDB存储引擎是基于磁盘存储的,并将其中的记录按照页的方式进行管理。因此可以看作是基于磁盘的数据库系统。在数据库系统中,由于CPU速度 ... [详细]
  • Asp.net Mvc Framework 七 (Filter及其执行顺序) 的应用示例
    本文介绍了在Asp.net Mvc中应用Filter功能进行登录判断、用户权限控制、输出缓存、防盗链、防蜘蛛、本地化设置等操作的示例,并解释了Filter的执行顺序。通过示例代码,详细说明了如何使用Filter来实现这些功能。 ... [详细]
  • 本文讨论了在手机移动端如何使用HTML5和JavaScript实现视频上传并压缩视频质量,或者降低手机摄像头拍摄质量的问题。作者指出HTML5和JavaScript无法直接压缩视频,只能通过将视频传送到服务器端由后端进行压缩。对于控制相机拍摄质量,只有使用JAVA编写Android客户端才能实现压缩。此外,作者还解释了在交作业时使用zip格式压缩包导致CSS文件和图片音乐丢失的原因,并提供了解决方法。最后,作者还介绍了一个用于处理图片的类,可以实现图片剪裁处理和生成缩略图的功能。 ... [详细]
  • 本文介绍了操作系统的定义和功能,包括操作系统的本质、用户界面以及系统调用的分类。同时还介绍了进程和线程的区别,包括进程和线程的定义和作用。 ... [详细]
  • Todayatworksomeonetriedtoconvincemethat:今天在工作中有人试图说服我:{$obj->getTableInfo()}isfine ... [详细]
  • 单页面应用 VS 多页面应用的区别和适用场景
    本文主要介绍了单页面应用(SPA)和多页面应用(MPA)的区别和适用场景。单页面应用只有一个主页面,所有内容都包含在主页面中,页面切换快但需要做相关的调优;多页面应用有多个独立的页面,每个页面都要加载相关资源,页面切换慢但适用于对SEO要求较高的应用。文章还提到了两者在资源加载、过渡动画、路由模式和数据传递方面的差异。 ... [详细]
  • Activiti7流程定义开发笔记
    本文介绍了Activiti7流程定义的开发笔记,包括流程定义的概念、使用activiti-explorer和activiti-eclipse-designer进行建模的方式,以及生成流程图的方法。还介绍了流程定义部署的概念和步骤,包括将bpmn和png文件添加部署到activiti数据库中的方法,以及使用ZIP包进行部署的方式。同时还提到了activiti.cfg.xml文件的作用。 ... [详细]
author-avatar
让牙齿晒晒太阳诱惑
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有