Um eine Natural RPC-Umgebung einzurichten und in Betrieb zu nehmen, müssen Sie die unten beschriebenen Schritte für alle Client-Naturals und Server-Naturals durchführen und die plattformspezifischen Hinweise und Aspekte lesen.
Wenn nicht anders vermerkt, gilt diese Anleitung für alle Umgebungen.
Um eine Natural RPC-Umgebung einzurichten, müssen Sie die folgenden Schritte ausführen:
Benutzen Sie die Funktion Service Directory Maintenance der SYSRPC Utility,
um den Namen des Servers zu definieren, der für jedes remote auszuführende CALLNAT-Statement verwendet werden
soll.
Einzelheiten und Beispiel-Bildschirme finden Sie unter Funktion Service Directory Maintenance aufrufen (in der Debugger und Dienstprogramme-Dokumentation).
Das generierte Directory-Subprogramm NATCLTGS muss der
Natural-Client-Anwendung zur Verfügung gestellt werden. Wenn Sie NATCLTGS
nicht in Ihrer Client Library generiert haben, verschieben Sie NATCLTGS in
diese Library oder in eine der Steplibs.
Wahlweise können Sie eine der folgenden Möglichkeiten zur Serverauswahl verwenden:
Einen Standard-Server adressieren
Siehe Festlegen
einer Standard-Serveradresse innerhalb einer
Natural-Sitzung oder Schlüsselwort-Subparameter DFS des
Profilparameters RPC oder des Parameter-Makros NTRPC.
Einen Remote Directory Server verwenden
Siehe Verwendung eines
Remote Directory Servers oder Schlüsselwort-Subparameter RDS des
Profilparameters RPC oder des Parameter-Makros NTRPC.
Dieser Schritt gilt nur, wenn Sie nicht mit automatischer Natural RPC-Ausführung arbeiten wollen oder können (siehe Betrieb einer Natural RPC-Umgebung , Mit automatischer Natural RPC-Ausführung arbeiten).
Verwenden Sie für jedes remote auszuführende CALLNAT-Statement die
Funktion Interface Object Generation der SYSRPC Utility
(siehe Interface-Objekte
erstellen).
Beachten Sie, dass das generierte Interface-Objekt der Natural-Client-Umgebung zur Verfügung gestellt werden muss. Wenn Sie das Interface-Objekt nicht in Ihrer Client-Library generieren, verschieben Sie das Interface-Objekt in diese Library oder in eine der Steplib Libraries.
Setzen Sie die Schlüsselwort-Subparameter des Profilparameters RPC oder des
Parameter-Makros NTRPC, die für die Client-spezifische Behandlung
von Remote Procedure Calls relevant sind.
| Schlüsselwort-Subparameter | Funktion |
|---|---|
MAXBUFF |
Maximale Puffergröße (nur bei automatischer RPC-Ausführung). |
RPCSIZE |
Größe des von Natural RPC verwendeten Puffers (nur für Mainframe-Clients). |
| Schlüsselwort-Subparameter | Funktion |
|---|---|
ACIVERS |
Dieser Parameter ist obsolet und wird ignoriert. Die höchste ACI-Version wird durch den RPC-Nukleus und EntireX ausgehandelt. |
AUTORPC |
Automatische Natural RPC-Ausführung. |
COMPR |
Einstellen der RPC-Pufferkomprimierung.
Siehe auch Betrieb einer Natural RPC-Umgebung, Komprimierung verwenden. |
CPRPC |
Codepage-Namen definieren. |
DFS |
Standard-Serveradresse des RPC-Clients festlegen. |
RDS |
Remote Directory Server definieren. |
RPCSDIR |
Geben Sie den Namen der Natural Library an, in der sich das Service Directory befindet. |
TIMEOUT |
Wartezeit auf Antwort des RPC-Servers. |
TRYALT |
Alternative Serveradresse versuchen. |
Die folgenden Hinweise gelten für die Verwendung des EntireX-Brokers.
Anmerkungen:
DFS
angegebenen Namen müssen einen aktiven EntireX Broker identifizieren und einer
Serverdefinition in der EntireX Broker-Attributdatei entsprechen (siehe Einrichten einer
EntireX Broker-Umgebung).
TIMEOUT
angegebene Wartezeit wird verwendet, um das Feld WAIT des EntireX Broker
ACI zu setzen. Wenn TIMEOUT auf Null gesetzt wird, wird
WAIT=YES gesetzt und der Client wartet auf die
CLIENT-NONACT-Zeit. Ist die Wartezeit abgelaufen, wird der Remote
Procedure Call mit einer entsprechenden Fehlermeldung beendet. Die Verwendung von
TIMEOUT ermöglicht es Ihnen, die Vorteile des
Transport-Timeout-Mechanismus zu nutzen, der von den EntireX Broker-Stubs
bereitgestellt wird.
Ein Natural-Server ist eine Natural-Task (Server-Task), die Natural-Subprogramme (Services, d.h. Dienste) ausführen kann. Diese Natural-Task ist in der Regel eine asynchrone oder Hintergrund-Task (detached process). Der EntireX-Broker und der Client identifizieren ihn über einen Knotennamen (nodename) und einen Servernamen (servername).
Um einen Natural-Server einzurichten, führen Sie die im Folgenden beschriebenen Schritte aus:
Setzen Sie die plattformabhängigen Natural-Parameter, die für die allgemeine und serverspezifische Behandlung von Remote Procedure Calls für das Server-Natural relevant sind.
Erstellen Sie ein RPC-spezifisches Natural-Parametermodul.
Setzen Sie die Schlüsselwort-Subparameter des Profilparameters RPC oder des
Parameter-Makros NTRPC (siehe Tabelle unten) wie
gewünscht.
Erstellen Sie eine RPC-spezifische Natural-Parameterdatei.
Setzen Sie die Natural-Profilparameter (siehe Tabelle unten) wie gewünscht.
| Schlüsselwort-Subparameter | Funktion |
|---|---|
MAXBUFF |
Maximale Puffergröße. |
RPCSIZE |
Größe des von Natural RPC verwendeten Puffers (nur für Großrechner-Server) |
SERVER |
Natural-Sitzung als RPC-Server-Sitzung starten. |
SRVNAME |
Name des RPC-Servers, siehe Hinweis für EntireX Broker unten. |
SRVNODE |
Name des Knotens, siehe Hinweis für EntireX Broker unten. |
| Schlüsselwort-Subparameter | Funktion |
|---|---|
ACIVERS |
Dieser Parameter ist obsolet und wird ignoriert. Die höchste ACI-Version wird durch den RPC-Nukleus und EntireX ausgehandelt. |
CPRPC |
Name der Codepage festlegen. |
LOGONRQ |
Anmeldung für RPC-Server-Anforderung erforderlich. |
NTASKS |
Mindest- und Höchstwert der Anzahl der Server-Replikate (nur bei Großrechner-Servern). |
SRVCMIT |
Zeit, zu der ein Natural RPC Server eine RPC-Konversation oder eine nicht konversationelle RPC-Anfrage automatisch festschreibt (Commit). |
SRVRTRY |
Anzahl der Versuche eines RPC-Servers, sich mit
einem nicht aktiven EntireX-Broker zu verbinden/neu zu verbinden
(REGISTER), und die Wartezeit zwischen zwei aufeinanderfolgenden
Versuchen.
|
SRVTERM |
Server-Beendigungsereignis. |
SRVUSER |
Benutzerkennung für die RPC-Server-Registrierung. |
SRVWAIT |
Wartezeit des RPC-Servers auf eine Client-Anforderung. |
TRACE |
Definition der zu verfolgenden Komponenten. |
TRANSP |
Server-Transportprotokoll (nicht mehr erforderlich). |
Die folgenden Hinweise gelten für die Verwendung des EntireX-Brokers.
Anmerkungen:
SRVNODE
angegebene Name muss einen aktiven EntireX Broker identifizieren und der mit dem
Schlüsselwort-Subparameter SRVNAME angegebene Name muss einer
Serverdefinition in der EntireX Broker-Attributdatei entsprechen, siehe Einrichten einer
EntireX Broker-Umgebung.
SRVWAIT
angegebene Wartezeit wird verwendet, um das Feld WAIT des EntireX Broker
ACI zu setzen. Wenn SRVWAIT nicht angegeben oder auf Null
gesetzt ist, wird WAIT=YES gesetzt, und der Server wartet auf die
SERVER-NONACT-Zeit. Ist die Wartezeit verstrichen, wird eine
entsprechende Meldung in die RPC-Server-Trace-Datei geschrieben, und der RPC-Server
wartet weiter auf die nächste Client-Anforderung. Die Verwendung des
SRVWAIT-Parameters ermöglicht es Ihnen, den
Transport-Timeout-Mechanismus zu nutzen, der von den EntireX Broker-Stubs
bereitgestellt wird.
TS) der
Funktion Server Command Execution der SYSRPC
Utility, oder verwenden Sie die Anwendungsprogrammierschnittstelle USR2075N
oder USR8208N, oder verwenden Sie den System
Management Hub for EntireX.
Um sicherzustellen, dass Ihre Natural-Server-Sitzung in den Kommando-Modus
wechselt:
Deaktivieren Sie den Natural-Menü-Modus, indem Sie den Natural-Profilparameter
MENU auf
=OFF setzen (gilt nur bei Großrechner-Servern).
Vermeiden Sie:
ein Programm auf den Natural-Stack zu legen, das nie beendet wird.
ein STARTUP-Programm zu verwenden, das nie beendet wird.
den NEXT-Modus in Natural Security für Ihre Server Library zu
deaktivieren.
Stellen Sie sicher, dass die von der Natural-Server-Sitzung verwendete Adabas ETID innerhalb eines bestimmten Adabas-Nukleus singulär ist.
Um einen Natural Server zu starten, gehen Sie wie im Abschnitt Starten eines Natural RPC Servers beschrieben vor.
Dieser Server wartet dann auf remote CALLNAT-Anforderungen von einem
Client.
Anmerkung zu Natural im Batch-Modus unter z/OS:
Informationen zu Servern, die den Schlüsselwort-Subparameter NTASKS des
Profilparameters RPC oder des Parameter-Makros NTRPC verwenden, finden Sie unter Besondere Aspekte bei Großrechner-Natural RPC Servern mit
Replicaten.
Um eine EntireX Broker-Schnittstelle einzurichten, führen Sie die unten beschriebenen Schritte durch:
Ermöglichen Sie für Ihre Natural-Umgebung den Zugang zum EntireX Broker Stub. Dieser Schritt hängt von der verwendeten Plattform ab.
Zugang zum EntireX
Broker Stub auf dem Großrechner bereitstellen
Verlinken Sie den EntireX Broker Stub NATETB23 mit Ihrem Natural oder
geben Sie den Profilparameter RCA=BROKER an, damit NATETB23
dynamisch zur Laufzeit geladen wird.
In den folgenden Fällen kann NATETB23 nicht verwendet werden und Sie
müssen einen anderen EntireX Broker-Stub verwenden:
Wenn Sie Impersonation im z/OS-Batch-Modus verwenden wollen, müssen Sie
stattdessen BROKER verwenden.
Wenn Sie Impersonation unter CICS verwenden wollen, müssen Sie stattdessen CICSETB verwenden.
Um BKIMBTIA, BROKER oder CICSETB dynamisch
zur Laufzeit zu laden, geben Sie RCA=BROKER
RCALIAS=(BROKER,stubname) an.
Weitere Einzelheiten finden Sie in der Dokumentation zum EntireX Communicator.
Anmerkung
Bitte prüfen Sie die Voraussetzungen für den Einsatz von CICSETB
hinsichtlich der erforderlichen PPT-Einträge und der Adabas-Link-Routine.
Zugriff auf den EntireX
Broker Stub auf UNIX bereitstellen
Der EntireX Broker Stub wird im Zuge der EntireX-Installation automatisch zur
Verfügung gestellt.
Zugriff auf den EntireX
Broker-Stub unter Windows bereitstellen
Der EntireX-Broker-Stub wird im Zuge der EntireX-Installation automatisch zur
Verfügung gestellt.
Die mögliche ACI-Version wird zwischen dem RPC-Nukleus und EntireX ausgehandelt und auf den höchstmöglichen Wert gesetzt. Diese Version von Natural schränkt die ACI-Version auf Version 13 ein, auch wenn EntireX eine höhere ACI-Version unterstützt.
Wenn TCP/IP als Transportmethode verwendet wird und Sie den Serverknoten über einen Hostnamen adressieren, haben Sie folgende Möglichkeiten:
Definieren Sie den Serverknoten im Hosts and Services Directory Ihrer TCP/IP-Installation.
Verwenden Sie ein Domain Name System (DNS) für die Auflösung des Domänennamens.
Fügen Sie in der EntireX Broker-Attributdatei Folgendes hinzu:
Für jeden Natural RPC Server muss eine Dienstdefinition wie folgt angegeben werden:
CLASS=RPC, SERVICE=CALLNAT,
SERVER=servername.
Wenn Sie die Konvertierungsdienste verwenden wollen, setzen Sie
CONVERSION=userexit. In diesem Fall müssen
Sie den Schlüsselwort-Subparameter CPRPC des Profilparameters RPC oder des
Parameter-Makros NTRPC entsprechend einstellen.
Wenn Sie Reliable RPC verwenden möchten, sind zusätzliche Einstellungen für jeden Natural RPC Server erforderlich, der Reliable RPC unterstützen soll:
Das EntireX Broker-Attribut MAX-UOWS muss auf einen Wert größer Null
gesetzt werden.
Das EntireX Broker-Attribut DEFERRED (aufgeschoben) muss auf
YES gesetzt werden, wenn der Client in der Lage sein soll, Reliable
RPC-Nachrichten an einen RPC-Server zu senden, der dem EntireX Broker bekannt ist,
aber noch nicht gestartet wurde.
Das EntireX Broker-Attribut STORE muss auf BROKER gesetzt
werden, wenn eine Wiederherstellung von Reliable RPC-Nachrichten nach einem
Systemausfall möglich sein soll. Außerdem muss der persistente Speicher von EntireX
Broker aktiviert sein.
Die Lebensdauer der Reliable RPC Nachricht selbst (EntireX Broker Attribut
UWTIME) und die Lebensdauer ihres Status (EntireX Broker Attribut
UWSTAT-LIFETIME) müssen an Ihre Bedürfnisse angepasst werden.
Sie können die API USR4012N verwenden, um im Falle eines Fehlers in der
Anwendung auf dem Natural RPC-Server die Rückgabe der Natural-Fehlermeldung NAT1999 mit
dem von Ihnen in der API angegebenen Text an den RPC-Client zu erzwingen.
Weitere Informationen siehe Beschreibung im Text-Objekt USR4012T in der
Library SYSEXT.