发布地图服务
ArcMap 包含一系列可用来优化和调整 ArcMap 文档以将高性能、可扩展的地图服务发布到 ArcGIS Server 的工具。作为 ArcMap 用户,探索提高交互式地图文档(尤其是您打算与 Web 上的其他用户共享的地图)的显示性能的方法始终是非常重要的。
在某些情况下,ArcGIS Server 中的地图优化与性能的关系十分紧密:
- 提高基于逐个要求生成的动态地图服务的地图显示性能
- 缩短生成缓存地图服务所需的计算时间
本帮助部分旨在针对此类情况和其他相关情况提供发布优化服务的步骤。
发布 ArcGIS Server 的地图服务
ArcMap 中的一个工具条和工作流可用于通过地图服务定义 (MSD) 来分析和发布优化的地图服务。借助 ArcGIS Server,可以使用 MSD 来发布高性能的 ArcGIS 地图服务。这些优化的地图服务可以同时支持实时地图服务、动态地图服务以及缓存地图服务。
为通过 MSD 支持优化的地图服务,ArcGIS 包含有高性能、可扩展的绘图引擎,可以使用在 ArcMap 中设计和创建的高级制图生成动态的高性能地图(以及缓存地图服务)。此工作可通过以下简单的工作流完成:在 ArcMap 中生成地图,分析并优化其性能,将其保存为 MSD,然后将 MSD 作为地图服务发布到 ArcGIS Server。
ArcMap 利用“地图服务发布”工具条执行上以上各个步骤。
使用“地图服务发布”工具条
地图服务发布 工具条有助于分析 ArcMap 文档的绘制性能。它用于执行将优化的地图服务从 ArcMap 发布到 ArcGIS Server 的所有步骤。
步骤
创建和发布优化的地图服务过程使用简单的工作流:
首先,在 ArcMap 中设计并创建地图文档。然后,执行以下步骤将地图服务发布到 ArcGIS Server。
- 分析 ArcMap 文档,方法为单击地图服务发布 工具条上的分析 。解决地图分析中标识的错误和其他问题。有关完成此工作的指南,请参见下文中的分析并修复地图绘制性能。
- 预览地图服务 。
- 通过 ArcGIS Server 的 MSD 发布地图服务。
- 随着时间的推移,执行上述步骤定期评估地图文档以确保地图性能不下降。
另一种直接从 ArcMap 发布的方法为将 ArcMap 文档保存为 MSD 。地图服务定义随后可在 ArcCatalog 中或 ArcGIS Server 管理器中发布。
分析并修复地图绘制性能
能使用地图服务发布 工具条执行的一项重要任务,就是分析地图文档以识别潜在的性能瓶颈和地图错误,以保证这些问题在通过 ArcMap 文档创建优化的地图服务之前得到解决。
性能分析的步骤
- 首先,打开 ArcMap 中的地图服务发布 工具条,方法为右键单击主菜单并从工具条的字母顺序列表中选择此工具条。
- 接下来,单击分析 。
这将生成一个将在 ArcMap 应用程序窗口底部的滚动面板中出现的报告。
如要将地图文档作为优化的地图服务发布,应首先解决此报告标识的错误和其他潜在问题。此报告可标识出不支持优化的地图绘制性能的图层和符号系统类型,对可能降低显示性能的潜在问题发出警告,并且能提供有助于优化地图服务性能的地图文档的其他相关信息。此报告中将显示三类消息:- 错误消息 。这些问题在使用 ArcGIS Server 将地图文档作为优化的地图服务发布之前必须修复。错误通常指地图使用了不支持优化的地图服务的地图图层类型或显示选项。
例如,地图文档中的错误可能包括
- 使用某些不支持 ArcGIS Server 中的优化的地图服务的图层类型(如拓扑图层)
- 使用某些可能导致显示过程迟缓的高级符号系统选项(如一些统计或图表符号系统)
- 警告消息 。这些问题可能会影响到绘制性能或绘制外观。例如:
- 您能够通过创建地图图层的要素类的空间索引提高性能。
- 栅格图层的图像格式可能是比其他类型绘制速度更慢的数据类型。
- 现有的地图图层可能会动态投影到地图的输出坐标系中,这样会导致绘制性能下降。使用常用坐标系可以提高地图绘制性能。
- 信息消息 。这些消息标识出使用 MSD 生成的地图显示的描绘中的潜在差异,以及要注意的其他信息。
- 错误消息 。这些问题在使用 ArcGIS Server 将地图文档作为优化的地图服务发布之前必须修复。错误通常指地图使用了不支持优化的地图服务的地图图层类型或显示选项。
- 修复各错误并确定如何解决由地图性能分析标识的各个警告消息。右键单击各消息可获得有关如何修复该特定问题的简要建议,并且可以访问含有关于此问题的详细信息(如其他修复选项)的帮助主题。每个列表中粗体的项目将提供解决每个问题的默认方法。
- 创建错误消息和警告的副本。
由于有大量的错误和警告被列出,因此可能涉及到解决某些具有多个图层的地图中的显示性能问题。在这种情况下,您可能想要在文档中保存错误消息以供以后使用。您可以选择错误并将这些错误的描述复制并粘贴到其他应用程序中,以便在日后管理这些更新内容。
在 ArcMap 中预览地图服务显示
分析了地图性能,纠正了错误并在 ArcMap 文档中进行了其他更改后,应该预览地图服务以测试此服务的性能和响应。预览地图还可以确定在标准 ArcMap 显示与优化的地图服务所使用的绘图引擎之间的绘图差异是否会影响地图。
使用地图服务发布 工具条上的预览地图服务按钮执行此步骤。步骤如下:
地图服务预览的步骤
- 单击地图服务发布 工具条上的预览按钮 ,预览 ArcGIS Server 窗口将显示如下。
- 使用预览 窗口浏览地图。这有助于测试该地图的显示性能。
- 此外,还可以为地图服务的预览指定图像格式并检查 MSD 中的抗锯齿设置。要设置图像格式,请单击预览 ArcGIS Server 窗口右上方的箭头按钮,然后选择属性。将显示设置图像格式的对话框。此对话框还会显示将保存在 MSD 中的抗锯齿设置。有关设置抗锯齿属性的方式,请参见下文中的抗锯齿地图设置。
关于设置地图服务的图像格式
在 ArcGIS Server 中,地图在服务器计算机上生成并作为一系列影像切片流式传输到最终用户的应用程序。用户的 Web 客户端应用程序可能请求多种图像格式的地图(如 PNG 8 或 PNG 24)。您可以指定要用于地图服务预览的栅格格式。
图像格式选项。选择图像格式很重要,因为这会影响地图传送所需的网络流量、图像质量和图像透明度。以下是对图像格式的预览选项的简要描述:
以下为可用图像格式及其相应用途的摘要:
- PNG。此格式用于选择 PNG 8。此格式用于需要使用透明背景的叠置服务,例如将叠置在其他服务上(如图像顶端)的道路和边界。PNG 8 可在磁盘上创建非常小的切片且不损失任何信息。
如果地图包含的颜色超过 256 种,请勿使用 PNG 8。影像、山体阴影、梯度填充、透明度和各种抗锯齿选项可轻易地使地图包含的颜色超过 256 种。甚至符号(如高速公路盾形路牌符号)也可能在其边缘周围进行微小的抗锯齿,从而意外地使地图获得更多颜色。如果 PNG 8 是由服务请求的主要图像格式,您应该在发布地图服务定义之前禁用抗锯齿选项,其中包括文本抗锯齿。
- PNG24。此格式用于超过 256 种颜色的叠置服务,如道路和边界(如果使用的颜色少于 256 种,建议使用 PNG 8)。如果将在 Internet Explorer 6 或更早版本中查看切片,请勿使用 PNG 24。这是因为 PNG 24 的一些要素不受支持。
- PNG32。此格式用于超过 256 种颜色的叠置服务,如道路和边界。如果您希望在输出格式中完整保留透明度属性,也应使用此格式。此格式创建的切片大于 PNG24,但其切片在所有的浏览器中都受到完全支持。PNG32 可在输出图像中完全保留地图的透明要素。当在 ArcMap 中进行查看时,ArcMap 将从优化的地图服务中请求 PNG32 图像。
- JPEG。此格式用于颜色变化较大且不需要透明背景的底图服务。例如,栅格影像和非常详细的矢量底图特别适合使用 JPEG。
JPEG 为有损图像格式。在不影响图像显示效果的情况下,它会尝试有选择地删除数据。这会产生很小的切片,但如果地图包含矢量线作业或标注,则可能会在线周围生成过多的噪声或模糊区域。如果发生这种情况且您正在创建缓存的地图服务,可尝试将压缩值从默认的 75 增加到更大的值。更高的值(如 90)可以生成可接受的线作业质量,同时还可保证 JPEG 格式的较小切片优势。这取决于 Web 客户端应用程序的组装者是否愿意接受图像中少量的噪声。用户可以通过选择 JPEG 减少地图服务消耗的时间和占用的 Web 带宽。较小的大小还意味着最终用户应用程序下载地图的速度会更快。
- BMP。BMP 是一个仅用于显示原始绘制性能的预览图像显示选项(并且它是用于预览的默认图像格式)。您可以选择此选项作为基线,以查看所做的地图更改将如何影响总体绘制速度(无论预期 Web 客户端使用何种图像格式)。
如果您也负责配置要使用的 Web 地图客户端应用程序,您可以在预览 ArcGIS Server 窗口中测试栅格设置,然后提交到图像格式。
抗锯齿地图设置
使用 MSD 发布地图服务时,您可以设置两个抗锯齿属性,这些属性能够影响地图服务的图片质量以及地图服务的性能。ArcGIS Server 选项 对话框可用于设置抗锯齿选项。通过地图服务发布 工具条中的选项按钮 访问此选项。
将出现设置抗锯齿选项的对话框:
设置了这些选项后,您应测试这些设置,方法为打开另一个预览窗口 ,然后与地图显示进行交互。
抗锯齿选项。抗锯齿是混合物体边缘附近的前景像素和背景像素以使人眼可以看到更平滑边框的一种图形技术。如果在地图显示中出现多余的伪影(例如,锯齿状线、波形线或波段以及莫尔条纹),请使用此选项。
用于抗锯齿的过滤数量将影响性能。但是请注意,如果过滤不足,可能会生成带有多余的伪影的图像。抗锯齿选项的范围可保证所选择的选项在不牺牲过多性能的情况下提供良好的地图影像视图。此外,您可以选择速度更慢但更有效的技术来获取能满足需求但执行更慢的地图显示。
使用这些选项进行试验,以获得能满足需求的效果和性能。
- 无 – 不执行抗锯齿。
- 最快 – 执行最小抗锯齿,从速度方面考虑是最佳选择。
- 快 – 执行一定程度的抗锯齿,从速度方面考虑是上佳选择,质量比“最快”好。
- 常规 – 可以很好地平衡速度和质量。
- 最佳 – 最佳抗锯齿质量。使用此选项时,渲染花费的时间最长。
如果提高地图显示清晰度不需要抗锯齿,请使用无,这将获得最佳性能。
文本抗锯齿选项。抗锯齿文本是混合文本字体边缘以使字符显示时带有较少的锯齿的过程。对文本抗锯齿的控制非常重要。抗锯齿执行太过会造成文本模糊,而不足又会令文本带有锯齿。地图显示性能不受文本抗锯齿的影响,但文本抗锯齿有可能影响图像大小。
文本抗锯齿选项显示如下:
- 无 – 不执行文本抗锯齿。
- 常规 – 按字体确定的标准执行文本抗锯齿。每种单独的字体内部都由字体作者创建了一些参数,这些参数定义了使用抗锯齿时应以哪种字号绘制字体。
- 强制 – 始终使用抗锯齿绘制文本,而不考虑各种字体的参数。这是推荐设置。
使用这些选项进行试验,以获得能满足需求的效果和性能。如果提高地图显示清晰度不需要文本抗锯齿,请使用无,这将获得更小的图像大小。
将地图服务发布至 ArcGIS Server
保存 MSD 后,下一步就是使用 ArcGIS Server 针对部署创建地图服务。您可以选择使用此处介绍的工作流直接通过 ArcMap 发布 ArcGIS 地图服务。保存并发布“地图服务定义”也支持其他所有的 ArcGIS Server 的地图发布方法(例如,在 ArcGIS Server 管理器 Web 应用程序控制台中发布地图服务)。
选择发布到 ArcGIS Server 按钮,您可以通过以下步骤创建与 ArcGIS Server 配合使用的地图服务。
步骤
- 单击发布到 ArcGIS Server 按钮,首先会自动分析地图的性能。这可确保对地图执行的所有更改都能在地图服务中正常工作。这将有助于发现所有可能需要的最后一分钟的更改。
查看并修复此地图分析报告中的所有错误(如分析并修复地图绘制性能中所述)。
- 然后,如果没有错误,将显示发布到 ArcGIS Server 向导,其界面如下所示:
在此向导中,您可
- 选择将要使用的 ArcGIS 服务器。
- 输入要创建的新地图服务的名称。
- 标识将在其中发布地图服务的文件夹。
- 如果想要使地图服务作为 KML 或 WMS 使用,请单击下一步。否则,单击完成并转至最后一步。
在您所选择的想要为此地图服务发布的其他功能处将显示向导的第二页。
单击要发布的其他地图功能,然后单击下一步查看摘要或选择完成。 - 将显示摘要面板,其中列出了将创建的地图服务的属性。例如:查看地图服务的摘要信息。摘要页面将列出服务器的 arcgisinput 目录中,地图服务定义将被复制到的位置。
- 完成操作后,单击完成创建地图服务。
验证服务器中的数据连接
发布命令将验证您的服务正在使用的数据连接是否为服务器可见。如果数据连接有问题,您将看到如下所示的一个对话框。检查 SOC 用户帐户是否有对数据的权限,此为解决此问题的第一步。您可能需要将基于文件的数据移到 SOC 用户帐户具有读取权限的位置。
如何将优化的地图服务发布到 UNIX 和 Linux 上的 ArcGIS Server 安装程序
使用 MSD 文件在 Linux 和 UNIX 上发布优化的地图服务所需的工作流与上述步骤相似,但其中包含一项额外的任务:您需要重置 MSD 的数据源引用,以将 UNIX/Linux 路径用于地图的基于文件的数据源。下面是完成此任务的步骤。
步骤
- 为 UNIX 或 Linux 上的地图服务组织数据源的路径集。如果您的地图仅引用企业地理数据库中存储的数据,您将不需要修改数据的路径,服务会直接从 ArcMap 发布。
- 将地图文档另存为地图服务定义。
- 在 ArcCatalog 中使用设置数据源命令将 Windows 文件路径替换为 UNIX 或 Linux 文件路径。此工具用于更改基于文件的数据源路径。它不用于更改数据源类型或更改带有不同方案的数据的数据源,如将数据从企业地理数据库移动到文件地理数据库。
- 将已更新的 MSD 文件复制到 UNIX 或 Linux 系统。
- 使用 Server 管理器将 MSD 作为优化的地图服务发布。
将 ArcMap 文档另存为 MSD
分析了地图文档并预览地图服务后,您可以将地图文档(以及抗锯齿的选项设置)保存到 MSD。按地图服务发布 工具条中的保存按钮 。将显示保存对话框以创建 MSD。它的默认名称是扩展名为 .msd 的 ArcMap 文档名称。
保存后的 MSD 将包含以新格式存储的地图定义,以及抗锯齿和文本抗锯齿的设置。
在 ArcGIS Server 中,MSD 文件将使用高性能的优化地图显示引擎生成速度更快、扩展能力更强的地图。MSD 既可用于动态生成的动态地图服务(MSD 的关键优势),又可用于缓存的地图服务。缓存的地图服务可以使用 MSD 以更高的效率生成,这是因为地图生成的速度更快。
使用 MSD 创建的优化的地图服务执行状况良好,而且这些服务具有可扩展性。反复测试表明,使用 MSD 创建的动态地图服务的执行速度比 ArcIMS 地图快至少 25%,而且经过扩展后还可以支持大约 20% 的额外用户。在许多情况下,节省时间和可扩展的优势更为显著。
ArcMap 标准地图文档 (MXD) 也可用于 ArcGIS Server 中的动态和缓存的地图服务。但是,作为动态地图服务,这些文档执行速度更慢,也不能扩展来支持更多用户。当您需要应用了 ArcMap 高级功能(例如,扩展模块图层类型和特殊符号系统类型)的高质量制图时,请使用 ArcMap MXD,因为它们支持您所需要的功能。您将获得所需的制图,但绘制速度将会变慢。通常这对于生成需要这些类型的缓存的地图服务非常有用(实质上预先计算的地图是最快的地图服务)。
跟踪用作各 MSD 的源的 ArcMap 文档
发布优化的地图服务需要使用 ArcMap 文档 (MXD) 创建 MSD。生成 MSD 后,要如何跟踪用于创建优化的地图服务的原始 MXD 呢?
追踪 MSD 的源文档与追踪 PDF 的源文档极为相似,例如追踪用于生成 PDF 的原始 Microsoft Word 文档(.DOC 文件)。
创建 MSD 时的默认名称与 ArcMap 文档相同(就像默认 PDF 名称一样),这非常有用。在这种情况下,地图服务定义文件使用的文件扩展名为 .msd,而不是 .mxd。这些配套文件在磁盘上并排组织起来。
另外,如果您想要将源 MXD 作为 MSD 文件的属性予以记录,可以右键单击 ArcCatalog 中的 MSD,然后在注释字段中记录地图文档名称(如下图所示)。
定期分析和调整地图文档以保证性能
随着时间的推移,定期评估地图文档以保持地图性能。
即使未对地图服务定义进行任何更改,对基础数据集的更改也会影响到地图绘制性能,意识到这一点非常重要。可以删除索引,可以添加新字段并执行更新,还可以将数据从一个位置移动到另一个位置。
因此,定期重复这一工作流来分析地图,识别和解决潜在问题,保持优化的地图服务的良好性能是很非常重要的。
建议您定期重新评估地图文档及其数据源,分析并解决所有存在的性能问题。