ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Ayuda
  • Sign Out
ArcGIS Desktop

ArcGIS Online

La plataforma de representación cartográfica para tu organización

ArcGIS Desktop

Un completo SIG profesional

ArcGIS Enterprise

SIG en tu empresa

ArcGIS Developers

Herramientas para crear aplicaciones basadas en la ubicación

ArcGIS Solutions

Plantillas de aplicaciones y mapas gratuitas para tu sector

ArcGIS Marketplace

Obtén aplicaciones y datos para tu organización.

  • Documentación
  • Soporte
Esri
  • Iniciar sesión
user
  • Mi perfil
  • Cerrar sesión

ArcMap

  • Inicio
  • Introducción
  • Cartografiar
  • Analizar
  • Administrar datos
  • Herramientas
  • Extensiones

Administrar teselas de caché de servidor de mapas

  • Resumen
  • Uso
  • Sintaxis
  • Muestra de código
  • Entornos
  • Información de licenciamiento

Resumen

Crea y actualiza teselas en una caché de capa de teselas web existente (en ArcGIS Enterprise o ArcGIS Online), capas de imágenes de mapa web en ArcGIS Enterprise y servicios de imágenes o mapas en caché en un servidor independiente. Esta herramienta se utiliza para crear teselas nuevas, reemplazar teselas faltantes, sobrescribir teselas desactualizadas o eliminar teselas.

Uso

  • Esta herramienta puede tardar demasiado en ejecutarse para caché que cubren una extensión geográfica grande o escalas de mapas muy grandes. Si la herramienta se cancela, la creación de teselas se detiene, pero las teselas existentes no se eliminan. Esto significa que puede cancelar la herramienta si no tiene tiempo suficiente y volver a ejecutarla más tarde en la misma caché estableciendo el parámetro Modo Actualizar en Volver a crear teselas vacías (update_mode = "RECREATE_EMPTY_TILES" en Python).

Sintaxis

arcpy.server.ManageMapServerCacheTiles(input_service, scales, update_mode, {num_of_caching_service_instances}, {area_of_interest}, {update_extent}, {wait_for_job_completion})
ParámetroExplicaciónTipo de datos
input_service

La capa de teselas web o capa de imágenes de mapa cuyas teselas en caché desea actualizar.

Image Service; MapServer
scales
[scales,...]

Los niveles de escala en los cuales creará o eliminará teselas cuando ejecute esta herramienta, según el update_mode.

Double
update_mode

El modo para actualizar la memoria caché.

  • RECREATE_EMPTY_TILES —Solo se crearán teselas que estén vacías. Las teselas existentes se dejarán sin cambios. Esta opción no está disponible para capas de teselas web publicadas en ArcGIS Online.
  • RECREATE_ALL_TILES —Las teselas existentes se sustituirán y se agregarán teselas nuevas si la extensión ha cambiado.
  • DELETE_TILES —Las teselas se eliminarán de la caché. La estructura de la carpeta de caché no se eliminará.
String
num_of_caching_service_instances
(Opcional)

La cantidad total de instancias del servicio System/CachingTools que desea dedicar a ejecutar esta herramienta. Puede aumentar el ajuste Cantidad máxima de instancias por equipo del servicio System/CachingTools utilizando la ventana Editor del servicio, que está disponible a través de una conexión administrativa a ArcGIS Server. Asegúrese de que los equipos servidores sean compatibles con el número de instancias elegido.

Cuando se conecta a un servidor independiente, el número predeterminado de instancias es igual al valor de la configuración Número máximo de instancias del servicio de la herramienta de almacenamiento en caché.

Long
area_of_interest
(Opcional)

Define un área de interés para restringir dónde se van a crear o eliminar las teselas. Este parámetro es útil si desea administrar teselas para áreas con formas irregulares. También es útil en situaciones donde desea almacenar en la caché algunas áreas y dejar sin almacenar las áreas menos visitadas.

Si no proporciona un valor para este parámetro, la opción predeterminada es utilizar la extensión completa del mapa.

Feature Set
update_extent
(Opcional)

La extensión rectangular en la cual se crearán o eliminarán teselas, según el valor del parámetro update_mode. No se recomienda que proporcione valores tanto para update_extent como para area_of_interest. Si se proporcionan valores para ambos parámetros, se utilizará el valor de area_of_interest.

Extent
wait_for_job_completion
(Opcional)

Este parámetro le permite ver el progreso del trabajo de la caché que se ejecuta en el Portal.

  • WAIT —Esta herramienta seguirá ejecutándose en la ventana de Python mientras el trabajo de la caché se ejecute en Portal for ArcGIS o ArcGIS Online. Con esta opción, puede solicitar informes de progreso detallados en cualquier momento y ver los mensajes de geoprocesamiento cuando aparecen. Ésta es la opción predeterminada. Se recomienda que cree primer utilice esta opción en las secuencias de comandos de Python.
  • DO_NOT_WAIT —La herramienta de geoprocesamiento enviará el trabajo al servidor, de modo que podrá realizar otras tareas de geoprocesamiento. Esta opción se utiliza cuando elige crear una caché automáticamente cuando publica el servicio, y también puede configurar esta opción en cualquier otra caché que usted vaya a crear.
