Beenden eines Natural RPC Servers

#### Search Results

Search

# Beenden eines Natural RPC Servers

In diesem Kapitel wird beschrieben, wie Sie einen Natural RPC Server beenden können. Dies kann entweder durch das Beenden eines einzelnen RPC-Server-Replikats oder des EntireX-Broker-Dienstes, der die RPC-Verbindung unterstützt, erfolgen. Es gibt mehrere Vorgehensweisen.

- SYSRPC Utility benutzen

- EntireX System Management Hub verwenden

- Anwendungsprogrammierschnittstelle USR2073N verwenden

- Anwendungsprogrammierschnittstelle USR2075N verwenden

- Anwendungsprogrammierschnittstelle USR8208N verwenden

- Anwendungsprogrammierschnittstelle USR8213N verwenden

- Anwendungsprogrammierschnittstelle USR8220N verwenden

- Anwendungsprogrammierschnittstelle USR9175N verwenden

- Anwendungsprogrammierschnittstelle USR9176N verwenden

- Anwendungsprogrammierschnittstelle USR9177N verwenden

- Server-Beendigung bei Verwendung eines Attach Manager

- User Exit NATRPC99

## SYSRPC Utility benutzen

Diese Methode zum Beenden eines Natural RPC Servers kann entweder bei einem einzelnen RPC-Server-Replikat oder dem EntireX Broker-Dienst angewendet werden:

- Mit SYSRPC ein einzelnes RPC-Server-Replikat beenden

- Mit SYSRPC ein einzelnes RPC-Server-Replikat nach Folgenummer beenden

- Mit SYSRPC einen EntireX-Broker-Dienst beenden

### Mit SYSRPC ein einzelnes RPC-Server-Replikat beenden

Benutzen Sie das Kommando `TE` (Terminate RPC Server) in der `SYSRPC` Utility, wie unter RPC-Server beenden in der SYSRPC Utility-Dokumentation beschrieben.

Anmerkung
Ein Natural RPC Server kann nur beendet werden, wenn der Server zurzeit weder ein entferntes `CALLNAT` ausführt noch auf die nächste `CALLNAT`-Anforderung in einer Konversation wartet.

### Mit SYSRPC ein einzelnes RPC-Server-Replikat nach Folgenummer beenden

Mit dem Befehl `LN` (List Server with Sequence Number) können Sie die Server, die mit dem Kommando `TE` beendet werden sollen, aus einer detaillierten Liste von Replikaten auswählen, die die einem Server zugewiesene Folgenummer enthält. Weitere Informationen siehe RPC-Server beenden in der SYSRPC Utility-Dokumentation.

### Mit SYSRPC einen EntireX-Broker-Dienst beenden

Verwenden Sie das Kommando `TS` (Terminate EntireX Broker Service) in der `SYSRPC` Utility, wie unter RPC-Server beenden in der SYSRPC Utility-Dokumentation beschrieben.

## EntireX System Management Hub verwenden

Wählen Sie zum Abmelden die Schaltfläche Deregister in der Teilbaumstruktur Server des EntireX System Management Hub. Sie können auch die Schaltfläche Deregister in der Teilbaumstruktur Service des EntireX System Management Hub verwenden.

## Anwendungsprogrammierschnittstelle USR2073N verwenden

Die Anwendungsprogrammierschnittstelle (API) `USR2073N` ermöglicht es Ihnen, einen Natural RPC Server anzupingen oder zu beenden.

Die Schnittstelle sendet ein `PING`- oder `TERMINATE`-Kommando an einen RPC-Server, der durch den Knotennamen und den Servernamen angegeben wird. Die zurückgegebene Nachricht enthält die folgenden Informationen:

- die Version des laufenden Servers (`PING`) bzw.

- die Bestätigung der Beendigung (`TERMINATE`) oder

- eine Fehlermeldung.

Um USR2073N zu benutzen:

1. Kopieren Sie das Subprogramm `USR2073N` aus der Library `SYSEXT` in die Library `SYSTEM` oder in die Steplib Library oder in eine beliebige Anwendung in der Serverumgebung.

