このドキュメントでは、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 のドキュメントを参照してください。