バージョン 4.2.5
 —  オペレーション  —

RPC サーバーフロントエンド

このドキュメントでは、BS2000/OSD で出力ファイル/ワークファイルサーバー NATPWSV2 を使用する RPC バッチサーバー環境に RPC サーバーフロントエンドをセットアップする方法について説明します。

以下のトピックについて説明します。


セットアップ

Natural RPC バッチサーバーの生成では、Natural バッチドライバ(NAMBS2 マクロ)のフロントエンド部分を新しいキーワードパラメータ SERVER=YES でアセンブルする必要があります。

例:

SERVFRNT NAMBS2  CODE=FRONT,                                      -
                 APPLNAM=NATSERV,                                 -
                 NUCNAME=RPCSERV,                                 -
                 DYNPAR=SYSDTA,       For server parameters       -
                 SERVER=YES,          Generate RPC server         -
                 ROLLTSZ=384,         Roll thread size in KB      -
                 .                    All other parameter definitions as for 
                 .                    the generation of the front-end part 
                 .                    of the Natural batch driver
         END

Natural RPC バッチサーバーのリエントラント部分の生成では、Natural バッチドライバの生成と同じキーワードパラメータ定義を使用できます。

BS2STUB モジュール(RPC バッチサーバーのフロントエンド部分)の生成では、必要な共通メモリプールを定義する必要があります。

出力ファイル/ワークファイルサーバー NATPWSV2 を使用する場合は、出力ファイル/ワークファイル制御プールを定義し、Natural のリエントラント部分の NATWKFB2 モジュールを NATFSTB2 モジュールに置き換えます。

RPCSTUB2 BS2STUB PARMOD031,PROGMOD=ANY,UNRES=*DBLOPT
         ADDON NAME=RPCSERV,              Name of reentrant part (load pool)        -
               .
               . 
               .
         ADDON definition for Natural Buffer Pool       
               .
         ADDON definition for Natural Editor Pool
               .
         ADDON  definition for Natural Swap Pool
               .
         ADDON  NAME = PWK#POOL,         Name of print file/work file control pool   -
                TYPE=PWK,                Pool type                                   -
                SIZE=1MB,                Pool size in MB                             -
                STAT=LOCAL,              Pool status is local                        -
                SCOP=GLOBAL,             Scope is global                             -
                POSI=ABOVE,              Pool position is above                      -
                PFIX=YES,                Pool address is fixed                       -
                ACCS=WRITE               No pool protection
         ADDEND

Natural RPC バッチサーバーでは、異なるクライアントコンテキストをユーザースレッドに保存します。 これらのユーザースレッドは、スワッププールまたは Natural ロールファイルで管理されます。 このため、Natural ロールファイルと Natural スワッププールは必須です。

出力ファイルとワークファイルの処理では、新しいタイプ "PWK" を使用して出力ファイル/ワークファイルサーバーを生成する必要があります(「出力ファイル/ワークファイルサーバー NATPWSV2」を参照)。

RPC バッチサーバーと出力ファイル/ワークファイルサーバーの間のデータ交換は、新しいタイプ "PWK" を使用して共通メモリプール(出力ファイル/ワークファイル制御プール)で行われます。

RPC バッチサーバー(NATFSTB2 モジュール)と出力ファイル/ワークファイルサーバー(NATPWSV2 モジュール)の間の通信は、P1 前方イベントという方法で行われます。 出力ファイル/ワークファイルサーバーを使用する場合は、リエントラント部分のリンクジョブで NATWKFB2 モジュールを NATFSTB2 に置き換える必要があります。

Natural RPC バッチサーバーのフロントエンド部分のリンク例:

