Die Benutzer erwarten eine möglichst schnelle Ausführung der Werkzeuge, daher muss das Web-Werkzeug oder der Geoverarbeitungsservice schnell und effizient sein. Da ArcGIS Server mehrere Clients gleichzeitig versorgen kann, führen ineffiziente Services möglicherweise zur Überlastung der Serverressourcen. Je effizienter die Services sind, desto mehr Clients können mit denselben Computerressourcen ausgeführt werden.
Verwenden von Layern für Projektdaten
Wenn ein Werkzeug vor seiner Freigabe als Web-Werkzeug ausgeführt wird, müssen Sie das Werkzeug mithilfe von Layern als Eingabe statt mit Pfaden zu Datasets auf einer Festplatte ausführen. Ein Layer verweist auf ein Dataset auf der Festplatte, und Layer cachen Dataset-Eigenschaften. Dies gilt insbesondere für Netzwerk-Dataset-Layer und Raster-Layer. Wenn statt des Pfades zum Dataset ein Layer verwendet wird, steigert dies die Performance, weil der Service nach dessen Start den Layer aus dem Dataset erstellt, grundlegende Dataset-Eigenschaften im Cache zwischenspeichert und das Dataset geöffnet lässt. Wenn der Service ausgeführt wird, stehen die Dataset-Eigenschaften sofort zur Verfügung, und das Dataset ist geöffnet und steht bereit.
So erstellt beispielsweise die Erweiterung "ArcGIS Network Analyst" Reisezeitpolygone, die Layer verwenden. Je nach Größe des Datasets können dadurch pro Serviceausführung mehr als ein oder zwei Sekunden eingespart werden.
Verwenden von lokal in ArcGIS Server gespeicherten Daten
Die vom Web-Werkzeug benötigten Projektdaten müssen lokal in ArcGIS Server gespeichert sein. Daten, die freigegeben werden oder auf die über eine Netzwerkfreigabe (UNC) zugegriffen wird, sind langsamer als wenn sie auf dem gleichen Rechner verfügbar wären. Die Performance-Werte variieren stark, es kann jedoch durchaus vorkommen, dass das Lesen und Schreiben von Daten in einem LAN doppelt so viel Zeit wie das Lesen von der lokalen Festplatte in Anspruch nimmt.
Schreiben von Zwischendaten in den Arbeitsspeicher
Schreiben Sie Zwischendaten in den memory-Workspace. Dies ist schneller als das Schreiben von Daten auf die Festplatte.
Hinweis:
Ausgabedaten können in den Speicher geschrieben werden, solange die Option, Ausgaben als Karten-Layer anzuzeigen, nicht festgelegt ist.
Weitere Informationen zum Schreiben von Daten in den Speicher
Vorbereiten der Daten, die von Tasks verwendet werden
Die meisten Web-Werkzeuge sind als spezialisierte Workflows konzipiert, die Antworten auf spezifische räumliche Abfragen von Web-Clients liefern. Da es sich bei diesen Workflows um spezifische Vorgänge für bekannte Daten handelt, besteht fast immer die Möglichkeit, die Daten zum Optimieren des Vorgangs vorzuverarbeiten. Beispielsweise handelt es sich beim Hinzufügen eines Attributs oder räumlichen Index um einen Vorverarbeitungsvorgang, mit dem die räumliche oder Attributauswahl optimiert wird.
Mithilfe der Werkzeuge Near oder Near-Tabelle erstellen können Entfernungen zwischen Standorten vorab berechnet werden. Angenommen, der Service erlaubt Clients, unbebaute Flurstücke auszuwählen, die sich in einer vom Benutzer angegebenen Entfernung vom Los Angeles River befinden. Sie könnten diese Auswahl mithilfe des Werkzeugs Layer lagebezogen auswählen vornehmen, aber es wäre viel schneller, die Entfernung jedes Flurstücks vom Los Angeles River (mithilfe des Werkzeugs Near) vorab zu berechnen und die ermittelte Entfernung als Attribut der Flurstücke zu speichern. Sie würden dieses Attribut mithilfe des Werkzeugs Attributindex hinzufügen indizieren. Wenn der Client nun eine Abfrage stellt, kann der Task anstatt einer weniger effizienten räumlichen Abfrage eine Attributauswahl auf Basis des Entfernungsattributs durchführen.
Hinzufügen von Attributindizes
Wenn das Werkzeug mit Attributabfragen Daten auswählt, sollten Sie mit dem Werkzeug Attributindex hinzufügen einen Attributindex für jedes in Abfragen verwendete Attribut erstellen. Der Index muss nur einmal erstellt werden und dies kann außerhalb des Modells oder Skripts erfolgen.
Hinzufügen von räumlichen Indizes
Wenn das Modell oder Skript räumliche Abfragen von Shapefiles ausführt, erstellen Sie mit dem Werkzeug Räumlichen Index hinzufügen einen räumlichen Index für das Shapefile. Bei Geodatabase-Feature-Classes werden räumliche Indizes automatisch erstellt und verwaltet. Unter bestimmten Umständen kann durch Neuberechnen eines räumlichen Index die Performance verbessert werden. Weitere Informationen finden Sie unter Räumliche Indizes in der Geodatabase.
Verwenden des synchronen Modus statt des asynchronen Modus für Anwendungen mit kurzer Ausführungszeit
Ein Web-Werkzeug kann so eingerichtet werden, dass es synchron oder asynchron ausgeführt wird. Die asynchrone Ausführung eines Werkzeugs stellt für den Server eine Zusatzbelastung dar. Die synchrone Ausführung desselben Tasks ist immer schneller als im asynchronen Modus. Bei Tasks mit einer langen Ausführungszeit ist der Unterschied jedoch nur noch marginal, und synchrone Services können während der Ausführung des Werkzeugs keine Statistiken und Meldungen bereitstellen, was zu einer weniger guten Experience für die Benutzer führen kann.
Vermeiden von unnötigen Koordinatentransformationen
Wenn das Web-Werkzeug Datasets mit verschiedenen Koordinatensystemen verwendet, müssen möglicherweise bei der Werkzeugausführung die Datasets in ein gemeinsames Koordinatensystem transformiert werden. Je nach Größe der Datasets kann das Transformieren von einem Koordinatensystem in ein anderes den Aufwand unnötig erhöhen. Sie müssen darauf achten, welches Koordinatensystem in den Datasets verwendet wird und ob die Werkzeuge Koordinaten transformieren müssen.
Verringern der Datengröße
Jede Datenverarbeitungssoftware arbeitet schneller, wenn die Datasets klein sind. Nachfolgend finden Sie einige Möglichkeiten zur Verringerung der Größe von geographischen Daten:
- Entfernen Sie mit dem Werkzeug Feld löschen nicht benötigte Attribute aus den Projektdaten.
- Linien- und Polygon-Features weisen Stützpunkte auf, die die Form der Features definieren. Die Features weisen möglicherweise mehr Stützpunkte als erforderlich auf, sodass die Größe des Datasets unnötig erhöht wird.
- Die Daten können eventuell doppelte Stützpunkte oder Stützpunkte, die so nahe beieinander liegen, dass sie nicht zur Definition des Features beitragen, enthalten.
- Die Anzahl der Stützpunkte entspricht nicht dem Analysemaßstab. Beispielsweise enthalten die Features Details, die bei großen Maßstäben angemessen sind, jedoch erfolgt die Analyse oder Darstellung mit einem kleinen Maßstab.