Boolean

Salida derivada

NombreExplicaciónTipo de datos
out_job_url

La URL de salida.

String

Muestra de código

Ejemplo 1 de ManageMapServerCacheTiles (secuencia de comandos independiente)

Se crean o actualizan todas las teselas en la caché con la opción RECREATE_ALL_TILES.

# Name: ManageMapServerCacheTiles.py
# Description: The following stand-alone script demonstrates how to Recreate all 
# cache tiles for the scales in the cache tiling scheme.

# Requirements: os, sys, time and 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, datetime, traceback, string

# Set environment settings
env.workspace = "C:/data"

# List of input variables for map service 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
scales = [500000,250000,125000,64000]
numOfCachingServiceInstances = 2
updateMode = "RECREATE_ALL_TILES"
areaOfInterest = ""
waitForJobCompletion = "WAIT"
updateExtents = ""

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')

try:
    starttime = time.clock()
    result = arcpy.ManageMapServerCacheTiles_server(inputService, scales,
                                                    updateMode,
                                                    numOfCachingServiceInstances,
                                                    areaOfInterest, updateExtents,
                                                    waitForJobCompletion)
    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 "Created cache tiles for given schema successfully for " +\
    serviceName + " in " + str(elapsedtime) + " sec 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 "Created Map server Cache Tiles "
Ejemplo 2 de ManageMapServerCacheTiles (secuencia de comandos independiente)

Se actualizan las teselas vacías para algunas de las escalas con la opción RECREATE_EMPTY_TILES.

# Name: ManageMapServerCacheTiles.py
# Description: The following stand-alone script demonstrates how to Recreate  
# empty tiles for one of the default number of scales in the cache
# tiling scheme

# Requirements: os, sys, time and 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, datetime, traceback, string

# Set environment settings
env.workspace = "C:/data"

# List of input variables for map service 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
scales = [500000,250000,125000,64000]
numOfCachingServiceInstances = 2
updateMode = "RECREATE_EMPTY_TILES"
areaOfInterest = ""
waitForJobCompletion = "WAIT"
updateExtents = ""
cacheDir = "c:\\arcgisserver\\arcgiscache\\"

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')

# use "scales[0]","scales[-1]","scales[0:3]"

try:
    starttime = time.clock()
    result = arcpy.ManageMapServerCacheTiles_server(inputService, scales[-1],
                                                    updateMode, numOfCachingServiceInstances,
                                                    areaOfInterest, updateExtents,
                                                    waitForJobCompletion)
    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 "Created cache tiles for scale =" + str(scales[-1]) + "for " +\
    serviceName + " at " + cacheDir + " in " + str(elapsedtime) +\
    " sec 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 "Rereated Map server Cache Tiles for scale = " + str(scaleValues[-1])
Ejemplo 3 de ManageMapServerCacheTiles (secuencia de comandos independiente)

Se actualizan las teselas mediante un área de interés.

# Name: ManageMapServerCacheTiles.py
# Description: The following stand-alone script demonstrates how to Recreate all
# tiles using given feature class.

# Requirements: os, sys, time and 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
import os
import sys
import time
import datetime
import traceback
import string

# Set environment settings
arcpy.env.workspace = "C:/data"

# List of input variables for map service 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
scales = [500000,250000,125000,64000]
numOfCachingServiceInstances = 2
updateMode = "RECREATE_ALL_TILES"
areaOfInterest = "C:/data/shp/CaTxFlMaMin.shp"
waitForJobCompletion = "WAIT"
updateExtents = ""

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')

# use "scales[0]","scales[-1]","scales[0:3]"

try:
    starttime = time.clock()
    result = arcpy.ManageMapServerCacheTiles_server(inputService, scales[-1],
                                                    updateMode,
                                                    numOfCachingServiceInstances,
                                                    areaOfInterest, updateExtents,
                                                    waitForJobCompletion)                                           
    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 "Created cache tiles for scale =" + str(scales[-1]) + "for " +\
    serviceName + "at " + cacheDir + " using specified feature class " +\
    areaOfInterest + " in " + str(elapsedtime) + " sec on " + arg2

except Exception, e:
    # If an error occurred, print line number and error message
    tb = sys.exc_info()[2]
    report.write("Failed at \n" "Line %i" % tb.tb_lineno)
    report.write(e.message)

report.close()     
print "Rereated Map server Cache Tiles"
print "for scale = " + str(scaleValues[-1]) + " using area of Interest"

Entornos

  • Espacio de trabajo actual

Información de licenciamiento

  • Basic: Sí
  • Standard: Sí
  • Advanced: Sí

Temas relacionados

  • Vista general del conjunto de herramientas Almacenamiento de caché

ArcGIS Desktop

  • Inicio
  • Documentación
  • Soporte

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

Acerca de Esri

  • Quiénes somos
  • Empleo
  • Blog de Esri
  • Conferencia de usuarios
  • Cumbre de desarrolladores
Esri
Díganos su opinión.
Copyright © 2021 Esri. | Privacidad | Legal