2. Geben Sie mit einem `DEFINE DATA`-Statement im Structured Mode oder einem `RESET`-Statement im Reporting Mode die folgenden Parameter an:

   Parameter | Format | I/O | Beschreibung
   --- | --- | --- | ---
   `FUNCTION` | A10 | I | `PING` | Fragt den RPC-Server nach seiner Version.
   `TERMINATE` | Leitet die Beendigung der Natural RPC Server-Task ein.
   `SRVNODE` | A192 | I | Knotenname. Siehe Schlüsselwort-Subparameter `SRVNODE` des Profilparameters `RPC` oder des Parameter-Makros `NTRPC`.
   `SRVNAME` | A32 | I | Name des Servers. Siehe Schlüsselwort-Subparameter `SRVNAME` des Profilparameters `RPC` oder des Parameter-Makros `NTRPC`.
   `LOGON` | A1 | I | Das Logon-Flag Y (ja) zeigt an, dass Anmeldedaten an den Natural RPC Server übermittelt werden müssen.
   `USER-ID` | A8 | I | Wenn `LOGON=Y`, dann sind Benutzerkennung und Passwort die Anmeldedaten für Natural Security. Wenn der Client nicht unter Natural Security (NSC) läuft und das Logon-Flag gesetzt ist, müssen die Benutzerkennung und das Passwort angegeben werden, es sei denn, die Daten sind über die Anwendungsprogrammierschnittstelle `USR1071N` eingegeben worden. Siehe Verwendung von Security, Natural RPC mit Natural Security verwenden.
   `PASSWORD`
   `MSG` | A79 | O | Zurückgegebene Nachricht.
   `RC` | I2 | O | Rückgabecode. Mögliche Werte:
   `0` | `MSG` enthält eine normale Nachricht vom RPC-Server oder EntireX Broker.
   `1` | `MSG` enthält eine Fehlermeldung vom RPC-Server oder EntireX Broker.
   `2` | `MSG` enthält eine Fehlermeldung vom Interface.
   `3` | Natural Security-Fehler.

3. Bevor Sie die API aufrufen, füllen Sie die oben aufgeführten Input-Variablen.

## Anwendungsprogrammierschnittstelle USR2075N verwenden

Über die Anwendungsprogrammierschnittstelle (API) `USR2075N` können Sie einen EntireX-Brokerdienst aus Ihrer Anwendung heraus zu beenden.

Mit dem Kommando `TERMINATE-SERVICE` verwendet die Schnittstelle den Command and Information Service von EntireX, um die Aufgabe zu erfüllen. Zunächst sendet sie eine Anmeldeanforderung an den EntireX Broker. Dann erhält sie eine Liste aller Server, die nach Serverklasse, Servername und Diensttyp spezifiziert ist. Schließlich sendet sie an jeden Server eine Abschaltanforderung. Eine Meldung zeigt an, wie viele Server beendet wurden.

Mit dem Kommando `PING` wird der Identifikationsstring eines Servers zurückgegeben.

Um USR2075N zu verwenden:

1. Kopieren Sie das Subprogramm `USR2075N` aus der Library `SYSEXT` in die Library `SYSTEM` oder in die Steplib Library oder in eine beliebige Anwendung in der Serverumgebung.

