Starten eines Natural RPC Servers

#### Search Results

Search

# Starten eines Natural RPC Servers

In diesem Kapitel wird beschrieben, wie Sie einen Natural RPC Server auf den verschiedenen Plattformen starten.

Die folgenden Themen werden behandelt:

- Vorbereitungen vor dem Start eines Natural RPC Servers

- Starten eines Natural RPC Servers in einer Online-Großrechner-Umgebung (alle TP-Monitore)

- Starten eines Natural RPC Servers in einer Online-Großrechner-Umgebung (nur CICS)

- Starten eines Natural RPC Servers in einer Großrechner-Online-Umgebung (nur Com-plete)

- Starten eines Batch-Servers in einer Großrechner-Umgebung

- Starten eines Natural RPC Servers in einer Windows-Umgebung

- Starten eines Natural RPC Servers in einer UNIX-Umgebung

- Besondere Aspekte bei Großrechner-Natural RPC Servern mit Replicaten

- Starten eines Natural RPC Servers über das RPC-Server-Frontend (nur bei z/OS Batch-Modus)

- Starten eines Natural RPC Servers über das RPC Server Frontend (nur CICS)

## Vorbereitungen vor dem Start eines Natural RPC Servers

Jede Art von Natural-Sitzung kann als Natural RPC Server verwendet werden, aber normalerweise ist ein Natural-Server eine Natural-Sitzung, die als asynchrone Task oder als Hintergrund-Task gestartet wird.

#### Auf Großrechnern:

Um einen Server zu starten, haben Sie folgende Möglichkeiten:

- Erstellen Sie ein RPC-Server-spezifisches Natural-Parametermodul.

  Eine Liste der relevanten Parameter finden Sie im Abschnitt Einrichten einer Natural RPC-Umgebung, RPC-Server-spezifischen Natural-Parameter setzen.

  Dieses Parametermodul wird mit Ihrem Natural verlinkt.

- Alternativ dazu können Sie die RPC-Server-spezifischen Natural-Profilparameter auch dynamisch angeben.

  The RPC server-specific Natural profile parameters may also be specified in a Natural profile created with the `SYSPARM` utility. Natural would then be started with

  Die RPC-Server-spezifischen Natural-Profilparameter können auch in einem Natural-Profil angegeben werden, das mit der `SYSPARM` Utility erstellt wurde. Natural würde dann gestartet mit `PROFILE``=serverprofile`,

  wobei `serverprofile` wobei

#### Unter Windows oder UNIX:

Um einen Server zu starten, haben Sie die folgenden Möglichkeiten:

- Erstellen Sie eine RPC-Server-spezifische Natural-Parameterdatei.

  Eine Liste der relevanten Parameter finden Sie im Abschnitt Einrichten einer Natural RPC-Umgebung, RPC-Server-spezifischen Natural-Parameter setzen. Da dringend empfohlen wird, einen Natural RPC Server mit dem Natural-Profilparameter `BATCHMODE` zu starten, sollten Sie zusätzlich die Natural-Profilparameter `CMSYNIN`, `CMOBJIN` und `CMPRINT` angeben.

  Natural wird dann gestartet mit

  `PARM``=serverparm`

  wobei `serverparm` der Name der Parameterdatei ist.

- Alternativ können Sie die RPC-Server-spezifischen Natural-Profilparameter auch dynamisch angeben.

Wie ein Natural-Server gestartet wird, hängt von der Umgebung ab und wird in den entsprechenden Abschnitten weiter unten beschrieben. Der Einfachheit halber werden hier nur die zwingend erforderlichen RPC-Server-spezifischen Profilparameter aufgeführt. Die optionalen RPC-Server-spezifischen Profilparameter können entsprechend angegeben werden.

## Starten eines Natural RPC Servers in einer Online-Großrechner-Umgebung (alle TP-Monitore)

Um einen Natural-Server in einer Online-Großrechner-Umgebung zu starten:

- Geben Sie in Ihrer TP-Monitor-Umgebung das folgende Kommando ein:

      <natural> PROFILE=serverprofile

  Oder:

      <natural> RPC=(SERVER=ON,SRVNAME=servername,SRVNODE=nodename,RPCSIZE=n,MAXBUFF=n)

Dabei ist `<natural>` der Name, mit dem Sie Ihr Natural starten (Transaktionscode, Transaktionskennung, umgebungsabhängiger Nukleusname), und `serverprofile` ist der Name des Natural-Profils.

## Starten eines Natural RPC Servers in einer Online-Großrechner-Umgebung (nur CICS)

