Cache-Kacheln für Globe Server verwalten (Server)
Zusammenfassung
Erstellt und aktualisiert Kacheln in einem vorhandenen Globe-Service-Cache. Dieses Werkzeug wird verwendet, um neue Kacheln zu erstellen oder fehlende Kacheln zu ersetzen, veraltete Kacheln zu überschreiben oder neue Kacheln hinzuzufügen. All diese Aktionen können mithilfe von rechteckigen Ausdehnungen oder mithilfe einer Polygon-Feature-Class definiert werden. Beim Erstellen neuer Kacheln können Sie wählen, ob Sie nur leere Kacheln erstellen oder alle Kacheln neu erstellen.
Verwendung
-
Verwenden Sie dieses Werkzeug, um einen vorhandenen Globe Server-Cache zu aktualisieren. Um einen Cache zu aktualisieren, geben Sie den ArcGIS Server-Computer an, der den Globe-Service hostet. Mit dem Werkzeug werden automatisch alle auf diesem Server verfügbaren Globe-Services aufgelistet.
-
Wenn eine Aktualisierung ohne Angabe einer Ausdehnung ausgeführt wird, wird die gesamte Ausdehnung des Service aktualisiert.
-
Eine Aktualisierung ist hilfreich, wenn nur ein Teil des Globe-Service-Caches aktualisiert werden muss. Beim Angeben von level_from und level_to müssen Sie alle Ebenen angeben, auf denen Kacheln generiert werden sollen. Mit level_from wird die niedrigste Detaillierungsebene festgelegt, mit der der Daten-Cache beginnen soll. Mit level_to wird die höchste Auflösung für das Daten-Caching angegeben.
Syntax
Parameter | Erläuterung | Datentyp |
server_name |
Der ArcGIS Server-Computer, der den Globe-Service hostet, dessen Kacheln Sie verwalten. | String |
object_name |
Der Globe-Service, dessen Kacheln geändert werden sollen. | String |
update_extent (optional) |
Rechteckige Ausdehnung, bei der Kacheln je nach Aktualisierungsmodus erstellt oder gelöscht werden sollen. Sie können die Ausdehnungswerte angeben oder eine Ausdehnung aus einer vorhandenen Datenquelle auswählen. | Extent |
in_layers [in_layers,...] |
Wählen Sie die Layer aus, die im Cache enthalten sein sollen. Für jeden Layer müssen Sie "level_from" angeben. Dies ist die Detaillierungsebene, auf der mit dem Cachen des Layers begonnen werden soll. Außerdem müssen Sie "level_to" angeben. Dies ist die Detaillierungsebene, auf der das Cachen des Layers enden soll. Falls für "level_from" und "level_to" die kleinste und größte Detaillierungsebene verwendet werden, wird ein vollständiger Cache für den Layer erstellt. | Value Table |
thread_count (optional) |
Die Anzahl der Globe-Service-Instanzen, die beim Ausführen dieses Werkzeugs verwendet werden sollen. Standardmäßig wird die maximal zulässige Anzahl von Instanzen verwendet (die Standardeinstellung für einen ArcGIS Server-Service ist 2). Wenn Sie über mehr Serverleistung verfügen, können Sie die maximal zulässige Anzahl von Instanzen über das Dialogfeld Service-Eigenschaften erhöhen und dann diesen Parameter erhöhen, wenn Sie das Werkzeug ausführen. | Long |
update_mode |
Wählen Sie einen Modus für die Aktualisierung des Caches aus. Die folgenden zwei Modi sind verfügbar:
| String |
update_feature_class (optional) |
Sie können eine Polygon-Feature-Class zum Verwalten von Kacheln verwenden (Erstellen/Aktualisieren). Dies erfolgt auf Grundlage der Ausdehnungen von Features in einer Feature-Class. Wenn Sie z. B. ein Land cachen, können Sie eine Feature-Class der größten städtischen Gebiete bereitstellen. Hiermit legen Sie fest, dass der Server nur Kacheln erstellt, die diese städtischen Gebiete darstellen. Die verbleibenden Gebiete können bei Bedarf gecacht werden, wenn der Client dies anfordert. Durch dieses Verfahren sparen Sie Zeit und Speicherplatz, der sonst zum Erstellen der nicht benötigten Kacheln für ländliche Gebiete verwendet worden wäre. | Feature Class |
ignore_status (optional) | Mit diesem Parameter können Sie den Caching-Status verfolgen, wenn Sie Kacheln basierend auf Feature-Class-Grenzen erstellen (siehe Parameter "Eingabe-Feature-Class").
| Boolean |
Codebeispiel
In diesem Beispiel wird für einen Globe-Service ein vollständiger Cache erstellt.
#ManageGlobeServerCacheTiles example (stand-alone script) # Name: ManageGlobeServerCacheTiles.py # Description: The following stand-alone script demonstrates how to update the # globe map server cache tiles # 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 values # 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 server = "MyServer" globeServerObject = "tstGlobeService" inputLayers = "" extents = "" cacheDir = "C:\\arcgisserver\\arcgiscache\\GlobeCache" threadCount = "2" updateMode = "Recreate All Tiles" pathToFeatureClass = "" ignoreStatus = "IGNORE_COMPLETION_STATUS_FIELD" 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.ManageGlobeServerCacheTiles_server (server, globeServerObject, extents, updateMode, inputLayers, threadCount, pathToFeatureClass, ignoreStatus) 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 the GlobeServer cache successfully for mapservice " + globeServerObject + "\n at " + cacheDir + globeServerObject + " 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 "Created the globe server cache successfully"