2. Geben Sie mit einem `DEFINE DATA`-Statement im Structured Mode oder einem `RESET`-Statement im Reporting Mode die folgenden Parameter an:

   Parameter | Format | I/O | Beschreibung
   --- | --- | --- | ---
   `FUNCTION` | A17 | I | Geben Sie `TERMINATE-SERVICE` an. Dies sendet eine Abschaltanforderung an jeden mit den Parametern `SRVCLASS`, `SRVNAME` und `SERVICE` (Diensttyp) angegebenen Server, siehe unten. Oder: Geben Sie `PING` an. Dadurch wird der Identifikationsstring eines Servers zurückgegeben.
   `SRVNODE` | A192 | I | Geben Sie den Knotennamen an. Siehe Schlüsselwort-Subparameter `SRVNODE` des Profilparameters `RPC` oder des Parameter-Makros `NTRPC`.
   `SRVCLASS` | A32 | I | Geben Sie die Serverklasse an. Für Natural RPC Server ist dies `RPC`.
   `SRVNAME` | A32 | I | Name des Servers. Siehe Schlüsselwort-Subparameter `SRVNAME` des Profilparameters `RPC` oder des Parameter-Makros `NTRPC`.
   `SERVICE` | A32 | I | Geben Sie die Art des Dienstes an. Bei Natural RPC Servern ist dies `CALLNAT`.
   `IMMEDIATE` | L |  | `TRUE` | Sofortige Beendigung aller Konversationen für den angegebenen Server.
   `FALSE` | Bestehende Konversationen dürfen normal beendet werden; neue Konversationen werden nicht akzeptiert.
   `USER-ID` | A32 | I | Geben Sie die Benutzerkennung für die Anmeldung beim EntireX Broker an.
   `PASSWORD` | A32 | I | Wenn die EntireX Broker Security aktiv ist: Geben Sie das Passwort für den EntireX Broker an. Wenn die Security von EntireX Broker aktiv ist, müssen Sie ein Passwort angeben. Wenn die Security von EntireX Broker die Trusted User ID- Technik verwendet (nur auf Großrechnern), können Sie anstelle eines Benutzerpassworts das reservierte Passwort `*TRUSTED` verwenden.
   `MSG` | A (dynamic) | O | Zurückgegebene Nachricht.
   `RC` | I2 | O | Rückgabecode. Mögliche Werte:
   `0` | `MSG` enthält eine normale Nachricht vom EntireX Broker.
   `1` | `MSG` enthält eine Fehlermeldung vom EntireX-Broker..
   `3` | `MSG` enthält eine Fehlermeldung von Natural Security auf der Client-Seite.

3. Bevor Sie die API aufrufen, geben Sie die oben aufgeführten Input-Variablen ein.

## Anwendungsprogrammierschnittstelle USR8208N verwenden

Die Anwendungsprogrammierschnittstelle (API) `USR8208N` ist eine erweiterte Version der API `USR2075N` mit den folgenden neuen Funktionen:

- Mit dem Kommando `TERMINATE-SERVICE` verwendet die Schnittstelle den Command and Information Service von EntireX, um die Aufgabe zu erfüllen. Das Kommando `SHUTDOWN-SERVICE` wird an den EntireX Broker gesendet, wenn dessen Version 5 oder höher ist. Es werden Versionsinformationen über den EntireX-Broker und den Befehls- und Informationsdienst selbst zurückgeliefert. Ansonsten wird die gleiche Methode wie in `USR2075N` verwendet.

- Mit dem Kommando `INFO-SERVICE` werden zusätzliche Informationen über den/die angegebenen Dienst(e) vom EntireX Broker zurückgegeben, wie `SERVER-CLASS`, `SERVER-NAME`, `SERVICE`, `TRANS`, `CONV-NONACT` usw. Eine ausführliche Beschreibung finden Sie in der webMethods EntireX V9.0.1 Dokumentation unter Components and Features of EntireX > ACI Programming > Broker CIS Data Structures > Information Reply Structures > SERVICE-OBJECT (Struct INFO_SV).

Um USR8208N zu verwenden:

- Siehe die ähnliche Anweisung Um USR2075 zu verwenden.

## Anwendungsprogrammierschnittstelle USR8213N verwenden

Die Anwendungsprogrammierschnittstelle (API) `USR8213N` fährt einen Server auf einem EntireX Broker-Knoten herunter.

Diese Schnittstelle ruft zunächst eine Liste der bei einem bestimmten EntireX Broker registrierten RPC-Server-Replikate ab. Für jeden Server gibt die Liste das Startdatum/die Startzeit, den Hostnamen, den Anwendungsnamen und die IP-Adresse (falls verfügbar) an. Sie gibt auch die Folgenummer an, die jedem Server während der Registrierung zugewiesen wurde. Die Schnittstelle sendet dann eine Shutdown-Anforderung mit der Folgenummer an den EntireX Broker.