In einer CICS-Umgebung werden Sie einen Natural RPC Server normalerweise im asynchronen Modus starten. Zusätzlich zu den oben beschriebenen Optionen für alle TP-Monitoren haben Sie für diesen Zweck die folgenden Möglichkeiten:

- Sie können das Natural-Programm `STARTSRV` in der Library `SYSRPC` verwenden, um einen Natural-Server im asynchronen Modus zu starten (siehe unten).

- Sie können einen Natural RPC Server im asynchronen Modus während des Starts von CICS starten (siehe unten).

Beim Starten des asynchronen Natural RPC Servers wird empfohlen, zusätzlich die Natural-Profilparameter `TTYPE`, `INTENS`, `SENDER` mit folgenden Einstellungen anzugeben:

    TTYPE=ASYL,INTENS=1,SENDER=CSSL

Dies bewirkt, dass jede Ausgabe in das primäre Ausgabeziel im Zeilenmodus und nicht im 3270-Modus geschrieben wird. Anstelle von `CSSL` können Sie auch jedes andere CICS-Ausgabeziel angeben.

#### Starten eines Natural RPC Servers im asynchronen Modus mit STARTSRV

STARTSRV ist ein Beispiel-Frontend für `RPCSSRV`, das die asynchrone Natural-Sitzung startet.

Standardmäßig wird das asynchrone Natural mit der gleichen Transaktionskennung in der gleichen Library wie die aktuelle Sitzung gestartet.

Wenn Natural Security (NSC) verwendet wird, wird auch die Benutzerkennung der aktuellen Natural-Sitzung weitergegeben. Sie können die Eingabe an Ihre Anforderungen anpassen.

Beachten Sie, dass einige Natural-Profilparameter von `RPCSSRV` implizit hinzugefügt werden. Dies gilt insbesondere für den Schlüsselwort-Subparameter `RPCSIZE` des Profilparameters `RPC`. `RPCSIZE` ist standardmäßig auf `MAXBUFF+4` eingestellt, wobei `MAXBUFF` der Wert ist, der im Masken-Feld `Receiving buffer` eingetragen ist. Sie können den Standardwert für `RPCSIZE` überschreiben, indem Sie `RPC=(RPCSIZE=n)` in das Masken-Feld `Session parameter` eintragen.

Wenn Sie beim Starten der Natural-Sitzung ein Natural-Programm ausführen wollen, können Sie das Masken-Feld `User Stack` verwenden. Der Inhalt von `User Stack` wird auf dem Natural `STACK` abgelegt und ausgeführt, bevor der Natural-Server aktiviert wird.

Um die beteiligten Natural-Profilparameter anzuzeigen, geben Sie `*SHOW*` in das Feld `Transaction ID` ein. `STARTSRV` zeigt Ihnen alle dynamischen Profilparameter an, die von `RPCSSRV` verwendet werden, um die asynchrone Natural-Sitzung zu starten.

#### Starten einer Natural RPC Server-Sitzung im asynchronen Modus während des Starts von CICS

Um eine Natural RPC Server-Sitzung im asynchronen Modus während des Starts von CICS zu starten, gehen Sie wie folgt vor:

Verwenden Sie das `PLTPI`, um ein Programm zu starten, das mit `EXEC CICS START` eine Natural-Sitzung mit allen erforderlichen RPC-spezifischen Natural-Profilparametern startet. Sie können das `PLTPI`-Beispielprogramm `XNCIFRNP` anpassen, das in der Natural CICS Source Library enthalten ist.

Bitte beachten Sie, dass die Natural-Sitzung unter der CICS-Standard-Benutzerkennung gestartet wird, die standardmäßig `CICSUSER` lautet. Diese Benutzerkennung wird den Natural-Systemvariablen `*INIT-USER` und `*USER` zugewiesen. Wenn Ihre Natural-Sitzung unter Natural Security läuft, müssen Sie daher eventuell ein Natural `LOGON`-Kommando auf den Natural `STACK` legen.

## Starten eines Natural RPC Servers in einer Großrechner-Online-Umgebung (nur Com-plete)

In einer Com-plete-Umgebung werden Sie einen Natural RPC Server normalerweise im asynchronen Modus starten. Zusätzlich zu den oben beschriebenen Optionen für alle TP-Monitore haben Sie zu diesem Zweck die folgenden Möglichkeiten:

- Sie können das Natural-Programm `STARTSRV` in der Library `SYSRPC` verwenden, um einen Natural-Server im asynchronen Modus zu starten (siehe unten).

- Sie können einen Natural RPC Server im asynchronen Modus während des Starts von Com-plete starten (siehe unten).

#### Starten eines Natural RPC Servers im asynchronen Modus mit STARTSRV

