ArcGIS Server 性能测试报告.doc
文本预览下载声明
ArcGIS Server 性能测试方法及结果报告
(仅限内部参考)
测试人员
许晓辉
文档
测试目标
初步了解ArcGIS Server的性能,探索理想的ArcGIS Server部署方法。比较ArcGIS Server与ArcIMS的响应速度。力求用实用的方法,获得第一手数据,为ArcGIS Server的推广提供可参考得依据。
测试环境
参与测试的有4台微机:
机器名
硬件配置
相关软件
PSDServer
Intel Core2 CPU 双核2.4GHZ , 3.5G memory
Windows 2003 Server, ARCIS Server 9.2 SP3, ArcSDE 9.2 SP3, Oracle10g,ArcGIS Server 9.2 not net ADF SP3, VS2005.
Esri-nobody
Intel Core2 CPU 双核 1.83GHz, 2G memeory
Windows XP sp2, ArcGIS Server 9.2 SP2
xxh
Intel CPU 1.66GHz ,双核,2G memory
Windows XP sp2, ArcGIS Server 9.2 SP2
Esri-test3
AMD Opteron (tm) Processor 144, 2.4GHZ, 2G memory
Microsoft Application Center Test (MS ACT) 1.0
测试方法及工具简介
测试数据源
地图文件beijingtest.mxd,按照制图要求,有渲染,有最大最小比例以及较多的标注,但标注不使用特殊效果,以减少服务器负担。地图数来源于PSDServer上的ArcSDE的北京数据, 数据比较多的图层有道路图层(25343条记录,主要单位(14500条记录)和居民区图层(约50万条记录)。
将此地图发布到为ArcGIS Server的service,名为beijingtest, 并做了10级cache.
地图文件Road.mxd, 包含一层数据,即PSDServer上ArcSDE中的北京道路图层,发布为ArcGIS Server的Service,名为Road, 不作cache.
后面测试都是基于这两个服务展开。
测试工具
传统的网站(如ArcIMS HTML Viewer)都是无状态的,即每次Http请求之间没有状态要传递,那么用Load runner等工具可以录制测试脚本,进行测试。
但ArcGIS 的 ADF是有状态的,状态保存在Session里面,现有的录制软件无法录制Session中的状态。
HTML
HTML
服务器
客户端
HTTP
HTTP
Session
.Net ADF
SessionID
SessionID
所以只能通过遍程序来实现动态SessionID的获取和传递。我们选择Microsoft Application Center Test 1.0作为测试软件。
通过fiddler2.0来截取原始的Http请求,转换后,在MS ACT中调试运行。
通过调试,在ACT中将一些无关请求去掉,例如开始页中一些无用却耗时的请求,力求使得测试贴近实际使用情况。
测试脚本
地图操作:起始页,放大X2 ,漫游X 2,全图。共6个操作
Think time设置为4到8秒的一个随机数,大约为6秒。
测试的网站基于Dot net ADF,通过VS2005进行一些修改。
计算每次地图操作所用时间的方法:
t=迭代时间,m=迭代次数, u=客户端数量, tt=脚本中think time的次数, tt_v=think time的值, a=脚本中地图操作的数量
每次地图操作平均响应时间 = (t*u-m*tt*tt_v) / (m*a)
测试项目
注意:测试中所有与时间有关的项目全部以秒为单位。
ArcGIS Server 不用Cache 技术的情况下的性能:
说明:为了测试没有Cache情况下服务器负载和响应情况,将beijingtest的cache去掉。并将其初始最小instance设置为20。
结果:30个并发用户CPU达到了97%。所以就测试到30个用户。
客户端响应情况:
用户数
迭代时间
地图操作响应速度
10
300
2.196721311
20
300
4.989010989
30
300
10服务器的资源使用情况:
用户数
服务器CPU
服务器网络
内存
10
63
180000
63
20
90
262000
63
30
97
253000
64
20个并发时服务器的CPU&内存:
20个并发时服务器的各个进程使用CPU和内存情况:
ArcGIS Server 使用Cache 情况下的性能:
说明:测试Be
显示全部