Um USR8213N zu verwenden:

- Kopieren Sie das Subprogramm `USR8213N` aus der Library `SYSEXT` in die Library `SYSTEM` oder in die Steplib-Library oder in eine beliebige Anwendung in der Natural-RPC-Server-Umgebung und verfahren Sie wie im Textobjekt `USR8213T` in der Library `SYSEXT` beschrieben.

## Anwendungsprogrammierschnittstelle USR8220N verwenden

Die Anwendungsprogrammierschnittstelle (API) `USR8220N` löst die Beendigung des Natural RPC Servers aus. Nach dem Aufruf von `USR8220N` können Sie eine Bestätigungsmeldung an den RPC-Client senden. Diese API ist nützlich, um den Natural RPC Server bei schweren Fehlern explizit zu beenden.

Um USR8220N zu verwenden:

1. Kopieren Sie das Subprogramm `USR8220N` aus der Library `SYSEXT` in die Library `SYSTEM` oder in die Steplib Library oder in eine beliebige Anwendung in der Natural RPC Server-Umgebung.

2. Erstellen Sie ein Natural RPC Server-Subprogramm, das die API `USR8220N` aufruft und eine optionale Bestätigungsmeldung an das RPC-Client-Programm sendet.

## Anwendungsprogrammierschnittstelle USR9175N verwenden

Die Anwendungsprogrammierschnittstelle (API) `USR9175N` ist eine verbesserte Version der API `USR2073N` mit einem erweiterten `PASSWORD`-Parameter (Format A128) und zusätzlichen Werten beim `FUNCTION`-Parameter.

Parameter | Format | I/O | Beschreibung
--- | --- | --- | ---
`FUNCTION` | A10 | I | Funktion. Mögliche Werte:
`PING` | Version des RPC-Servers abfragen.
`TERMINATE` | Den Abschluss des Natural RPC-Server-Taks initiieren.
`TREACEINFO` | Status des Natural RPC-Server-Trace abfragen.
`TRACE0` | Natural RPC-Server-Trace deaktvieren.
`TRACEn` | Natural RPC-Server-Trace mit Level `n` aktivieren. Dabei ist `n` ein Wert von `1` bis `9`.
`TRACEnE` | Natural RPC-Server-Trace mit Level `n` aktivieren, wobei `n` ein Wert von `1` bis `9` ist, und das Flag für den Trace nur im Fehlerfall setzen.

Um USR9175N zu verwenden:

1. Siehe die ähnliche Anleitung bei `USR2073N`.

2. Wenn Sie eine Trace-Funktion benutzen, müssen Sie die Druckdatei für den Trace beim Start des Natural RPC-Servers definieren.

## Anwendungsprogrammierschnittstelle USR9176N verwenden

Die Anwendungsprogrammierschnittstelle (API) `USR9176N` ist eine erweiterte Version der API `USR8208N` mit einem erweiterten Parameter `PASSWORD` (Format A128).

Um USR9176N zu verwenden:

- Kopieren Sie das Subprogramm `USR9176N` aus der Library `SYSEXT` in die Library `SYSTEM` oder in die Steplib-Library oder in eine beliebige Anwendung in der Natural-RPC-Server-Umgebung und verfahren Sie wie im Textobjekt `USR9176T` in der Library `SYSEXT` beschrieben.

## Anwendungsprogrammierschnittstelle USR9177N verwenden

Die Anwendungsprogrammierschnittstelle (API) `USR9177N` dient zum Beenden eines EntireX Broker Service mit einer fortlaufenden Nummer.

`USR9177N` ist eine erweiterte Version der API `USR8213N` mit der Möglichkeit, längere Passwörter mit dem erweiterten Parameter `PASSWORD` (Format A128) zu benutzen.

Um USR9177N zu verwenden:

- Kopieren Sie das Subprogramm `USR9177N` aus der Library `SYSEXT` in die Library `SYSTEM` oder in die Steplib-Library oder in eine beliebige Anwendung in der Natural-RPC-Server-Umgebung und verfahren Sie wie im Textobjekt `USR9177T` in der Library `SYSEXT` beschrieben.

