转换地图服务器缓存存储格式 (服务器)

摘要

在松散格式和 compactV2 格式之间转换地图影像图层或地图或影像服务缓存的存储。

警告:

该工具就地转换格式,意味着它不会复制缓存的现有格式。 而是在同一缓存文件夹中创建缓存的新格式并删除旧格式。 请在运行此工具之前备份缓存,以便在必要时恢复为旧格式。

使用情况

  • ArcGIS Enterprise 中,输入服务参数是包含服务的 REST 端点的字符串。 确保 ArcGIS Enterprise 门户为活动门户。

    在独立 ArcGIS Server 部署中,输入服务参数是包含服务器和服务信息的字符串。 要构建字符串,请使用发布者或管理员凭据将 ArcGIS Server 连接文件 (.ags) 的完整路径添加到独立服务器上的服务名称,例如:"C:\path_to_the connection_file_of_standAloneServer\arcgis on MyServer.com_6443.ags\ServiceName.MapServer" 有关详细信息,请参阅连接到 GIS 服务器

  • 将检测输入服务的当前存储格式,并将其用于将目标格式设置为相反的格式。 可以使用缓存服务实例数参数指定专用于缓存转换的服务实例数。 默认值 -1 将使用 ArcGIS Enterprise 设置的所有缓存工具实例。 使用较小的值可以使用较少的缓存工具实例。 您可以使用服务编辑器窗口增加 System/CachingTools 服务的每台计算机的最大实例数设置,该窗口可通过 ArcGIS Server 的管理连接访问。 确保服务器计算机可以支持所选数量的实例。 连接到独立服务器时,默认实例数等于缓存工具服务的最大实例数设置的值。

参数

标注说明数据类型
输入服务

要转换缓存格式的地图或影像服务。 在 ArcGIS Enterprise 中,是包含地图图像图层 REST 端点的字符串。 在独立 ArcGIS Server 部署中,这是包含服务器和服务信息的字符串。

Image Service; Map Server
缓存服务实例数
(可选)

专用于运行该工具的 System/CachingTools 服务实例的总数。 当使用默认值 -1 时,将使用 ArcGIS Enterprise 设置的所有缓存工具实例。 使用较小的值可以使用较少的缓存工具实例。

您可以使用服务编辑器窗口增加 System/CachingTools 服务的每台计算机的最大实例数设置,该窗口可通过 ArcGIS Server 的管理连接访问。 确保服务器计算机可以支持所选数量的实例。

连接到独立服务器时,默认实例数等于缓存工具服务的最大实例数设置的值。

Long

派生输出

标注说明数据类型
输出地图服务 URL

输出 URL。

String

arcpy.management.ConvertMapServerCacheStorageFormat(input_service, {num_of_caching_service_instances})
名称说明数据类型
input_service

要转换缓存格式的地图或影像服务。 在 ArcGIS Enterprise 中,是包含地图图像图层 REST 端点的字符串。 在独立 ArcGIS Server 部署中,这是包含服务器和服务信息的字符串。

Image Service; Map Server
num_of_caching_service_instances
(可选)

专用于运行该工具的 System/CachingTools 服务实例的总数。 当使用默认值 -1 时,将使用 ArcGIS Enterprise 设置的所有缓存工具实例。 使用较小的值可以使用较少的缓存工具实例。

您可以使用服务编辑器窗口增加 System/CachingTools 服务的每台计算机的最大实例数设置,该窗口可通过 ArcGIS Server 的管理连接访问。 确保服务器计算机可以支持所选数量的实例。

连接到独立服务器时,默认实例数等于缓存工具服务的最大实例数设置的值。

Long

派生输出

名称说明数据类型
out_job_url

输出 URL。

String

代码示例

ConvertMapServerCacheStorageFormat 示例

将地图服务器缓存存储格式转换为备用存储格式。

# Name: ConvertMapServerCacheStorageFormat.py
# Description: The following stand-alone script demonstrates how to convert map
#               server cache storage format to the alteranate storage format for
#               a weblayers/map or image service based on
#               ArcGIS Enterprise or a stand alone ArcGIS Server

import arcpy
import os

# Sign in to portal
myPortal= "https://www.myArcGISEnterprise.com/webadaptor"
arcpy.SignInToPortal(myPortal, "MyUserName", "MyPassword")
serviceName= "MyCounty"
serviceType= "MapServer"
myPortalServiceURL = (myPortal + "/" + "rest/services" +"/" + serviceName + "/" + serviceType)


# Stand alone ArcGIS Server
target_server_connection = r"C:\Project\gisserver.ags.esri.com (publisher).ags"
serviceName= "MyCounty"
serviceType= "MapServer"
myServerServiceURL= target_server_connection + "/" + serviceName + "." + serviceType

# Variables for reporting
currentTime = datetime.datetime.now()
arg1 = currentTime.strftime("%H-%M")
arg2 = currentTime.strftime("%Y-%m-%d %H:%M")
file = 'C:/results/report_%s.txt' % arg1

# Print results of the script to a report
report = open(file,'w')

try:
    #result = arcpy.server.ConvertMapServerCacheStorageFormat(myPortalServiceURL, -1)
    result = arcpy.server.ConvertMapServerCacheStorageFormat(myServerServiceURL, -1)
    while result.status < 4:
        time.sleep(0.2)
    resultValue = result.getMessages()
    report.write ("completed " + str(resultValue))
    
except Exception as e:
    
    # If an error occurred, print line number and error message
    import traceback, sys
    tb = sys.exc_info()[2]
    report.write("Failed at step 1 \n" "Line %i" % tb.tb_lineno)
    report.write(e.message)
report.close()

print ("Converted Map Server Cache Storage format for " + serviceName)

环境

此工具不使用任何地理处理环境。