/EXEC $TSOSLNK
PROG SERVER,FILENAM=BATCH.SERVER,LOADPT=X'1000000',XREF=YES
TRAITS RMODE=ANY,AMODE=31
INCLUDE NATSFED2,NATvrs.MOD       Must be bound as first module
INCLUDE RPCSFE,NATvrs.MOD         RPC front-end stub
INCLUDE SERVFRNT,USERLIB          Front-end part of Natural batch driver
INCLUDE SERVRENT,USERLIB          Reentrant part of Natural batch driver
INCLUDE RPCSTUB2,USERLIB          BS2STUB (see above)
INCLUDE SWPRMSRV,USERLIB          Swap pool parameter module
INCLUDE NATPRMSV,USERLIB          Natural parameter module
INCLUDE ADAUSER,ADAvrs.MOD
INCLUDE SSFB2C,ADAvrs.MOD
BIND

上記の意味は以下のとおりです。

vrs Natural for Mainframes または Adabas for Mainframes の現在のバージョンです。
USERLIB ユーザー固有のライブラリです。

スワッププールパラメータモジュールの生成方法については、「Natural スワッププールの定義」の「マクロ NTSWPRM のキーワードパラメータ」を参照してください。

Natural RPC バッチサーバーのリエントラント部分のリンク例:

/EXEC $TSOSLNK
MOD RPCSERV,XREF=Y,MAP=Y,XDSEC=Y,SORT=YES
TRAITS RMODE=ANY,AMODE=ANY
LINK-SYMBOLS *NOESD
INCLUDE NATINV,NATvrs.MOD      Must be bound as first module
INCLUDE NATURAL,NATvrs.MOD     Natural nucleus
COMMENT NATWKFB2,NATvrs.MOD    Is replaced by
INCLUDE NATFSTB2,NATvrs.MOD    print file/work file server stub
.                All other
.                moduls
INCLUDE NATLAST,,NATvrs.MOD 
BIND

上記の例で、vrs は Natural for Mainframes の現在のバージョンです。

Natural バッチサーバーのパラメータの例:

AUTO=ON,
STACK=(LOGON DFSERVER),
RPC=(
SERVER=ON,
SRVNODE='10.20.91.202:3860:TCP',SRVNAME=DFSRV1,
RPCSIZE=128,MAXBUFF=30,
TRACE=2
),
RCA=BROKER,RCALIAS=(BROKER,BKIMBTIA),
MADIO=0,MAXCL=0,MT=0,MENU=OFF,
PRINT=((10),AM=STD),WORK=((1-10),AM=STD)

Natural RPC サーバークライアントのパラメータの例:

STACK=(LOGON DFCLIENT),
RPC=(
DFS=(DFSRV1,BKR043,,,NOSERVDIR),
RPCSIZE=128,MAXBUFF=30,
AUTORPC=ON,TRYALT=OFF
),
RCA=BROKER,RCALIAS=(BROKER,BKIMBTIA),
MADIO=0,MAXCL=0,MT=0,ETID=' '

Natural RPC バッチサーバーには、サーバーメッセージの出力用に P10 という名前のファイルが必要です。 出力ファイル/ワークファイルサーバーを使用する場合は、Natural RPC バッチサーバーのジョブ制御で定義されていない限り、このファイルが出力ファイル/ワークファイルサーバーのジョブ制御で FILE 命令を使用して定義されている必要があります。

開始ジョブの例:

/.SERVER LOGON
/SYSFILE SYSOUT=SERVER.OUT
/SYSFILE SYSLST=SERVER.LIST
/FILE NATvrs.EDIT.WORKFILE,LINK=CMEDIT
/FILE NATvrs.SERVER.ROLLFILE,LINK=PAMNAT,SHARUPD=YES
/FILE SERVER.MSG,LINK=P10        Is required for the server messages 
/FILE ADAvrs.MOD,LINK=DDLIB
/FILE ADAPARM,LINK=DDLNKPAR
/FILE EXXvrs.LIB,LINK=BLSLIB01   Broker
/FILE EXXvrs.LIB,LINK=ETBLIB     Load library 
/SYSFILE SYSDTA=SERVERPARMS
/EXEC BATCH.SERVER
/LOGOFF N

上記の例で、vrs は、Natural for Mainframes、Adabas for Mainframes、または EntireX Communicator の現在のバージョンです。

EntireX Broker の生成および起動方法については、EntireX Communicator のドキュメントを参照してください。

Top of page