ArcGIS Server管理与性能优化
- 格式:pptx
- 大小:7.73 MB
- 文档页数:55
ArcGIS Server性能优化1影响时间的关键因素1.1客户端到Web服务器传输时间这部分取决于网络环境,从软件角度我们没有什么工作可以做,增加带宽就可以。
1.2服务器端的请求排队时间随着服务的增多和用户访问频率的加快,请求排队时间的影响将越来越明显。
因此将请求负载服务独立出来就很有必要,这就是所谓的负载均衡,也就是分布式部署。
目前我们在这一块没有做太多的工作,可以采用server本身就支持的分布式部署来提升性能。
1.3地图渲染时间1.3.1图层数目图层数据越多,渲染时间越长,因此应该根据具体的应用情况整合、合并部分图层。
1.3.2符号的复杂化显示符号越复杂,渲染时间越长,因此要尽量避免复杂的符号,多使用简单符号。
具体的原则为:使用简单线型、使用宽度较小的线型、使用实色填充模式。
1.3.3显示比例设置合适的显示比例,在满足实际应用的情况下,一般将显示比例设置的尽能大。
1.3.4图片大小和格式渲染时间与要素数量成正比,越大的图片写磁盘需要更长的时间。
根据项目具体应用,尽量采用合适的图片格式如png、gif等。
1.4数据库查询时间1.4.1设置合适的空间索引和属性索引ArcGIS支持三级空间索引,设置合适的空间索引是加快访问速度的关键因素1.4.2删除不必要的字段和记录字段越短越好,字段数据量越小越好1.4.3优化查询代码通过编写高效的查询代码来避免重复低效的查询。
1.4.4大表拆分为小表当表的数据量较大时,应该考虑拆分,可以横向拆分(分区)、纵向拆分(按类型分表)。
1.4.5尽量使用影象压缩技术或采用金字塔结构1.5采用缓存机制采用缓存机制,缓存客户端和服务器端的内容,可以减少数据库的访问次数和网络传输往返次数。
1.6采用MSDMSD是ArcGIS Server 9.3.1最新支持,它使用一种更快的地图渲染引擎,速度更快,效果更好。
1.7平台因素采用高性能或高版本的平台。
ArcGIS Server性能调整ArcGIS Server产品的强大功能往往给了有些用户带来一定的认识误区。
有些用户会认为可以把c/s程序的使用模式和数据照搬到ArcGIS Server的应用系统中.。
ArcGIS Server的应用是b/s的应用,软件角度来讲涉及到数据库,web server,ArcGIS Server,浏览器,任何一个环节都有可能出现问题,所以ArcGIS Server系统需要很好的设计和规划,简单的功能移植只能得到低效率的ArcGIS Server应用。
其实ArcGIS Server的应用系统往往都比较大,特别是数据量都比较大。
用户都希望把大量的数据都通过网络共享给广大的浏览器用户。
由于ArcGIS Server简单功能的系统的构建是非常简单的,用户很容易就搭建出来了,因此当用户把大量的数据往ArcGIS Server系统上搬时并发现速度非常慢时,用户往往会认为是ArcGIS Server产品的速度慢,因此性能调整的考虑角度也仅仅从ArcGIS Server产品角度入手,这也给ArcGIS Server系统的性能调整带来一定的误区,忽略了ArcGIS Server系统中的重要组成部分――数据的性能。
当然,不同应用系统有不同的情况,因此在性能调整方面都要看具体系统情况,这里我们只是大致介绍一下ArcGIS Server应用性能调整的几个大的考虑方面:1 硬件和网络方面这方面我们不做过多的介绍2 数据方面1)数据量角度ArcGIS Server应用毕竟是b/s程序,网络传输很容易使它的性能瓶颈,除了增加网络带宽之外,当然也尽量要减少数据量,主要的原则是按需使用数据。
比如在对数据进行了分析之后,发现数据节点非常密,在不影响数据的浏览精度的情况下使用简化操作,减少数据量。
2)数据组织角度如果是文件方式的话,就没有什么可调整性,如果是sde中的数据,那么主要从两个方面对数据进行调整,一个是属性字段的索引,一个是空间索引大小的调整。
管理ArcGIS Server两种常见的方法一、常用的发布服务的方式是在catalog中发布,便于管理和查看,但在catalog中发布服务,必须在catalog中添加新服务,具体步骤是:1、打开Arcgis Catalog开始--ArcGIS--ArcCatalog,展开Gis Servers,双击“Add ArcGis Server”出现下图,选择Manage GIS Services;2、下一步,输入URL或主机名3、完成,可见主机状态及其服务4、添加新服务:可以直接找到发布服务的工作空间右键-发布,也可以用新添加的服务发布5、输入服务名称,选择发布服务的类型,默认的是启动刚刚发布的服务,然后下一步6、指定地图文件,其他选项可以根据要求设置,一般默认即可,一直下一布直到发布成功。
查看发布地图结果二、Web方式管理ArcGIS Server1、右键程序,arcgis,打开arcgis server manager选项,登录,(用agsadmin组的成员登录,格式为domain"user,如test"admin,password,这里test为机器名,admin是本地管理员帐户(将test加入agsadmin组和agsusers组后正常登录就可以管理ArcGIS Server:控制面板->管理工具->计算机管理->本地用户和组->组->agsadmin,agsusers);输入正确的用户名、密码后就进入ArcGIS SOM管理登录页面(发现:空密码实际并非支持)。
2、登录后的页面3、创建新服务,add new service-输入新服务名称—选择服务类型4、指定地图文件5、一直next直至finished,最后启动该服务即可(注:这里都是选择了默认设置,是池式,池化服务和非池化服务的区别以后再讲)。
预览结果服务发布完成。
ArcGIS Server 是一个基于Web 的企业级GIS 解决方案,它从ArcGIS 9.0 版本开始加入ESRI 产品家族。
ArcGIS Server 为创建和管理基于服务器的GIS 应用提供了一个高效的框架平台。
它充分利用了ArcGIS 的核心组件库ArcObjects ,并且基于工业标准提供WebGIS 服务。
ArcGIS Server 将两项功能强大的技术--GIS 和网络技术(Web )结合在一起,GIS 擅长与空间相关的分析和处理,网络技术则提供全球互联,促进信息共享。
这两项技术协同工作,相得益彰。
ArcGIS Server为我们带来了许多可喜的变化。
与过去的WebGIS产品相比,它不仅具备发布地图服务的功能,而且还能提供灵活的编辑和强大的分析能力,这对于WebGIS发展可以说是具备里程碑意义的。
由于ArcGIS Server基于强大的核心组件库ArcObjects搭建,并且以主流的网络技术作为其通信手段,所以它具有许多令人欣慰的优势和特点,列举一二如下:2 集中式管理带来成本的降低。
无论是从数据的维护和管理上还是从系统升级上来说,都只需要在服务器端进行集中的处理,而无需在每一个终端用户上做大量的维护工作,这不但极大的节约投入的时间成本和人力资源,而且有利于提高数据的一致性。
2 瘦客户端也可以享受到高级的GIS 服务。
过去只能在庞大的桌面软件上才能实现的高级GIS 功能的时代终止于ArcGIS Server 。
通过ArcGIS Server 搭建的企业GIS 服务使得客户端通过网络浏览器(IE ,Netscapes )即可实现高级的GIS 功能。
2 使WebGIS 具备了灵活的数据编辑和高级的GIS 分析能力。
用户在野外作业时可以通过移动设备直接对服务器端的数据库进行维护和更新,大大减少了回到室内后的重复工作量,为野外调绘和勘察提供了极大的便利。
另外,ArcGIS Server 可以实现网络分析和3D 分析等高级的空间分析功能。
ArcGIS Server地图服务性能优化策略作者:俞亮,周吉金来源:《科技资讯》 2015年第8期俞亮周吉金(浙江省地理信息中心浙江杭州 310012)摘要:ArcGIS Server是一个用来构建集中管理、支持多用户的企业级GIS应用平台。
由核心的ArcObjects构建,是对ESRI其他两个应用服务器ArcSDE和ArcIMS的一个补充。
数字城市地理信息公共服务平台利用AGS提供的地图服务发布和管理功能,实现了海量空间数据的处理、发布、分享、管理业务。
ArcGIS Server的性能直接影响公共服务平台的使用性能。
影响ArcGIS Server地图服务性能的因素有很多,该文通过优化配置服务参数、调整地图数据显示、优化地图文档结构等多种手段对ArcGIS Server的地图服务进行优化,可以大幅提高地图服务的访问性能。
关键词:ArcGIS Server 地图服务性能优化地图缓存中图分类号:TP31 文献标识码:A 文章编号:1672-3791(2015)03(b)-0018-02①作者简介:周吉金(1984,12—),男,江西上饶人,硕士学历,工程师,研究方向:地理信息系统。
通讯作者:俞亮(1982,6—),男,浙江杭州人,本科学历,工程师,研究方向:地图学与地理信息系统。
随着数字城市建设的不断加快,越来越多的行业部门的应用系统通过调用数字城市地理信息公共服务平台提供的基于ArcGIS Server平台发布的地图服务实现了和数字城市的对接。
应用系统用户数量的不断增加,公共服务平台的地图服务负载压力越来越大,地图浏览速度逐渐变慢、数据查询性能降低。
为了提高地图服务的性能,笔者通过多种手段对地图服务进行优化,在一定程度上提高了地图访问速度。
根据实践经验,该文作者对一些优化策略进行了归纳,和大家一起分析探讨。
1 影响ArcGIS Server地图服务性能的几个因素影响ArcGIS Server地图服务性能的因素有很多,主要有以下几个因素。
1 Manager进程使用的网络端口(Windows) (2)2 Manager进程使用的网络端口(Linux/Solaris) (2)2.1 默认显示端口,DISPLAY:600,可以被修改 (3)2.2 RPC端口 (4)Monitor (5)2.3 2422–3 GIS服务器如何工作 (6)server (7)3.1 GISdirectories (8)3.1.1 Serverserver启动的进程 (8)3.1.2 GIS3.1.3 监测SOC机器的状况 (8)server (9)3.2 Web3.3 Clients (10)4 Windows平台的网络环境 (11)server组件配置指南 (11)5 ArcGIS5.1 关于SOM的建议 (12)5.1.1 选择一台SOM机器 (12)5.1.2 Using a failover or round-robin configuration (12)5.1.3 SOM帐号 (12)5.1.4 添加用户到agsadmin和agsusers组 (12)5.2 关于SOC建议 (12)5.2.1 SOC机器以及ArcGIS Server的许可 (13)5.2.2 添加和删除SOC机器 (13)5.2.3 给SOC帐号授权 (13)5.2.4 输入SOC名称 (14)5.3 关于Web servers的建议 (14)5.4 帐号和权限 (14)5.5 深入阅读 (16)6 预计和考虑用户 (16)6.1 用SOC机器来容纳更多用户 (17)6.2 调整服务属性来容纳更多用户 (17)7 优化和配置服务 (18)7.1 Pooling (18)7.1.1 池化的服务 (18)7.1.2 非池化的服务 (19)7.2 回收 (20)7.3 隔离级别 (21)7.4 超时 (22)7.5 通过Capacity参数限制服务器的负载 (23)7.6 服务器如何根据需求调整:Pool shrinking (23)7.7 限制用户对服务的操作 (24)1Manager进程使用的网络端口(Windows)ArcGIS Server Java的Manager系统占用了许多网络端口给GIS 服务和部署的应用程序使用。
ArcGIS Server应用程序优化飞行石(spediacn@)摘要本文主要根据作者开发与配置经验分析基于平台的ArcGIS Server的性能优化与代码开发优化。
讲述如何设置地图缓存、设置缓存图像格式、使用合适的地图服务连接方式、ArcGIS Server中一些对象属性的设置、服务器环境配置等内容,尽可能地使得ArcGIS Server程序性能达到最大化。
关键词ArcGIS, 优化, 缓存, 地图服务简介ArcGIS Server主要用于向各种客户端提供集中部署的GIS功能、应用和数据。
它提供了一整套框架,可供开发人员创建含有GIS功能的Web应用程序和服务,我们可以通过手机终端、桌面程序、浏览器甚至进行再次开发来访问和使用这些发布的GIS Web应用程序和服务。
ArcGIS Server由一个GIS服务器(GIS Server)和应用程序开发框架(ADF)组成。
GIS 服务器含有两个基本元素:服务器对象管理器(Server Object Manager,简称SOM)和服务器对象容器(Server Object Container,简称SOC);应用程序开发框架分别支持.NET和Java开发框架。
ArcGIS Server提供了一套基于Web的管理工具,包含服务或数据的部署和发布,服务器属性设置、负载均衡设置、网站快速生成以及安全设置等功能;ArcGIS Server还提供了一套完整的基于 2.0/3.5的控件包,开发人员可以通过少量代码就可实现许多复杂的地图功能。
设置地图缓存几乎所有大访问量的GIS信息网站提供的地图数据都是经过缓存的,通过设置地图缓存可以极大地减少服务器端地图图像的绘制时间。
设置地图缓存最常见的方式就是进行“切片”,将各个比例尺的地图数据进行预读处理,将显示的图像切割为固定大小的图片集合(如256×256,或者512×512),按一定的规则存储在磁盘阵列上。
ArcGIS Server分布式部署和性能优化分布式部署•ArcGIS Server应用部署中总共有这个几个部分:WebServer,SOM,SOC,DataServer•单层结构•双层结构•三层结构具体部署中注意的问题•SOM和SOC机器上的用户名和密码相同•Mxd以及数据源所在目录的权限•输出图片的目录的权限•发布服务时候的参数要使用UNC目录性能优化ArcGIS Server: Response time factors•Four main factors of response time•Multiple tiers•Performance bottleneck can occur in each tierBrowserWeb ServerSOMSOCArcSDE TransmissionTimeWait TimeSearch &Retrieval TimeUsage TimeSDE数据方面•数据量对数据进行分析,在可能的情况下,对数据进行一些简化操作•数据组织角度属性字段索引,空间索引大小的调整Mxd数据的组织(对动态服务而言)•较少数据图层•图层按比例控制•使用annotation来代替label•减少复杂符号General Guidelines•Show relevant information–Start simple (additional layers can be toggled on by user)–Use field visibility (hide unnecessary attributes)•Use scale dependencies–Use data appropriate for the given scale (generalize ifnecessary)–Display similar number of features at all scales forconsistent user experiencePoint, Line & Polygon rendering For non-cached, dynamic layers •Points–Use single layer Simple or Character markers for best performance–Use EMF instead of bitmaps–Use Integer (vs. character) fields for symbol values–Avoid halos, complex shapes, masking•Line & Polygons–Use ESRI_Optimized style–Avoid cartographic lines (also includes polygon outline!)ESRI_Optimized•For lines & polygons•Outlines for all fillsare simple linesinstead ofcartographic lines•Picture fills are emf-based instead of bmp-based •Improves drawing performance by > 50%Best PracticesText and labeling•Use annotation instead of labels•Use indexed fields (reduce label SQL querynumber and complexity when possible)•Use label and feature conflict weights sparingly •Avoid special effects (fill patterns, halos,callouts, backgrounds)•Avoid very large text size (60+ pts)•Avoid Maplex for dynamic labeling•Avoid overuseSymbolizing data effectively: Labels / Text •Use larger size•Use wider line and character spacing•Use sans serif, open-letter fonts•Minimize special effects (e.g. italics)•Minimize text backgrounds (e.g. callout boxes)•Don’t overuse Labels–ID tool can be used–Use scale dependency服务的组织•不要把所有的图层都放在一个服务中,图层很多的情况下可以分放在不同的服务中,这样可以使用多进程来完成所需请求,从而提高相应速度服务的设置(一)•池化的服务性能会超过非池化,因此在功能许可的情况下,尽可能使用池化服务•在使用编辑等一定要使用非池化的服务的情况下,要尽可能的把非池化的服务中的图层减少,而把他们增加到池化服务中服务的设置(二)•使用MapCache,这是一个非常有效的提高客户端的用户感受的方法•在创建cache的时候,如果第一次出现错误,可以使用updatecache来进行弥补瓶颈•CPU •MemoryCpu 瓶颈:动态服务的池化实例的最优个数•Set instances to level where maximum throughput occurs (usually between 2 to 4 instances per CPU)CPU bottlenecknumber of instancesT h r o u g h p u t (m a p s /h o u r )NMemory 瓶颈Memory Bottleneck –Solutions •Increase physical memory•Limit capacity on host machinesSetting Capacity•Limits number of service instances running on a specific host machine.•Once this limit is reached, Server starts replacing least recently used instances instead of creating new ones.•Serve large number of services only part of which are used at any point in time–Usage sliding from European to U.S. map services over time.–Supports “limited resource” scenario•Serving a large library of maps•Individual services rarely usedBuilding Map Service Cache •Renders 4K x 4K images–1 GB consumed by just 3 processes •Options to resolve–Increase memory to 2 or 3 GB–Reduce number of instances per serverMemory and CPU usage by Service Type–Dynamic map service•CPU Usage = High•Memory = Low*–Static Map and Globe services•CPU Usage = Low•Memory = Low–Editing map service•CPU Usage = High•Memory = High•Database connections = High–Geoprocessing service•CPU = High•Memory = High•I/O = HighDetecting Bottlenecks•Single user testing is inadequate •Simulating multiple users–Low Tech:•Recruit others in the office and synchronize over the phone –High Tech: Load simulation toolLoad Simulation Tool•Build–Code your own test harness•Buy–Price: (free/bundled to $100K or more)–Technical vs. Functional–Microsoft•Web Application Stress Tool (WAST)•Application Center Test (ACT)•Visual Studio 2005 Team Edition for TestersMeasuring Web Performance •Client Response Time–How “fast” does web application appearto remote browser hitting the site–Response Time (average, 75th percentile, max)•Machine Throughput–Measured in requests/sec–Determines number of servers you need to buyVisual Studio 2005 Team System•Tester tools are now onpar with DeveloperTools•Unit, Web, Load, andManual tests•Measures codecoverageVS 2005 –Recording a Web Test• A series of HTTP URLs that can be created or recorded from a browser session.Monitor Statistics and Log Files •Creation Time•Wait Time•Usage TimeLog File Behavior•Modify Log Level in Server.cfg–0 (None): No logging– 1 (Error): Serious problems– 2 (Warning): Additional errors.– 3 (Normal): Common administrative messages of the server, warnings, and errors are logged.– 4 (Detailed): Common messages from user use of the server, including server objects, normal messages, warnings, and errors arelogged.– 5 (Debug): Verbose messages to aid in troubleshootingQuestions?High Availability Configuration。
实验二ArcGIS Server应用与管理【实验目的】1.掌握使用ArcCatalog客户端管理GIS服务的方法;2.掌握使用ArcGIS Server Manager管理GIS服务的方法;3.掌握利用ArcCatalog发布GIS服务的几种方法;4.掌握授予用于发布服务的GIS资源访问权限的方法;5.掌握使用msd文档发布地图服务的方法;6.掌握创建地图服务缓存的方法;7.掌握ArcGIS Server REST API的概念和相关操作方法。
【实验内容】一、使用ArcCatalog客户端管理服务1. 启动ArcCatalog程序。
2. 打开任务管理器,查看ArcCatalog.exe进程的启动用户名,如图,用户名为aphrodite659。
使用ArcCatalog链接ArcGIS Server,实质上是连接SOM,如果ArcCatalog与ArcGIS Server运行在同一台机器上,要求aphrodite659用户位于agsadmin组中,才能连接成功。
3. 在ArcCatalog中双击“Catalog”窗口中的“Add ArcGIS Server”节点,弹出添加ArcGIS Server窗口。
在窗口中选择“Use GIS Services”创建的链接只能对服务进行浏览,不能创建、停止、启动、删除服务。
选择“Manage GIS Services”创建的链接可以执行最高权限的操作,这里选择“Manage GIS Services”。
4. 输入URL地址“http://localhost/arcgis/services”和SOM的主机名“localhost”。
5. 连接成功后,可以看到一个localhost(admin)的节点。
二、使用ArcGIS Server Manager管理服务1. 从“开始”→“ArcGIS”→“ArcGIS Server for the Microsoft .NET Framework”→“ArcGIS Server Manager”启动基于Web的应用程序ArcGIS Server Manager。
基于ArcGIS的GIS应用服务平台性能调优张志强(天津中科遥感信息技术有限公司,天津,300384)摘要:基于ArcGIS开发的WebGIS应用平台,其性能问题是衡量系统优越性的标准之一,所以需要通过多种手段调优系统,来保证系统的正常稳定运行。
本文从多个角度调整GIS应用服务平台,保证平台的正常运行。
关键词:WebGIS、ArcGIS、系统性能优化1.概述传统的GIS系统多数以C/S结构开发建设,不能满足GIS网络化使用的需要。
随着WebGIS 应用的展开,服务的性能正逐渐成为制约WebGIS发展的瓶颈。
当前WebGIS实现方式主要有胖客户端和瘦客户端两种方式。
在胖客户端方式下,空间数据的绘制与操作是在客户端进行的,而在瘦客户端的方式下,客户端看到的是服务器端渲染好的某种格式的图片,操作也是有服务器端进行处理。
这两种方式都有各自的特点,但是考虑到实际运用中用户体验性和数据保密性等要求,一般采用瘦客户端方式开发。
在实际工作中,由于数据量大、使用频繁,平台的服务负载较为沉重,平台服务性能问题是制约平台建设的瓶颈问题,也是衡量平台建设的标准之一,应采用多种方式保证平台服务性能。
2.平台部署结构平台采用ESRI公司的ArcGIS 9.3系列软件搭建,采用Oracle 10g作为平台使用的数据库系统。
平台包括多层架构,系统总体结构从下到上主要分为网络层、数据层、功能层和应用层。
平台的调优可以从多个层次进行,包括数据层、功能层和应用层等。
3.系统性能优化方案3.1.对于数据库和ArcSDE进行优化文献[1]研究了基于Oracle和ArcSDE的空间信息访问的优化操作,分别从操作系统、内存、磁盘I/O等多方面进行了性能的改进和优化。
其优化原则是将访问频繁的文件分开放置到不同的硬盘上,降低磁盘I/O竞争。
在工作中,可以使用磁盘阵列的方式,将一份文件分割存于几个硬盘上,提高磁盘吞吐量和速度,同时为表和索引建立不同的表空间,建立和调整ArcSDE的空间索引等方式对数据库和ArcSDE进行性能优化。