STARTSRV ist ein Beispiel-Frontend für `RPCSSRV`, das die asynchrone Natural-Sitzung startet.

Standardmäßig wird das asynchrone Natural mit demselben Natural-Namen in derselben Library wie die aktuelle Sitzung gestartet.

Wenn Natural Security (NSC) verwendet wird, wird auch die Benutzerkennung der aktuellen Natural-Sitzung weitergegeben. Sie können die Eingabe an Ihre Anforderungen anpassen.

Beachten Sie, dass einige Natural-Profilparameter von `RPCSSRV` implizit hinzugefügt werden. Dies gilt insbesondere für den Schlüsselwort-Subparameter `RPCSIZE` des Profilparameters `RPC`. `RPCSIZE` ist standardmäßig auf `MAXBUFF+4` eingestellt, wobei `MAXBUFF` der im Masken-Feld `Receiving buffer` eingetragene Wert ist. Sie können den Standardwert für `RPCSIZE` überschreiben, indem Sie `RPC=(RPCSIZE=n)` in das Masken-Feld `Session parameter` eintragen.

Wenn Sie beim Starten der Natural-Sitzung ein Natural-Programm ausführen wollen, können Sie das Masken-Feld `User Stack` verwenden. Der Inhalt vom `User Stack` wird auf dem Natural `STACK` abgelegt und ausgeführt, bevor der Natural-Server aktiviert wird.

Um die beteiligten Natural-Profilparameter anzuzeigen, geben Sie `*SHOW*` in das Feld `Transaction ID` ein. `STARTSRV` zeigt Ihnen alle dynamischen Profilparameter an, die von `RPCSSRV` verwendet werden, um die asynchrone Natural-Sitzung zu starten.

#### Starten einer Natural RPC Server-Sitzung im asynchronen Modus während des Starts von Com-plete

Um eine Natural RPC Server-Sitzung im asynchronen Modus während des Starts von Com-plete zu starten, gehen Sie wie folgt vor:

Verwenden Sie die Startoption (sysparms) `STARTUPPGM`, um eine Natural-Sitzung mit allen erforderlichen RPC-spezifischen Natural-Profilparametern zu starten. Sie können die benötigten RPC-spezifischen Parameter entweder einzeln angeben oder sie über ein Natural-Profil wie folgt festlegen:

    STARTUPPGM='<natural> PROFILE=<serverprofile>'

Beachten Sie, dass die Natural-Sitzung unter der Benutzerkennung gestartet wird, unter der auch Com-plete gestartet wird. Diese Benutzerkennung ist den Natural-Systemvariablen `*INIT-USER` und `*USER` zugewiesen. Wenn Ihre Natural-Sitzung unter Natural Security läuft, müssen Sie daher eventuell ein Natural `LOGON`-Kommando auf den Natural `STACK` legen.

## Starten eines Batch-Servers in einer Großrechner-Umgebung

Ein Batch-Server ist eine Standard-Natural-Batch-Sitzung, die mit den RPC-Parametern gestartet wird, die im Abschnitt Einrichten einer Natural RPC-Umgebung, RPC-Server-spezifischen Natural-Parameter setzen beschrieben sind.

Die folgenden Themen werden behandelt:

- Starten eines Batch-Servers unter z/OS

Anmerkung
Ein Beispiel für eine JCL, die die Trace-Funktion verwendet, finden Sie unter Betrieb einer Natural RPC-Umgebung , Verwendung der Server Trace Facility.

### Starten eines Batch-Servers unter z/OS

