GIS-Büro in einer Box<\/A> betrachtet werden. Wie in jedem Büro ist das Gleichgewicht zwischen Anzahl der Mitarbeiter, Nachfrage und Ressourcen eine fortlaufende Berechnung. Und das gilt auch für unser ArcGIS-Büro in der Box. Die meisten GIS-Büros sind in ihrer Mitarbeiterkapazität durch Faktoren wie verfügbare Arbeitsstationen, Netzwerkbandbreite oder Lizenzen für essentielle Software begrenzt. Wenn uns die Schreibtische und Computer ausgehen, die Analysten nutzen können, können wir keine weiteren Analysten ins Büro aufnehmen. Wenn alle Analysten an Aufgaben arbeiten, können wir keine neue Aufgabe starten lassen. Selbst wenn wir den Raum erweitern und Infrastruktur hinzufügen, können wir diese erhöhte Kapazität nicht nutzen, wenn wir nicht mehr Lizenzen für ArcGIS Pro kaufen. Mit ArcGIS Server können wir denselben Herausforderungen und Grenzen gegenüberstehen. Daher ist es äußerst wichtig, die GIS-Webdienste (services), die in ArcGIS Server laufen, so zu konfigurieren, dass sie die begrenzten verfügbaren Ressourcen effizient nutzen und gleichzeitig den besten Durchsatz und die beste Geschwindigkeit für das System gewährleisten.<\/P> <\/P>
Jeder nicht gehostete Dienst in ArcGIS Server verfügt über eine Reihe von Konfigurationsoptionen, die bei der Veröffentlichung in ArcGIS Pro oder nach der Veröffentlichung mit der administrativen Webanwendung ArcGIS Server Manager definiert werden können. Ein Dienst kann sich in ArcGIS Server in vielen Zuständen befinden. Zuerst wird er veröffentlicht. Das bedeutet, dass eine Servicedefinitionsdatei erstellt wurde und sie im Server-Verzeichnis in einem Unterordner namens arcgisinput existiert, standardmäßig zu finden unter C:\arcgisserver\directories\arcgissystem\arcgisinput. Zweitens kann der Dienst laufen oder gestoppt sein. Standardmäßig werden veröffentlichte Dienste beim Veröffentlichen gestartet, obwohl Dienste auch gestoppt werden können. Wenn ein Dienst gestartet und aktiv ist, wird er in einer anderen Webanwendung, dem ArcGIS Server Services Directory, „beworben“. Hier finden Administratoren, Herausgeber und Entwickler nützliche Eigenschaften und unterstützte Operationen, mit denen sie die Dienste inspizieren und nutzen können.<\/P>
<\/P>
Ein weiteres Ergebnis des Startens eines Dienstes in ArcGIS Server ist, dass die Manager-Komponenten unseres „Büros“ die minimale Anzahl von Instanzen für den Dienst starten; standardmäßig ist dies eine Instanz. Technisch gesehen ist eine Instanz eines Dienstes eine einzelne Verarbeitungseinheit, typischerweise manifestiert als ein ArcSOC.exe-Prozess im Betriebssystem des Host-Computers. Man kann sich eine Instanz eines Dienstes vorstellen wie einen Analysten an einem Schreibtisch mit dem erforderlichen ArcGIS Pro-Projekt, das ihm zur Verfügung steht und der auf Anfragen für definierte Fähigkeiten der beworbenen GIS-Ressource reagieren kann. Beachten Sie, dass die Anzahl der laufenden Instanzen nicht direkt mit der Anzahl der Anwendungen oder Personen zusammenhängt, die den Dienst „nutzen“. In diesem Fall läuft die Instanz und wartet einfach auf eine Anfrage. Dies wird als Leerlaufzustand der Instanz bezeichnet.<\/P>
<\/P>
ArcGIS Server Manager und Windows Task-Manager zeigen Instanzen eines GIS-Webdienstes.<\/span><\/span><\/P> <\/P>Die minimale Anzahl von Instanzen definiert, wie viele Instanzen des Dienstes gestartet werden, wenn der Dienst gestartet wird. Dies kann auf jede Zahl einschließlich null gesetzt werden. Aber übertreiben Sie es nicht mit dieser Zahl; denken Sie daran, dass dem GIS-Server nur begrenzte Ressourcen zur Verfügung stehen und höchstwahrscheinlich andere Dienste laufen, die diese Ressourcen ebenfalls benötigen, um ihre Instanzen zu unterstützen. Aber das ist nur das Minimum. Es gibt auch eine maximale Anzahl von Instanzen, die instanziiert werden können. Dieses Maximum kann größer oder gleich der minimalen Anzahl von Instanzen sein. Standardmäßig ist diese Zahl zwei. Also ist standardmäßig beim Veröffentlichen eines Dienstes auf ArcGIS Server die größte Anzahl virtueller Analysten, die jemals existieren können, um auf Anfragen an diesen Dienst zu reagieren, zwei. Wird das ausreichen? Höchstwahrscheinlich nicht. Besonders wenn es sich um einen Dienst mit mittlerer bis hoher Nachfrage handelt. Aber denken Sie daran: Obwohl Sie dieses Maximum auf jede Zahl setzen können, können Sie Ihr System leicht überlasten, indem Sie mehr Instanzen zulassen als das Gesamtsystem bewältigen kann. Außerdem laufen weitere Dienste in ArcGIS Server mit ihren eigenen Instanzen, die ebenfalls diese begrenzten Ressourcen verbrauchen müssen.<\/P> <\/P>
ArcGIS Server Manager mit Einstellungen zur Instanzkonfiguration.<\/span><\/span><\/P> <\/P>Bis einschließlich ArcGIS 10.7 war dies die einzige Möglichkeit, die Anzahl der Analysten (Instanzen) zu steuern, die in unserem GIS-Büro (ArcGIS Server) existierten. Alle Instanzen in ArcGIS Server wurden für jeden Dienst separat definiert und konnten nur auf Anfragen für diesen Dienst reagieren. Man kann sich das so vorstellen: Jeder Analyst in unserem GIS-Büro kann jeweils nur ein Projekt in ArcGIS Pro öffnen und das Projekt kann nur eine Karte oder Szene oder ein Modell oder eine andere einzelne GIS-Ressource enthalten, mit der der Analyst interagieren kann, um auf Anfragen zu reagieren. Diese werden als dedizierte Instanzen bezeichnet.<\/P> <\/P>Dann wurde bei ArcGIS 10.7 ein neues Konzept eingeführt: der Shared Instance Pool (gemeinsamer Instanzpool). Die Instanzen in diesem Pool können auf Anfragen an jeden ihnen zugewiesenen Dienst reagieren, mit bestimmten Einschränkungen bezüglich der Arten von Diensten, die ihm zugewiesen werden können. Man kann sich diesen gemeinsamen Instanzpool als eine Anzahl von Analysten in unserem Büro vorstellen, die eine Kopie desselben Projekts in ArcGIS Pro geöffnet haben, das viele Karten (jeweils eine für jeden dem Pool zugewiesenen Dienst) enthält. Der Vorteil dabei ist, dass Dienste mit geringer Nachfrage bereits laufende Instanzen haben, um sie schnell zu unterstützen; gleichzeitig werden Computerressourcen nicht durch ungenutzte Instanzen verschwendet.<\/P> <\/P>Eine letzte Überlegung bei der Betrachtung von Instanzen eines Dienstes ist, dass nicht alle Dienste, auf die unsere Benutzer Zugriff haben, als separate Dienste in ArcGIS Server verwaltet werden. Zum Beispiel wird beim Veröffentlichen eines Karten-Dienstes ein Karten-Dienst im Server Manager bereitgestellt zur Verwaltung von Eigenschaften wie min/max Anzahl von Instanzen. Dieser Karten-Dienst hat auch seine eigene URL bzw. Endpunkt, über den Clients kommunizieren. Das Karten-Dienstobjekt im ArcGIS Server Manager verfügt außerdem über eine Eigenschaft capabilities (Fähigkeiten). Über diese Eigenschaft können zusätzliche Fähigkeiten aktiviert werden wie z.B. feature access capability (Feature-Zugriffs-Fähigkeit). Wenn diese aktiviert wird, erstellt ArcGIS Server eine weitere URL für einen Feature-Service. Dieser Feature-Service sowie andere Dienste, die über eine Fähigkeit aktiviert wurden, instanziieren jedoch keine eigenen Instanzen. Die ursprünglichen für den zugehörigen Karten-Dienst erstellten Instanzen unterstützen auch den Feature-Service.<\/P> <\/P>
ArcGIS Server Manager zeigt die URL eines Karten-Dienstes.<\/span><\/span><\/P> <\/P>
ArcGIS Server Manager zeigt die URL eines Feature-Service.<\/span><\/span><\/P> <\/P>Durch diesen Artikel haben wir gesehen, dass es viele Möglichkeiten gibt, GIS-Webdienste zu steuern und zu verwalten, um die Leistung von ArcGIS Server zu beeinflussen. Aber ArcGIS Server ist nur ein Teil des Prozesses zum Erstellen, Verwalten und Teilen von GIS-Ressourcen. In den meisten Fällen haben Entscheidungen bei der Speicherung der GIS-Daten oder bei der Erstellung der Ressourcen einen größeren Einfluss als diese Optionen. Im instructor led training curriculum von Esri besprechen und implementieren wir viele spezifische Optimierungstechniken im Kurs