迁移至 ArcGIS 10.1 for Server
此主题提供从 ArcGIS Server 10 移动到 ArcGIS 10.1 for Server 时需要考虑的事项的参考。如果已准备好开始迁移,则可按照迁移一览表开始工作。如果只对版本之间发生的变更感兴趣,请参阅新特性之 ArcGIS 10.1 for Server。
迁移方法
迁移至 ArcGIS 10.1 for Server 的最简单的方法是在新计算机或计算机组上安装它。这允许您在创建新 ArcGIS Server 站点时返回和参考现有应用程序和服务属性。由于可设置 10.1 站点并在准备好时立即将流量重定向到该站点,因此也能够将停机时间降到最低。
其他方法,即将计算机迁移“到位”,则在卸载 10.0 软件、安装 10.1、重新部署服务(非自动)和更新应用程序时需要一些停机时间。到位迁移需要您在进行卸载之前对服务配置多加注意。迁移一览表包含应记录的基本属性和应备份的文件的列表。
如果必须执行到位迁移,则建议您在试图在生产服务器上执行过程之前,先在开发服务器或虚拟计算机上进行实践。
GIS 服务器和服务
保留 10.0 服务器 URL
默认情况下,ArcGIS 10.1 for Server 通过端口 6080 发布 Web 服务,使用的站点名称为“arcgis”。在 10.1 中创建的服务的服务 URL 中将包含端口 6080 和“arcgis”。例如:
ArcGIS for Server 版本 | URL 示例 |
---|---|
10 | http://myserver.domain.com/planners/rest/services/MyMapService/MapServer |
10.1 | http://myserver.domain.com:6080/arcgis/rest/services/MyMapService/MapServer |
如果希望保留 10.1 中的版本 10 服务器 URL,则应安装 ArcGIS Web Adaptor。Web 适配器用于将 ArcGIS Server 与企业级 Web 服务器相连,从而允许您配置与 ArcGIS 10 部署相匹配的站点 URL。有关详细信息,请参阅关于 ArcGIS Web Adaptor。
迁移服务
服务不会在 10 和 10.1 之间自动迁移。服务的迁移方式就是使用 10.1 中新的发布模式来重新创建服务。在 10.1 版本中,您尝试发布的项目会经过更为严格的分析过程,从而确保它们已准备好以有效的方式暴露 (expose) 到服务器上。虽然完成此分析过程需要花费一定的时间,但是这有助于您根据 10.1 中发生的各种更改来调整服务。同时,您还有可能发现用于提高服务性能的方法。
非池化服务在 10.1 版本中不可用。在 10.1 中重新发布服务时,所有服务都将被池化。非池化服务通常用于支持 Web 编辑工作流。池化要素服务可用于实现相同类型的操作。
迁移地图和 globe 缓存
在 10.1 中,可以使用在版本 ArcGIS Server 10 以及更早版本中创建的地图和 globe 缓存。唯一的例外情况是多图层缓存,10.1 版本中不支持这种缓存方式。如果存在多图层缓存,则应将其重新构建为一系列独立的融合缓存。
按照以下步骤迁移地图缓存:
- 在 10.1 版本的 ArcGIS Server 站点上,创建一个引用保存 10.0 版缓存的文件夹的服务器缓存目录。有关创建服务器缓存目录的说明,请参阅在管理器中创建服务器目录。此外,也可以将 10.0 版本的缓存迁移至现有的服务器缓存目录中。10.1 版本的所有 ArcGIS Server 站点创建时都至少具有一个服务器缓存目录。
- 在 ArcMap 中使用文件 > 共享为 > 服务向导开始创建与现有缓存同名的服务。打开“服务编辑器”对话框后,停止并继续进入下一步。此时先不要单击发布。如果现有缓存的名称带有下划线,则意味着需要在 GIS 服务器文件夹中按照模式 <文件夹名称> _ <服务名称> 来创建服务。
- 在 服务编辑器 对话框的 缓存 选项卡中,修改缓存目录属性以指向在步骤 1 中注册的迁移缓存目录。
- 在 服务编辑器 对话框的 缓存 选项卡中,修改最小和最大缓存比例的滑块,从而会将具有现有切片的所有比例包括在内。
- 在 服务编辑器 中,单击发布以发布服务。
迁移缓存脚本
如果通过地理处理脚本执行地图或 globe 缓存的创建和更新,请注意在 10.1 版本中,缓存工具集的许多工具中的参数顺序、名称和数据类型已更改。应仔细检查地理处理工具参考主题和示例以了解如何更新脚本。
将代码迁移至服务器对象扩展 (SOE)
在 ArcGIS 10.1 for Server 之前,许多开发人员都通过 Web ADF 建立本地 (DCOM) 连接来访问 ArcObjects。从 10.1 版本开始,这种与 ArcGIS Server 的本地连接将不再可用。我们建议您开发服务器对象扩展 (SOE) 并将其作为 REST web 服务暴露 (expose) 出来。通过 SOE 增强的 GIS 服务可显示在 ArcGIS 服务目录中,并可通过 ArcGIS Web API 加以使用。
有关开发 SOE 的详细信息,请参阅什么是服务器对象扩展?
迁移现有 SOE
如前一部分所述,依赖于 ArcGIS Server Local 连接的 SOE 在 10.1 版中不可用,必须进行重构,才能将其作为 REST 或 SOAP web 服务使用。
如果已使用版本 10 或更早版本开发 REST 或 SOAP web 服务 SOE,必须使用 64 位库的引用构建或重新构建 SOE,然后才能与 10.1 版一起使用。您也必须将 SOE 作为 .soe 文件进行打包,从而可将它部署到 ArcGIS 10.1 for Server。可以使用 10.1 随附的 SOE 的 IDE 模板实现此打包操作。有关说明,请参阅将 Java 服务器对象扩展迁移至 10.1 和将 .NET 服务器对象扩展迁移至 10.1。
如前一部分所述,依赖于 ArcGIS Server Local 连接的 SOE 与 10.1 版本不兼容,必须进行重构,才能作为 REST 或 SOAP web 服务使用。
迁移安全部署
ArcGIS Server 不会尝试从以前的版本自动迁移安全性设置。这是因为 ArcGIS Server 无法识别有关先前安装的安全性配置的充足信息,难以保证完整地迁移安全性设置。如果在 SQL Server 中管理 ArcGIS Server 10 安全性存储,则通过按照在 10.1 中使用 10.0 .NET SQL Server 安全性存储主题中的说明进行操作,可将其手动迁移到 10.1。
安装 10.1 版本时已启用了安全性,默认情况下,允许匿名用户使用您的服务。您可以随时登录管理器,并指定要用于安全性设置的用户和角色存储。随后,可对服务应用较为严格的权限。有关详细信息,请参阅配置 ArcGIS Server 安全性。
迁移 web 应用程序
在版本 10.1 中,ArcGIS Server 管理器只关注服务的托管和管理。而不再构建 web 应用程序。如果希望在不必编写代码的情况下构建 GIS Web 应用程序,可使用 ArcGIS Viewer for Flex 或 ArcGIS Viewer for Silverlight。这两种应用程序中都包含了交互式应用程序构建器,允许您通过指向并单击选取所需功能来设计 Web 应用程序,这与在先前版本中使用管理器构建 Web 应用程序的方式非常相似。
如果要在不构建和托管完整应用程序的情况下在 Web 上共享地图,可使用 ArcGIS.com 地图查看器。这是一个用于在线创建和共享基于 Web 服务的地图的在线画布。要了解入门知识,请访问 ArcGIS.com 并单击地图。
先前版本的 ArcGIS Server 中所附带的 web 应用程序开发框架 (ADF) 已被弃用,开发人员在编写新的 web 应用程序时应使用任一种 ArcGIS web API(如 JavaScript、Flex 和 Silverlight)。之前通过 ADF 完成的打印、编辑和其他任务,现在可使用 ArcGIS web API 轻松完成。
ADF 将继续作为独立的安装程序(称为 ArcGIS Web Applications)包含在 ArcGIS 10.1 for Server 中。ADF 继续存在只是为了支持遗留应用程序。安装程序中包括 ArcGIS Web Applications 管理器,以及用于查看和修改 web 应用程序的旧版管理器。
已弃用的功能
ArcGIS 10.1 for Server 中已移除对以下项目的支持,因此,您需要对服务和应用程序进行相应调整:
个人地理数据库
由于 64 位应用程序环境中缺少可扩展性,ArcGIS 10.1 for Server 不再支持基于 Microsoft Access 的个人地理数据库 (.mdb)。ArcGIS for Desktop 将继续支持个人地理数据库。
如果您的数据存储在个人地理数据库中但要将其用于 ArcGIS Server,则请先将其迁移至文件地理数据库或 ArcSDE 地理数据库,然后再引用并发布到 ArcGIS Server。
VBScript
包含 VBScript 的地图文档无法发布到 ArcGIS for Server (Linux)。当 ArcMap 在发布前分析您的地图时,如果检测到 VBScript,则将列出错误。Python 是用于构建字符串(例如标注表达式)的建议脚本语言。
多图层地图缓存
ArcGIS for Server 中不再支持多图层类型的地图缓存。地图中的所有图层现在都融合到缓存影像中。
常见迁移问题
本部分列出了您在迁移至 ArcGIS 10.1 for Server 时可能面临的问题及建议的可行解决方案。如果未能在本部分中找到您的问题,也可以在 Esri 支持中心搜索相关文章。
应该按什么顺序升级不同的 ArcGIS 组件?如果 ArcGIS for Desktop 和 ArcGIS for Server 在相同的计算机上,则是否会对顺序产生影响?
如果 ArcGIS for Desktop 和 ArcGIS for Server 都安装在相同的计算机上,则所有事物都必须迁移到一个事件中。如果 ArcGIS for Desktop 和 ArcGIS for Server 分散安装在多台计算机上,则可以阶段性地升级不同的 ArcGIS 组件。例如,可以按照以下步骤执行操作:
- 升级一些 ArcGIS for Desktop 客户端。确认升级过程有效结束后,升级所有 ArcGIS for Desktop 客户端。
- 升级 ArcGIS for Server。
升级 ArcGIS for Server 时,是否应该同时升级操作系统?
ArcGIS for Server 是一个 64 位应用程序,需要 64 位操作系统。如果当前正在使用的是 32 位操作系统,则需要将其升级到 64 位操作系统,之后才能安装 ArcGIS for Server。
如果您不确定操作系统是否支持 ArcGIS for Server,请参阅 ArcGIS for Server 系统要求。
创建 10.1 ArcGIS Server 站点时,是否可重新使用在先前版本中使用的服务器目录,或是否应输入我的服务器目录的新路径?
创建站点时,会要求您设置服务器目录的根位置。可指定新位置以创建空目录,或者可指向包含先前版本中服务器目录的位置。
如果重新使用先前的服务器目录,则使用 web 服务器管理软件移除与先前版本中服务器目录相关联的虚拟目录。ArcGIS Server 在 10.1 版本中处理目录虚拟化,因此不需要旧的虚拟目录。
如果服务器目录包含以松散存储格式存储的地图缓存,要注意创建站点可能需要一些时间。站点创建过程将 ArcGIS Server 帐户的权限应用于缓存文件夹,如果是大型松散缓存,则会花费很长时间。
先前版本中我的 SOC 帐户已具有对我的数据文件夹的访问权限。安装 10.1 版本时,是否可重新使用该帐户作为 ArcGIS Server 帐户?
ArcGIS Server 的先前版本需要您创建称为 SOC 帐户的帐户,并授予它对所有数据文件夹的访问权限。如果您已经拥有 SOC 帐户及其权限,则可以将它指定为 ArcGIS Server 帐户(如果愿意)。这可以减少或消除在迁移期间需要执行的权限重新分配。