Kurzer Überblick über ArcSDE-Dienste

In diesem Thema wird die Funktionsweise eines ArcSDE-Dienstes erklärt. Zudem erfahren Sie, was geschieht, wenn ein Client eine Verbindung über einen ArcSDE-Dienst herstellt.

Funktionsweise des ArcSDE-Dienstes

Wenn Sie die Verbindung zur Datenbank über einen ArcSDE-Dienst herstellen (dieser wird auch als ArcSDE-Anwendungsserver bezeichnet), überwacht jeder ArcSDE-Dienst mit dem giomgr-Prozess einen bestimmten TCP/IP-Dienstnamen und eine TCP/IP-Portnummer auf Benutzerverbindungen. Der Standardname des Dienstes lautet "esri_sde" und die Standard-Portnummer "5151".

Der Service-Name und die Portnummer müssen der Datei services.sde in $SDEHOME/etc (Linux) oder %SDEHOME%\etc (Windows) hinzugefügt werden. Weitere Informationen zu dieser Datei finden Sie unter Datei "services.sde". Sie müssen den gleichen Eintrag in der "services"-Datei des Betriebssystems vornehmen.

Unter Windows können die ArcSDE-Dienste über das Menü Windows-Dienste gestartet und beendet werden. Unter Linux und UNIX müssen Sie immer den Befehl "sdemon" verwenden.

HinweisHinweis:

Bei den meisten der unterstützten Datenbankmanagementsystemen (DBMS) sind mehrere Datenbanken auf einem Server zulässig. Jede Datenbank muss über einen eigenen ArcSDE-Dienst verfügen, über diesen ArcSDE-Dienst können jedoch mehrere Client-Verbindungen zur Datenbank hergestellt werden.

Was geschieht, wenn eine Client-Anwendung eine Verbindung über einen ArcSDE-Dienst herstellt?

Die nachstehend beschriebene Ereignisfolge findet statt, wenn eine ArcGIS-Client-Anwendung über einen ArcSDE-Dienst eine Verbindung zu einer Enterprise-Geodatabase herstellt.

  1. Der giomgr-Prozess überwacht seinen TCP/IP-Port auf Verbindungen.

    Der giomgr-Prozess muss sich im Überwachungsstatus befinden, bevor eine Verbindungsanforderung verarbeitet werden kann. Stellen Sie sicher, dass der ArcSDE-Service gestartet wurde und sich im Überwachungsstatus befindet. Verwenden Sie unter UNIX und Linux den Befehl "sdemon –o status", um den Status des giomgr-Prozesses zu ermitteln.

    Unter Windows kann der Status des ArcSDE-Anwendungsdienstes im Menü Dienste ermittelt werden. Öffnen Sie in der Windows-Systemsteuerung das Fenster "Verwaltung". Doppelklicken Sie auf das Symbol Dienste, um das Menü Dienste aufzurufen. Für den ArcSDE-Dienst sollte in der Statusspalte der Wert "Gestartet" angegeben sein. Unter Windows können Sie anstelle des Menüs Dienste auch den Befehl "sdemon –o status" von einer MS-DOS-Befehlszeile aus verwenden.

  2. Anwendungen senden Verbindungsanforderungen an den ArcSDE-Dienst.

    Der giomgr-Prozess beantwortet die Verbindungsanforderungen nacheinander. In Abhängigkeit von dem zugrunde liegenden DBMS kann die Überprüfung einer Verbindungsanforderung durch den giomgr-Prozess zwischen einer und fünf Sekunden dauern. Wenn viele Anwendungen gleichzeitig versuchen, eine Verbindung herzustellen, kann es bei einigen zu einer Überschreitung des TCP/IP-Timeouts von 75 Sekunden kommen.

  3. Der giomgr-Prozess vergleicht die Uhrzeit des Anwendungscomputers mit der Uhrzeit seines Hosts.

    Wenn die Uhrzeit des Anwendungscomputers um mehr als den Wert von MAXTIMEDIFF in Sekunden von der Uhrzeit des Servers abweicht, wird die Verbindungsherstellung der Anwendung vom giomgr-Prozess abgelehnt. MAXTIMEDIFF wird in der Tabelle SERVER_CONFIG festgelegt. Weitere Informationen finden Sie unter Die Systemtabelle SERVER_CONFIG.

  4. Der giomgr-Prozess vergleicht die Version der Client-Anwendung mit der Version des ArcSDE-Dienstes.

    Wenn die Version der Client-Anwendung älter ist als die Version des Anwendungsservers, wird die Verbindungsherstellung abgelehnt. Ausnahmen bilden ArcGIS 10-Clients, die mit 10.1-Anwendungsservern verbunden sind.

  5. Vom giomgr-Prozess wird ein gsrvr-Prozess für die Anwendung gestartet.

    Der giomgr-Prozess muss einen gsrvr-Prozess erzeugen können. Wenn die von den aktuellen Betriebssystemeinschränkungen festgelegte maximale Anzahl an Prozessen erreicht ist, schlägt dieser Vorgang fehlt, und es wird kein gsrvr-Prozess erstellt.

  6. Der gsrvr-Prozess stellt eine Verbindung zum DBMS her.

    Die Client-Anwendung muss einen gültigen Benutzer- und Datenbanknamen sowie ein gültiges Kennwort bereitstellen (für Oracle-Datenbankmanagementsysteme ist kein Datenbankname erforderlich), wenn die Verbindungsanforderung an den giomgr-Prozess gesendet wird. Ungültige Einträge werden mit dem Fehler -9 SE_INVALID_USER abgelehnt.

  7. Der giomgr-Prozess verknüpft die Anwendung mit dem gsrvr-Prozess.

    Nachdem der giomgr-Prozess die Anwendung mit dem gsrvr-Prozess verknüpft hat, nimmt er die Überwachung auf neue Verbindungen wieder auf und führt andere Verwaltungs-Tasks für den ArcSDE-Dienst durch. Die gesamte Kommunikation zwischen Anwendung und DBMS wird vom gsrvr-Prozess erledigt.

Verwandte Themen

9/11/2013