## Server-Beendigung bei Verwendung eines Attach Manager

Der Schlüsselwort-Subparameter `SRVTERM` des Profilparameters `RPC` oder des Parameter-Makros `NTRPC` beeinflusst das Beendigungsverhalten eines Natural RPC Servers. Standardmäßig wird ein Server nie beendet (`SRVTERM=NEVER`), es sei denn, eine der zuvor beschriebenen Beendigungsmethoden wird angewendet.

Wenn Sie einen Attach Manager verwenden, um einen Natural RPC Server auf Anforderung dynamisch zu starten, sollten Sie `SRVTERM` auf `TIMEOUT` setzen. Mit dieser Parametereinstellung wird ein Natural RPC Server automatisch beendet, wenn die Wartezeit für die nächste Client-Anforderung außerhalb einer RPC-Konversation überschritten wird.

## User Exit NATRPC99

Dieser Exit wird aufgerufen, nachdem sich der Natural RPC Server vom Serverknoten per Deregister und Logoff abgemeldet hat.

- Wird kein Programm `NATRPC99` gefunden, dann wird der Server sofort wie normalerweise beendet.

- Wird das Programm `NATRPC99` gefunden, läuft der Server als normale Natural-Sitzung weiter.

`NATRPC99` wird mit einem `FETCH`-Statement ohne Parameter aufgerufen, d.h. es werden keine Daten auf den Natural Stack gelegt, bevor `NATRPC99` aufgerufen wurde.

Sie können in `NATRPC99` beliebiges Coding hinzufügen, auch Statements zur Übergabesteuerung (`FETCH`, `CALLNAT`, `PERFORM`) und Statements zur Beendigung des Programms (`STOP`, `ESCAPE` `TERMINATE`).

Wenn `NATRPC99` mit einem `RETURN`- oder `STOP`-Statement beendet wird, kehrt Natural zum `NEXT`-Prompt zurück. Wenn der `NEXT`-Prompt in der verwendeten Umgebung nicht unterstützt wird (Profilparameter `CM``=OFF`, asynchrone Natural-Sitzung usw.), bricht die Sitzung ab. Andernfalls versucht die Sitzung, den nächsten Befehl aus der primären Eingabedatei bzw. dem primären Dataset für Natural-Befehle und INPUT-Daten zu lesen.

#### Wichtige Hinweise:

1. `NATRPC99` muss ein Natural-Programm sein.

2. `NATRPC99` muss sich in der Library `SYSTEM` in der Systemdatei `FUSER` befinden. Die Steplib-Verkettung der Library, bei der der Server gerade angemeldet ist, wird nicht ausgewertet, um `NATRPC99` zu finden.

3. Natural-Objekte, die von `NATRPC99` aufgerufen werden (`FETCH`, `CALLNAT`, `PERFORM`), müssen sich entweder in der Library befinden, bei der der Server angemeldet ist, oder in einer seiner Steplibs (einschließlich `SYSTEM` in der Systemdatei `FUSER`).

4. `NATRPC99` wird für alle Arten von normalen Natural RPC Server-Beendigungen aufgerufen. Er wird nicht bei Abbrüchen (Abends) aufgerufen.

### On this page

- SYSRPC Utility benutzen
- EntireX System Management Hub verwenden
- Anwendungsprogrammierschnittstelle USR2073N verwenden
- Anwendungsprogrammierschnittstelle USR2075N verwenden
- Anwendungsprogrammierschnittstelle USR8208N verwenden
- Anwendungsprogrammierschnittstelle USR8213N verwenden
- Anwendungsprogrammierschnittstelle USR8220N verwenden
- Anwendungsprogrammierschnittstelle USR9175N verwenden
- Anwendungsprogrammierschnittstelle USR9176N verwenden
- Anwendungsprogrammierschnittstelle USR9177N verwenden
- Server-Beendigung bei Verwendung eines Attach Manager
- User Exit NATRPC99