#### Beispiel-JCL für z/OS

    //NATRPC   JOB  CLASS=K,MSGCLASS=X
    //         EXEC PGM=NATOS,REGION=8M               <== Anmerkung 1
    //STEPLIB  DD   DISP=SHR,DSN=SAG.NAT.LOAD
    //         DD   DISP=SHR,DSN=SAG.EXX.LOAD
    //         DD   DISP=SHR,DSN=SAG.ADA.LOAD         <== Anmerkung 2
    //         DD   DISP=SHR,DSN=DB2_load_library     <== Anmerkung 3
    //CMPRMIN  DD   *
    IM=D,MADIO=0,MT=0,OBJIN=R,AUTO=OFF,MAXCL=0,ID=',',INTENS=1,
    RPC=(SERVER=ON,SRVNAME=servername,SRVNODE=nodename)
    RPC=(RPCSIZE=m,MAXBUFF=n),
    STACK=(LOGON serverlibrary,userID,password)
    /*
    //CEEOPTS  DD *                                   <== Anmerkung 4
    POSIX(ON)
    /*
    //SYSUDUMP DD SYSOUT=X
    //CMPRINT  DD SYSOUT=X
    /*

Anmerkungen:

1. Wenn der RPC-Server mit Subtasks läuft, werden mit der `EXEC PARM`-Anweisung Natural-Parameter nur an die Haupt-Task übergeben. Verwenden Sie stattdessen die `CMPRMIN`-Anweisung, um Parameter gleichzeitig an die Haupt-Task und die Subtasks zu übergeben.
2. Gilt nur, wenn die Adabas-Link-Routine `ADAUSER` oder der Natural-Profilparameter `ADANAME` verwendet wird.
3. Gilt nur für Db2-Benutzer.
4. Gilt nur, wenn SSL verwendet wird.

#### Beispiel-JCL für eine gestartete Task

Ein Beispiel für eine JCL für eine gestartete Task finden Sie in der Installations-Dokumentation von Natural for Mainframes; siehe Installing Natural on z/OS.

#### Ausführen eines Batch-Servers mit Replikaten

Sie können einen Batch-Server auch mit Replikaten laufen lassen, indem Sie den Schlüsselwort-Subparameter `NTASKS` des Profilparameters `RPC` oder des Parameter-Makros `NTRPC` auf einen Wert größer als `1` setzen.

Replikate werden als zusätzliche Server-Tasks an eine Natural-Haupt-Task angehängt. Sie ermöglichen es Ihnen, mehrere identische Server in derselben Region zu starten.

## Starten eines Natural RPC Servers in einer Windows-Umgebung

Um einen Natural RPC Servers unter Windows zu starten:

1. Erstellen Sie ein Shortcut-Verknüpfung zu Natural.

2. Geben Sie die Eigenschaften der Verknüpfung ein.

3. Editieren Sie im Textfeld Target den Natural-Pfad und fügen Sie an:

       "<Path>\natural.exe" batchmode parm=serverparm

   Dabei ist `serverparm` der Name der Parameterdatei.

   Oder:

       "<Path>\natural.exe" batchmode
       server=on srvname=servername srvnode=nodename maxbuff=n cmsynin=cmsynin cmobjin=cmobjin cmprint=cmprint

## Starten eines Natural RPC Servers in einer UNIX-Umgebung

Um einen Natural RPC Server unter UNIX zu starten:

- Geben Sie das folgende Kommando ein:

      natural batchmode parm=serverparm &

  Dabei ist `serverparm` der Name der Parameterdatei.

  Oder:

      natural batchmode
      server=on srvname=servername srvnode=nodename maxbuff=n cmsynin=cmsynin cmobjin=cmobjin cmprint=cmprint
       &

## Besondere Aspekte bei Großrechner-Natural RPC Servern mit Replicaten

Dieser Abschnitt gilt für Großrechner-Natural-Server unter z/OS.

- Natural RPC Batch Server mit `NTASKS >1`

- Ausführen eines Batch-Servers mit Replikaten

### Natural RPC Batch Server mit NTASKS >1

Die Haupt-Task und alle Replikate laufen in der gleichen z/OS-Region.

1. Use the reentrant batch link routine `ADALNKR` instead of `ADALNK`.

   Verwenden Sie die eintrittsinvariante (reentrant) Batch Link Routine `ADALNKR` anstelle von `ADALNK`.

   Wenn Sie `ADAUSER` verwenden wollen, dürfen Sie `ADAUSER` nicht mit Ihrem Frontend verlinken, da `ADAUSER` nicht eintrittsinvariant (reentrant) ist (siehe Punkt 5). Verwenden Sie stattdessen den Natural-Profilparameter `ADANAME` und setzen Sie `ADANAME=ADAUSER`. Dadurch wird Natural veranlasst, `ADAUSER` zur Laufzeit dynamisch zu laden.

2. Im Natural-Parametermodul:

   - Setzen Sie den Schlüsselwort-Subparameter `NTASKS=n` des Profilparameters `RPC` oder des Parametermakros `NTRPC`, wobei `n` die Anzahl der zu startenden parallelen Server (< 100), einschließlich der Haupt-Task, ist.

   - Verwenden Sie den Natural-Profilparameter `ETID`, um die Adabas-Benutzerkennung als Leerzeichen anzugeben. Dies ist notwendig, um einen NAT3048-Fehler (ETID nicht eindeutig im Adabas-Nukleus) beim Starten der Subtask zu vermeiden.

3. Bei Verwendung von dynamischen Natural-Profilparametern:

   Verwenden Sie den dynamischen Parameter-Dataset `CMPRMIN`, um die dynamischen Natural-Profilparameter an Natural zu übergeben. Verwenden Sie nicht die `PARM`-Karte oder den primären Kommando-Eingabe-Dataset `CMSYNIN`.

4. Bei Verwendung eines lokalen Bufferpools (nur z/OS):

   Jede Subtask ordnet ihren eigenen lokalen Bufferpool zu, es sei denn, Sie geben einen gemeinsam genutzten lokalen Bufferpool an. Siehe Subparameter `LBPNAME` des Profilparameters `OSP` oder des Parametermakros `NTOSP` (in der Parameter-Referenz-Dokumentation.

5. Im Natural Frontend-Link-Job (nur z/OS):

   Verlinken Sie das Frontend eintrittsinvariant (reentrant), indem Sie die Option `RENT` des Linkage-Editors verwenden.

   Wenn das Frontend nicht mittels der Option `RENT` verlinkt wäre, würde nur die Haupt-Task die Kommunikation mit dem EntireX Broker starten. Alle Subtasks würden von z/OS in einen `WAIT`-Status gesetzt, bis die Haupt-Task beendet worden wäre. Wenn Sie den RPC-Server später beenden würden, würde der Adressraum blockieren und müsste abgebrochen werden.

6. Make sure that any other modules that are additionally linked to the Natural nucleus are reentrant. Any dynamically loaded programs must also be reentrant.

   Stellen Sie sicher, dass alle anderen Module, die zusätzlich mit dem Natural-Nukleus verlinkt sind, eintrittsinvariant (reentrant) sind. Dynamisch geladene Programme müssen ebenfalls eintrittsinvariant sein.

   Hinweis für z/OS: Wenn Sie ein Modul nicht reentrant machen können, verlinken Sie das Modul als nicht wiederverwendbar, d.h. Sie sollten die Link-Option `RENT` oder `REUS` nicht angeben. Damit wird sichergestellt, dass jede Subtask ihre eigene Kopie erhält.

### Ausführen eines Batch-Servers mit Replikaten

Eine Beispiel-JCL finden Sie unter Verwendung der Server Trace Facility.

## Starten eines Natural RPC Servers über das RPC-Server-Frontend (nur bei z/OS Batch-Modus)

Im z/OS-Batch-Modus kann ein Natural RPC Server alternativ über das RPC-Server-Frontend gestartet werden. Dieser Ansatz ist bei Impersonation erforderlich und in anderen Fällen optional.

Wenn Sie das RPC-Server-Frontend ohne Impersonation verwenden, wird empfohlen, den Schlüsselwort-Subparameter `NTASKS` des Profilparameters `RPC` oder des Parametermakros `NTRPC` auf einen Wert größer als `1` zu setzen, da sonst kein nutzbringender Effekt entsteht. Die Überlegungen im Abschnitt Besondere Aspekte bei Großrechner-Natural RPC Servers mit Replikaten gelten auch, wenn Sie das RPC-Server-Frontend verwenden.

Das RPC-Server-Frontend verwendet die Natural-Server-Funktionalität; siehe Natural as a Server under z/OS (in der Natural-Operations-Dokumentation). Es zeichnet sich durch die folgenden Eigenschaften aus:

- Das Natural RPC Server-Frontend startet eine Reihe von Natural RPC Server-Sitzungen, die durch den Schlüsselwort-Subparameter `NTASKS` des Profilparameters `RPC` oder das Parameter-Makro `NTRPC` festgelegt sind.

- Alle Natural RPC Server-Sitzungen werden mit denselben Natural-Profilparametereinstellungen ausgeführt.

  Die Natural-Profilparametereinstellungen werden aus dem Natural-Parametermodul übernommen und können durch dynamisch angegebene Profilparameter, die mit der Transaktionskennung übergeben werden, überschrieben werden. Die dynamisch angegebenen Profilparameter müssen auf den Startup-Parameter folgen.

- Wenn alle Natural RPC Server-Sitzungen gerade von Clients verwendet werden (Ausführung einer Client-Anforderung oder Warten auf die nächste Anforderung innerhalb einer Konversation) und wenn der Schlüsselwort-Subparameter `NTASKS` des Profilparameters `RPC` oder des Parameter-Makros `NTRPC` auf einen Wert größer als `1` gesetzt ist, werden zusätzliche Natural RPC Server-Sitzungen gestartet. Diese Natural RPC Server-Sitzungen werden beim ersten EntireX Broker-Timeout automatisch beendet, vorausgesetzt, es gibt mindestens eine weitere Natural RPC Server-Sitzung, die nicht von einem Client verwendet wird. Wenn alle anderen Natural RPC Server-Sitzungen gerade von Clients genutzt werden, bleibt die zusätzliche RPC-Server-Sitzung bis zum nächsten EntireX Broker-Timeout bestehen. Dadurch wird sichergestellt, dass immer ein Natural RPC Server zur Verfügung steht, um eine neue Client-Anforderung zu bearbeiten.

- Die Natural RPC Server-Sitzungen werden in einer Thread-Umgebung ausgeführt, die der von Natural-Sitzungen ähnelt, die in einem TP-Monitor-System ausgeführt werden.

- Mit Impersonation:
  Am Ende eines nicht-konversationellen `CALLNAT` und am Ende einer Konversation werden alle Datenbanksitzungen und alle Arbeitsdateien geschlossen. Dadurch wird sichergestellt, dass die nächste Client-Anfrage die Datenbank und die Arbeitsdateien mit der eigenen Benutzerkennung öffnet.

- Ohne Impersonation:
  Nach dem ersten EntireX Broker Timeout werden alle Datenbanksitzungen und alle Arbeitsdateien geschlossen. Dadurch wird sichergestellt, dass keine Ressourcen während der Wartezeiten blockiert werden.

#### Startparameter:

Die erforderlichen Startparameter werden im Parameter `PARM=` der `EXEC`-Anweisung in der JCL übergeben. Diese Parameter sind:

- Der Name des Natural z/OS-Batch-Nukleus,

- die Größe eines Speicher-Threads,

- das optionale Schlüsselwort `UCTRAN`.

  `UCTRAN` gibt an, dass alle Meldungen des RPC-Server-Frontends in Großbuchstaben umgewandelt werden.

Diese Parameter müssen durch Kommas getrennt sein und ohne führende oder nachfolgende Leerzeichen eingegeben werden:

PARM='Natural-z/OS-batch-nucleus,size-of-thread[,,UCTRAN]'

Aus Kompatibilitätsgründen müssen `UCTRAN` zwei aufeinanderfolgende Kommas vorangestellt werden.

Siehe auch die Beispiel-JCL unten.

#### Hinweise zur Ausführung:

- Der Natural z/OS Batch-Nukleus wird dynamisch geladen.

  Die Load Library, die den z/OS-Batch-Nukleus enthält, muss in der Steplib-Verkettung verfügbar sein.

- Der EntireX-Broker-Stub `NATETB23` darf nicht verwendet werden.

  Auf den EntireX Broker wird außerhalb des Natural-Kontextes zugegriffen. Daher müssen Sie den EntireX-Broker-Stub `BROKER` verwenden, siehe Zugang zum EntireX Broker Stub auf dem Großrechner bereitstellen .

Nur bei Impersonation:
Wenn die Impersonation-Funktion verwendet wird, ruft der RPC-Server den Natural Autorized Services Manager (`NATASMvv`), damit dieser die Impersonation erledigt. Für den Server selbst ist keine AFP-Autorisierung erforderlich.

Nur bei Natural Security:
Wenn das Natural RPC Server-Frontend mit dem Profilparameter `AUTO``=OFF` `AUTO``=OFF` gestartet wird, müssen Sie ein Natural-Systemkommando `LOGON` mit Library-Kennung, Benutzerkennung und Passwort auf dem Natural-Stack angeben:

`STACK=(LOGON library-id;user-id;password)`

#### Beispiel-JCL:

    //NATRPC   JOB  CLASS=K,MSGCLASS=X
    //         EXEC PGM=RPC-FRONT,REGION=8M
    //         PARM='Natural-z/OS-interface-module,1000'
    //STEPLIB  DD   DISP=SHR,DSN=SAG.NAT.LOAD
    //         DD   DISP=SHR,DSN=SAG.EXX.LOAD
    //         DD   DISP=SHR,DSN=SAG.ADA.LOAD         <== Note 1
    //         DD   DISP=SHR,DSN=DB2_load_library     <== Note 2
    //CMPRMIN  DD   *
    IM=D,MADIO=0,MT=0,OBJIN=R,AUTO=OFF,MAXCL=0,ID=',',INTENS=1,
    PRINT=((10),AM=STD)
    RPC=(SERVER=ON,SRVNAME=servername,SRVNODE=nodename,NTASKS=3)
    RPC=(RPCSIZE=m,MAXBUFF=n,TRACE=2),
    RCA=BROKER,RCALIAS=(BROKER,BROKER)
    STACK=(LOGON serverlibrary,userID,password)
    /*
    //CEEOPTS  DD *                                   <== Note 3
    POSIX(ON)
    *
    //SYSUDUMP DD SYSOUT=X
    //CMPRT10  DD SYSOUT=X
    //CMPRT101 DD SYSOUT=X
    //CMPRT102 DD SYSOUT=X
    //CMPRT199 DD SYSOUT=X
    //CMPRINT  DD SYSOUT=X
    //CMPRINT1 DD SYSOUT=X
    //CMPRINT2 DD SYSOUT=X
    //CMPRIN99 DD SYSOUT=X
    /*

#### Anmerkungen:

1. Gilt nur, wenn die Adabas-Link-Routine `ADAUSER` oder der Natural-Profilparameter `ADANAME` verwendet wird.

2. Gilt nur für Db2-Benutzer.

3. Gilt nur, wenn SSL verwendet wird.

## Starten eines Natural RPC Servers über das RPC Server Frontend (nur CICS)

In CICS kann ein Natural RPC Server alternativ auch über das RPC-Server-Frontend gestartet werden. Diese Vorgehensweise ist erforderlich, wenn Impersonation verwendet wird, und ist in anderen Fällen optional.

Wenn Sie das RPC-Server-Frontend ohne Impersonation verwenden, wird empfohlen, den Schlüsselwort-Subparameter `NTASKS` des Profilparameters `RPC` oder des Parameter-Makros `NTRPC` auf einen Wert größer als `1` zu setzen. Andernfalls ergibt sich kein nutzbringender Effekt.

Das RPC-Server-Frontend verwendet die Natural Server-Funktionalität. Es zeichnet sich durch die folgenden Merkmale aus:

- Das Natural RPC Server-Frontend wird über die Transaktionskennung gestartet, die im Schritt Customize CICS für das Natural RPC Server-Frontend definiert wurde. Siehe Installing the Natural CICS Interface on z/OS.

  Die Transaktionskennung können Sie entweder an einem Terminal eingeben oder Sie können das Natural-Programm `STARTSFE` in der Library `SYSRPC` verwenden, um das Natural RPC Server-Frontend im asynchronen Modus zu starten.

  Das Natural RPC Server-Frontend benötigt den Namen des Natural CICS-Interface-Nukleus als Startparameter. Dieser Startparameter wird mit der Transaktionskennung übergeben.

- Das Natural RPC Server-Frontend startet eine Anzahl von Natural RPC Server-Sitzungen, die durch den Schlüsselwort-Subparameter `NTASKS` des Profilparameters `RPC` oder des Parameter-Makros `NTRPC` festgelegt wird.

- Alle Natural RPC Server-Sitzungen werden mit denselben Natural-Profilparametereinstellungen ausgeführt.

  Die Natural-Profilparametereinstellungen werden aus dem Natural-Parametermodul übernommen und können durch dynamisch angegebene Profilparameter, die mit der Transaktionskennung übergeben werden, überschrieben werden. Die dynamisch angegebenen Profilparameter müssen auf den Startparameter folgen.

- Wenn alle Natural RPC Server-Sitzungen gerade von Clients verwendet werden (Ausführung einer Client-Anforderung oder Warten auf die nächste Anforderung innerhalb einer Konversation) und wenn der Schlüsselwort-Subparameter `NTASKS` des Profilparameters `RPC` oder des Parameter-Makros `NTRPC` auf einen Wert größer als `1` gesetzt ist, werden zusätzliche Natural RPC Server-Sitzungen gestartet. Diese Natural RPC Server-Sitzungen werden beim ersten EntireX Broker-Timeout automatisch beendet, vorausgesetzt, es gibt mindestens eine weitere Natural RPC Server-Sitzung, die nicht von einem Client verwendet wird. Wenn alle anderen Natural RPC Server-Sitzungen von Clients genutzt werden, bleibt die zusätzliche RPC-Server-Sitzung bis zum nächsten EntireX Broker Timeout bestehen. Damit wird sichergestellt, dass immer ein Natural RPC Server zur Verfügung steht, um eine neue Client-Anforderung zu bearbeiten.

- Die Natural RPC Server-Sitzungen werden in einer Thread-Umgebung ausgeführt, die der von Natural-Sitzungen ähnelt, die in einem TP-Monitor-System ausgeführt werden.

- Alle inaktiven Natural RPC Server-Sitzungen (Sitzungen, die auf eine Client-Anfrage warten) werden mit Hilfe der Natural Roll Facilities under CICS ausgelagert, die für den verwendeten Natural CICS-Schnittstellenkern definiert sind.

- Mit Impersonation:
  Zu Beginn eines nicht-konversationellen `CALLNAT` und zu Beginn einer Konversation wird mit der Option `USERID()` des Kommandos `EXEC CICS START TRANSID()` eine neue CICS-Worker-Task unter der Benutzerkennung des Clients gestartet. Die Client-Anforderung wird von Natural in dieser Worker-Task ausgeführt. Während die Client-Anforderung ausgeführt wird, wartet die Natural RPC Server-Sitzung auf die Beendigung der Worker-Task.

  Am Ende eines nicht-konversationellen `CALLNAT` und am Ende einer Konversation wird die Worker-Task beendet, alle Datenbanken werden geschlossen und alle CICS-Ressourcen werden freigegeben. Dadurch wird sichergestellt, dass die nächste Client-Anfrage die Datenbank öffnet und auf die CICS-Ressourcen mit ihrer eigenen Benutzerkennung zugreift.

- Ohne Impersonation
  Die Client-Anforderung wird von der Natural RPC Server-Sitzung selbst ausgeführt.

  Nach dem ersten EntireX Broker Timeout werden alle Datenbanken geschlossen und alle CICS-Ressourcen freigegeben. Dadurch wird sichergestellt, dass keine Ressourcen während der Wartezeiten blockiert werden.

#### Startparameter:

Die erforderlichen Startparameter werden mit der Transaktionskennung übergeben. Diese Parameter sind:

- Der Name des Natural CICS Interface-Nukleus <ncistart>.

- Das optionale Schlüsselwort `UCTRAN`.

  `UCTRAN` gibt an, dass alle Meldungen des RPC-Server-Frontends in Großbuchstaben umgewandelt werden.

- Eine optionale Natural-Profilparameter-Zeichenkette.

#### Beispiel für den Start an einem Terminal:

    <natural> <ncistart>[,UCTRAN]
    RPC=(SERVER=ON,SRVNAME=servername,SRVNODE=nodename,RPCSIZE=n, MAXBUFF=n)
    RCA=BROKER,RCALIAS=(BROKER,CICSETB)

Dabei ist `<natural>` die Transaktionskennung, mit der Sie Ihr Natural RPC Server-Frontend starten, und `<ncistart>` der Name Ihres Natural CICS-Interface-Nukleus.

#### Hinweise zur Ausführung:

- Wenn der Natural Roll Server erforderlich ist (`NCMDIR`-Parameter `ROLLSRV` ist auf `YES` gesetzt), müssen Sie einen Natural Roll Server für die verwendete Subsystemkennung (wie durch den Natural-Profilparameter `SUBSID` definiert) starten, bevor das Natural RPC Server-Frontend gestartet wird.

- Die Transaktionskennung des RPC-Server-Frontends wird verwendet, um die RPC-Server-Umgebung zu identifizieren.

  Starten Sie nicht mehr als ein Natural RPC Server-Frontend mit derselben Transaktionskennung.

- Das ausführbare NCI-Modul wird dynamisch geladen.

  Die Load Library, die das ausführbare NCI-Modul enthält, muss in der `DFHRPL`-Verkettung verfügbar sein.

- Der EntireX-Broker-Stub `NATETB23` darf nicht verwendet werden.

  Auf den EntireX-Broker wird außerhalb des Natural-Kontextes zugegriffen. Daher müssen Sie den EntireX-Broker-Stub `CICSETB` verwenden, siehe Zugang zum EntireX Broker Stub auf dem Großrechner bereitstellen .

Nur bei Impersonation:
Wenn die Impersonation-Funktion verwendet wird, startet das RPC-Server-Frontend Worker-Tasks. Stellen Sie sicher, dass die Einstellung des CICS-System-Initialisierungsparameters `MXT` in Ihrer CICS-Installation hoch genug ist.

Nur bei Natural Security:
Wenn das Natural RPC Server-Frontend mit dem Profilparameter `AUTO` gestartet wird, müssen Sie auf den Natural-Stack ein Natural-Systemkommando `LOGON` mit Library-Kennung, Benutzerkennung und Passwort legen:

`STACK=(LOGON library-id;user-id;password)`.

### On this page

- Vorbereitungen vor dem Start eines Natural RPC Servers
- Starten eines Natural RPC Servers in einer Online-Großrechner-Umgebung (alle TP-Monitore)
- Starten eines Natural RPC Servers in einer Online-Großrechner-Umgebung (nur CICS)
- Starten eines Natural RPC Servers in einer Großrechner-Online-Umgebung (nur Com-plete)
- Starten eines Batch-Servers in einer Großrechner-Umgebung
- Starten eines Natural RPC Servers in einer Windows-Umgebung
- Starten eines Natural RPC Servers in einer UNIX-Umgebung
- Besondere Aspekte bei Großrechner-Natural RPC Servern mit Replicaten
- Starten eines Natural RPC Servers über das RPC-Server-Frontend (nur bei z/OS Batch-Modus)
- Starten eines Natural RPC Servers über das RPC Server Frontend (nur CICS)