描述
在松散格式和紧凑格式之间转换地图或影像服务缓存的存储。 该工具就地转换格式,意味着它不会复制缓存的现有格式。 而是在同一缓存文件夹中创建缓存的新格式并删除旧格式。
使用方法
在 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 的管理连接访问。 确保服务器计算机可以支持所选数量的实例。 连接到独立服务器时,默认实例数等于缓存工具服务的最大实例数设置的值。
语法
arcpy.server.ConvertMapServerCacheStorageFormat(input_service, {num_of_caching_service_instances})
参数 | 说明 | 数据类型 |
input_service | 要转换缓存格式的地图或影像服务。 这是一个包含服务器和服务器信息的字符串。 要查看构建此字符串的方法,请打开 ArcCatalog,选择目录树中的服务,并注意位置工具栏上的文本。 然后,将反斜线改为正斜线,例如 GIS Servers/arcgis on MYSERVER (admin)/USA.MapServer。 | Image Service; Map Server |
num_of_caching_service_instances (可选) | 专用于运行该工具的 System/CachingTools 服务实例的总数。 您可以通过 ArcGIS Server 的管理连接,使用服务编辑器窗口,增加 System/CachingTools 服务的每台计算机的最大实例数设置。 确保您的服务器计算机可以支持所选数量的实例。 | 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
# Requirements: os, sys, time, traceback modules
# Any line that begins with a pound sign is a comment and will not be executed
# Empty quotes take the default value.
# To accept arguments from the command line replace values of variables to
# "sys.argv[]"
# Import system modules
import arcpy
from arcpy import env
import os, sys, time, string, datetime, traceback
# Set environment settings
env.workspace = "C:/data"
# Set local variables for mapservice properties
connectionFile = r"C:\Users\<username>\AppData\Roaming\ESRI\Desktop10.1\ArcCatalog"
server = "arcgis on MyServer_6080 (publisher)"
serviceName = "Rainfall.MapServer"
inputService = connectionFile + "\\" + server + "\\" + serviceName
numOfCachingServiceInstances = "2"
currentTime = datetime.datetime.now()
arg1 = currentTime.strftime("%H-%M")
arg2 = currentTime.strftime("%Y-%m-%d %H:%M")
file = 'C:/data/report_%s.txt' % arg1
# print results of the script to a report
report = open(file,'w')
# One can leave the variable for storage format marked "COMPACT" to "" (default)
# Execute ConvertMapServerCacheFormat
try:
starttime = time.clock()
result = arcpy.ConvertMapServerCacheStorageFormat_server(inputService,
numOfCachingServiceInstances)
finishtime = time.clock()
elapsedtime = finishtime - starttime
#print messages to a file
while result.status < 4:
time.sleep(0.2)
resultValue = result.getMessages()
report.write ("completed " + str(resultValue))
print "Converted Map Server Cache Storage format for " + serviceName + " in "
str(elapsedtime) + " sec \n on" + arg2
except Exception, e:
# If an error occurred, print line number and error message
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 "
环境
此工具不使用任何地理处理环境。
许可信息
- Basic: 是
- Standard: 是
- Advanced: 是