Table of Contents Previous Next


Table of Contents

About Domains
What Is the Oracle Tuxedo Domains Component?
Figure 1‑1 Interdomain Communications Using the Oracle Tuxedo Domains Component
Figure 1‑1 Interdomain Communications Using the Oracle Tuxedo Domains Component
Interoperability Among Domains
Types of Domain Gateways
Example of a Domains Configuration
Figure 1‑2 A Banking Domains Configuration—Example
Functionality Supported by Domain Gateways
Request/Response Communication Between Local and Remote Domains
Figure 1‑3 Using tpforward to Send a Request to a Remote Service
Conversational Communication Between Local and Remote Domains
Queuing Messages on Remote Domains
Encoding and Decoding Operations for Domains
Oracle Tuxedo Domains Architecture
Domains Configuration File
Domain Gateway Servers
Figure 1‑4 Two-Way Communication Through a Gateway
Domains Administrative Servers
Figure 1‑5 Domains Administrative Servers
Figure 1‑5 Domains Administrative Servers
GWADM Server
DMADM Server
Domains Administrative Tools
Figure 1‑6 Relationships Between Domains Administrative Tools and Files
Figure 1‑6 Relationships Between Domains Administrative Tools and Files
dmloadcf Command
dmunloadcf Command
dmadmin Command
Understanding the Domains Configuration File
Location of DMCONFIG File
Binary Version of DMCONFIG File
Descriptions of Sections of the DMCONFIG File
Figure 1‑7 Establishing What Services Are Shared Between Two Oracle Tuxedo Domains—Example
Terminology Improvements for DMCONFIG File
Specifying Domains Data-Dependent Routing
Specifying Domains Transaction and Blocking Timeouts
How the Domains Component Handles Transaction Timeouts
How the Domains Component Handles Blocking Timeouts
Specifying Domains Connection Policies
How To Configure Your Connection Policy
Per Local/Remote Domain Connection Policy
Per TDomain Session Connection Policy
Creating A TDomain Session
Creating A Per TDomain Session Connection Policy
Listing 1‑1 Per TDOMAIN Session Connection Policy Example
Using Regular Expressions with TDomain Sessions
Listing 1‑2 DMCONFIG File with Regular Expressions
Listing 1‑3 Compiled BDMCONFIG File for DMCONFIG File with Regular Expressions
Using DM_MIB to Specify or Request TDomain Session Information
Using DMADMIN to Specify or Request TDomain Session Information
TDomain Session Interoperability with Older Tuxedo Releases
How To Use Connection Retry Processing
How Connection Policy Determines Availability of Remote Services
See Also
Specifying Domains Failover and Failback
How to Configure Domains-Level Failover and Failback
How to Configure Domains Link-Level Failover
How to Configure TDomain Session Link-Level Failover
Specifying Domains Keepalive
What is TCP-Level Keepalive?
How to Configure TCP-Level Keepalive for Domains
What is Application-Level Keepalive?
How to Configure Application-Level Keepalive for Domains
Keepalive Compatibility with Earlier Oracle Tuxedo Releases
Configuring a Domains Environment
Configuring a Domains Environment for Migration
Listing 1‑4 Sample UBBCONFIG File Configured for Domains Migration
Listing 1‑4 Sample UBBCONFIG File Configured for Domains Migration
Listing 1‑5 Sample DMCONFIG File Configured for Domains Migration
How to Migrate the DMADM Server
How to Migrate a TDomain Gateway Group
Methods for Activating Individual Server Processes
Direct Cross-Domain Communication Leveraging RDMA on Exalogic
Overview of Direct Cross-Domain Communication Leveraging RDMA
Interoperability or Compatibility Requirements
Supported Platforms
Changed Behaviors on Direct Cross-Domain Communication Leveraging RDMA
Planning and Configuring ATMI Domains
Planning to Build Domains from Multiple Oracle Tuxedo Applications
Figure 2‑1 Two Oracle Tuxedo Applications
Figure 2‑1 Two Oracle Tuxedo Applications
Figure 2‑1 Two Oracle Tuxedo Applications
...*RESOURCESIPCKEY           80952UID              <user id from id(1)>GID              <group id from id(1)>PERM             0660MAXACCESSERS     40MAXSERVERS       35MAXSERVICES      75MAXCONV          10MAXGTT           20MASTER           SITE1,SITE2SCANUNIT         10SANITYSCAN       12BBLQUERY         30BLOCKTIME        30DBBLWAIT         6OPTIONS          LAN,MIGRATEMODEL            MPLDBAL            Y##SECURITY       ACL##AUTHSVC        "..AUTHSVC"#*MACHINES<SITE1's uname>  LMID=SITE1                 TUXDIR="<TUXDIR1>"                 APPDIR="<APPDIR1>"                 ENVFILE="<APPDIR1>/ENVFILE"                 TLOGDEVICE="<APPDIR1>/TLOG"                 TLOGNAME=TLOG                 TUXCONFIG="<APPDIR1>/tuxconfig"                 TYPE="<machine type1>"                 ULOGPFX="<APPDIR1>/ULOG"<SITE2's uname>  LMID=SITE2                 TUXDIR="<TUXDIR2>"                 APPDIR="<APPDIR2>"                 ENVFILE="<APPDIR2>/ENVFILE"                 TLOGDEVICE="<APPDIR2>/TLOG"                 TLOGNAME=TLOG                 TUXCONFIG="<APPDIR2>/tuxconfig"                 TYPE="<machine type2>"                 ULOGPFX="<APPDIR2>/ULOG"#*GROUPS## Group for Authentication Servers###AUTHGRP        LMID=SITE1   GRPNO=101
## Group for Application Queue (/Q) Servers###QGRP1          LMID=SITE1   GRPNO=102##               TMSNAME=TMS_QM  TMSCOUNT=2##               OPENINFO="TUXEDO/QM:<APPDIR1>/qdevice:QSP_BANKAPP"
## Group for Application Manager's Servers###MGRGRP1        LMID=SITE1   GRPNO=103
## Group for EventBroker Servers###EVBGRP1        LMID=SITE1   GRPNO=104
DEFAULT:         TMSNAME=TMS_SQL   TMSCOUNT=2BANKB1           LMID=SITE1   GRPNO=1                 OPENINFO="TUXEDO/SQL:<APPDIR1>/bankdl1:bankdb:readwrite"BANKB2           LMID=SITE2   GRPNO=2                 OPENINFO="TUXEDO/SQL:<APPDIR2>/bankdl2:bankdb:readwrite"
*NETWORKSITE1            NADDR="<network address of SITE1>"                 BRIDGE="<device of provider1>"                 NLSADDR="<network listener address of SITE1>"SITE2            NADDR="<network address of SITE2>"                 BRIDGE="<device of provider2>"                 NLSADDR="<network listener address of SITE2>"*SERVERS## TUXEDO System /T server providing application specific authentication.# Ref. AUTHSVR(5).###AUTHSVR        SRVGRP=AUTHGRP  SRVID=1  RESTART=Y  GRACE=0  MAXGEN=2##               CLOPT="-A"
## TUXEDO System /T Message Queue Manager. It is a server that enqueues and# dequeues messages on behalf of programs calling tpenqueue(3) and# tpdequeue(3) respectively. Ref. TMQUEUE(5).###TMQUEUE        SRVGRP=QGRP1    SRVID=1  CONV=N  GRACE=0##               CLOPT="-s QSP_BANKAPP:TMQUEUE"
## TUXEDO System /T Message Forwarding Server that forwards messages that have# been stored using tpenqueue(3) for later processing. Ref. TMQFORWARD(5).###TMQFORWARD     SRVGRP=QGRP1    SRVID=2  CONV=N  REPLYQ=N  GRACE=0##               CLOPT="-- -e -n -d -q Q_OPENACCT_LOG"
## TUXEDO System /T User Event Broker that manages user events by notifying# subscribers when those events are posted. Ref. TMUSREVT(5).###TMUSREVT       SRVGRP=EVBGRP1  SRVID=1  GRACE=3600##               ENVFILE="<APPDIR1>/TMUSREVT.ENV"##               CLOPT="-e tmusrevt.out -o tmusrevt.out -A --##                    -f <APPDIR1>/tmusrevt.dat"##               SEQUENCE=11
## TUXEDO Application Server that subscribes to certain events.###ACCTMGR SRVGRP=MGRGRP1         SRVID=1##               CLOPT="-A -o ACCTMGR.LOG -- -w 1000.00"##               SEQUENCE=12
DEFAULT: RESTART=Y    MAXGEN=5   REPLYQ=Y  CLOPT="-A"
TLR              SRVGRP=BANKB1   SRVID=1  RQADDR=tlr1                 CLOPT="-A -- -T 100 -e 1000.00"TLR              SRVGRP=BANKB1   SRVID=2  RQADDR=tlr1                 CLOPT="-A -- -T 200 -e 1000.00"TLR              SRVGRP=BANKB2   SRVID=3  RQADDR=tlr2                 CLOPT="-A -- -T 600 -e 1000.00"TLR              SRVGRP=BANKB2   SRVID=4  RQADDR=tlr2                 CLOPT="-A -- -T 700 -e 1000.00"XFER             SRVGRP=BANKB1   SRVID=5XFER             SRVGRP=BANKB2   SRVID=6ACCT             SRVGRP=BANKB1   SRVID=7ACCT             SRVGRP=BANKB2   SRVID=8BAL              SRVGRP=BANKB1   SRVID=9 BAL              SRVGRP=BANKB2   SRVID=10BTADD            SRVGRP=BANKB1   SRVID=11BTADD            SRVGRP=BANKB2   SRVID=12AUDITC           SRVGRP=BANKB1   SRVID=13  CONV=Y  MIN=1 MAX=10 RQADDR="auditc"BALC             SRVGRP=BANKB1   SRVID=24BALC             SRVGRP=BANKB2   SRVID=25#*SERVICESDEFAULT:         LOAD=50  AUTOTRAN=Y  TRANTIME=30WITHDRAWAL       PRIO=50  ROUTING=ACCOUNT_IDDEPOSIT          PRIO=50  ROUTING=ACCOUNT_IDTRANSFER         PRIO=50  ROUTING=ACCOUNT_IDINQUIRY          PRIO=50  ROUTING=ACCOUNT_IDCLOSE_ACCT       PRIO=40  ROUTING=ACCOUNT_IDOPEN_ACCT        PRIO=40  ROUTING=BRANCH_IDBR_ADD           PRIO=20  ROUTING=BRANCH_IDTLR_ADD          PRIO=20  ROUTING=BRANCH_IDABAL             PRIO=30  ROUTING=b_idTBAL             PRIO=30  ROUTING=b_idABAL_BID         PRIO=30  ROUTING=b_idTBAL_BID         PRIO=30  ROUTING=b_idABALC_BID        PRIO=30  ROUTING=b_idTBALC_BID        PRIO=30  ROUTING=b_id#*ROUTINGACCOUNT_ID       FIELD=ACCOUNT_ID                 BUFTYPE="FML"                 RANGES="10000-59999:BANKB1,                         60000-109999:BANKB2"BRANCH_ID        FIELD=BRANCH_ID                 BUFTYPE="FML"                 RANGES="1-5:BANKB1,                         6-10:BANKB2"b_id             FIELD=b_id                 BUFTYPE="VIEW:aud"                 RANGES="1-5:BANKB1,                         6-10:BANKB2"
Option 1: Reconfigure the Applications as a Single Oracle Tuxedo Domain
Figure 2‑2 Combining Two Oracle Tuxedo System Applications
Figure 2‑2 Combining Two Oracle Tuxedo System Applications
Creating the UBBCONFIG File for the Combined Application
*RESOURCESIPCKEY 76666UID 0000GID 000PERM 0660MAXACCESSERS 40MAXSERVERS 35MAXSERVICES 75MAXCONV 10MAXGTT 100MASTER SITE1,SITE2SCANUNIT 10SANITYSCAN 5BBLQUERY 50BLOCKTIME 2DBBLWAIT 6OPTIONS LAN,MIGRATEMODEL MPLDBAL Y#*MACHINES## Machines for the bankapp partmach1            LMID=SITE1 TUXDIR=“/home/rsmith/tuxroot” APPDIR=“/home/rsmith/bankapp” ENVFILE=“/home/rsmith/bankapp/ENVFILE” TLOGDEVICE=“/home/rsmith/bankapp/TLOG” TLOGNAME=TLOG TUXCONFIG=“/home/rsmith/bankapp/tuxconfig”                 TYPE=“type1”                 ULOGPFX=“/home/rsmith/bankapp/ULOG”mach2            LMID=SITE2 TUXDIR=“/home/rsmith/tuxroot” APPDIR=“/home/rsmith/bankapp” ENVFILE=“/home/rsmith/bankapp/ENVFILE” TLOGDEVICE=“/home/rsmith/bankapp/TLOG” TLOGNAME=TLOG TUXCONFIG=“/home/rsmith/bankapp/tuxconfig” TYPE=“type2” ULOGPFX=“/home/rsmith/bankapp/ULOG”mach3            LMID=SITE3 TUXDIR=“/home/rsmith/tuxroot” APPDIR=“/home/rsmith/bankapp” ENVFILE=“/home/rsmith/bankapp/ENVFILE” TLOGDEVICE=“/home/rsmith/bankapp/TLOG” TLOGNAME=TLOG TUXCONFIG=“/home/rsmith/bankapp/tuxconfig” TYPE=“type2” ULOGPFX=“/home/rsmith/bankapp/ULOG”## Machine for the credit card authorization partsfexpz           LMID=SITE4 TUXDIR=“/home/rsmith/tuxroot” APPDIR=“/home/rsmith/bankapp” ENVFILE=“/home/rsmith/bankapp/ENVFILE” TLOGDEVICE=“/home/rsmith/bankapp/TLOG” TLOGNAME=TLOG TUXCONFIG=“/home/rsmith/bankapp/tuxconfig”                 TYPE=“type1”                 ULOGPFX=“/home/rsmith/bankapp/ULOG”#*GROUPSDEFAULT: TMSNAME=TMS_SQL TMSCOUNT=2## Groups for the bankapp partBANKB1 LMID=SITE1 GRPNO=1          OPENINFO=“TUXEDO/SQL:/home/rsmith/bankapp/bankdl1:bankdb:readwrite”BANKB2    LMID=SITE2 GRPNO=2          OPENINFO=“TUXEDO/SQL:/home/rsmith/bankapp/bankdl2:bankdb:readwrite”BANKB3    LMID=SITE3 GRPNO=3          OPENINFO=“TUXEDO/SQL:/home/rsmith/bankapp/bankdl3:bankdb:readwrite”## Group for the credit card authorization partCREDIT    LMID=SITE4 GRPNO=4          OPENINFO=“TUXEDO/SQL:/home/rsmith/bankapp/crdtdl1:bankdb:readwrite”#*NETWORK## Network connections for the bankapp partSITE1  NADDR=“<network address of SITE1>”  BRIDGE=“<device of provider1>”  NLSADDR=“<network listener address of SITE1>”SITE2  NADDR=“<network address of SITE2>”  BRIDGE=“<device of provider2>”  NLSADDR=“<network listener address of SITE2>”SITE3  NADDR=“<network address of SITE3>”  BRIDGE=“<device of provider3>”  NLSADDR=“<network listener address of SITE3>”## Network connections for the credit card authorization partSITE4  NADDR=“<network address of SITE4>”  BRIDGE=“<device of provider4>”  NLSADDR=“<network listener address of SITE4>”#*SERVERSDEFAULT:  RESTART=Y       MAXGEN=5      REPLYQ=Y   CLOPT=“-A”## Servers for the bankapp partTLR   SRVGRP=BANKB1 SRVID=1       RQADDR=tlr1          CLOPT=“-A -- -T 100 -e 1000.00”TLR   SRVGRP=BANKB1   SRVID=2       RQADDR=tlr1          CLOPT=“-A -- -T 200 -e 1000.00”TLR   SRVGRP=BANKB2   SRVID=3       RQADDR=tlr2          CLOPT=“-A -- -T 600 -e 1000.00”TLR   SRVGRP=BANKB2   SRVID=4       RQADDR=tlr2          CLOPT=“-A -- -T 700 -e 1000.00”TLR   SRVGRP=BANKB3   SRVID=5       RQADDR=tlr3          CLOPT=“-A -- -T 800 -e 1000.00”TLR   SRVGRP=BANKB3 SRVID=6       RQADDR=tlr3          CLOPT=“-A -- -T 900” -e 1000.00XFER   SRVGRP=BANKB1 SRVID=7XFER   SRVGRP=BANKB2 SRVID=8XFER   SRVGRP=BANKB3 SRVID=9ACCT   SRVGRP=BANKB1 SRVID=10ACCT   SRVGRP=BANKB2 SRVID=11ACCT   SRVGRP=BANKB3 SRVID=12BAL       SRVGRP=BANKB1 SRVID=13BAL       SRVGRP=BANKB2 SRVID=14BAL       SRVGRP=BANKB3 SRVID=15BTADD     SRVGRP=BANKB1 SRVID=16BTADD     SRVGRP=BANKB2 SRVID=17BTADD     SRVGRP=BANKB3 SRVID=18AUDITC    SRVGRP=BANKB1 SRVID=19      CONV=Y  MIN=1  MAX=10  RQADDR=”auditc”BALC      SRVGRP=BANKB1 SRVID=20BALC      SRVGRP=BANKB2 SRVID=21BALC      SRVGRP=BANKB3 SRVID=22## Servers for the credit card authorization partTLRA   SRVGRP=CREDIT   SRVID=26          CLOPT=“-A -- -T 300”ACCTA   SRVGRP=CREDIT   SRVID=27CRDT   SRVGRP=CREDIT   SRVID=35#*SERVICESDEFAULT:  LOAD=50  AUTOTRAN=Y  TRANTIME=30## Services for the bankapp partWITHDRAWAL       PRIO=50  ROUTING=ACCOUNT_IDDEPOSIT          PRIO=50  ROUTING=ACCOUNT_IDTRANSFER         PRIO=50  ROUTING=ACCOUNT_IDINQUIRY          PRIO=50  ROUTING=ACCOUNT_IDCLOSE_ACCT       PRIO=40  ROUTING=ACCOUNT_IDOPEN_ACCT        PRIO=40  ROUTING=BRANCH_IDBR_ADD           PRIO=20  ROUTING=BRANCH_IDTLR_ADD          PRIO=20  ROUTING=BRANCH_IDABAL             PRIO=30  ROUTING=b_idTBAL             PRIO=30  ROUTING=b_idABAL_BID         PRIO=30  ROUTING=b_idTBAL_BID         PRIO=30  ROUTING=b_idABALC_BID        PRIO=30  ROUTING=b_idTBALC_BID        PRIO=30  ROUTING=b_id## Services for the credit card authorization partWITHDRAWALA  PRIO=50INQUIRYA  PRIO=50OPENCA  PRIO=40CLOSECA  PRIO=40DEPOSITA  PRIO=50OPEN_ACCT2  PRIO=40OPENC  PRIO=40#*ROUTINGACCOUNT_ID       FIELD=ACCOUNT_ID                 BUFTYPE=“FML”                 RANGES=“10000-39999:BANKB1,                         40000-69999:BANKB2,                         70000-109999:BANKB3,                         *:*”BRANCH_ID        FIELD=BRANCH_ID                 BUFTYPE=“FML”                 RANGES=“1-5:BANKB1,                         6-10:BANKB2,                         11-15:BANKB3”b_id             FIELD=b_id                 BUFTYPE="VIEW:aud"                 RANGES="1-5:BANKB1,                         6-10:BANKB2,                         11-15:BANKB3"
Limitations of Option 1
Option 2: Reconfigure the Applications as a Domains Configuration
Figure 2‑3 Domains Configuration
Figure 2‑3 Domains Configuration
Creating the UBBCONFIG File for the bankapp Application in the Domains Environment
*RESOURCESIPCKEY 76666UID 0000GID 000PERM 0660MAXACCESSERS 40MAXSERVERS 35MAXSERVICES 75MAXCONV 10MAXGTT 100MASTER SITE1,SITE2SCANUNIT 10SANITYSCAN 5BBLQUERY 50BLOCKTIME 2DBBLWAIT 6OPTIONS LAN,MIGRATEMODEL MPLDBAL Y MAXBUFTYPE 16#*MACHINESmach1            LMID=SITE1 TUXDIR=“/home/rsmith/tuxroot” APPDIR=“/home/rsmith/bankapp” ENVFILE=“/home/rsmith/bankapp/ENVFILE” TLOGDEVICE=“/home/rsmith/bankapp/TLOG” TLOGNAME=TLOG TUXCONFIG=“/home/rsmith/bankapp/tuxconfig”                 TYPE=“type1”                 ULOGPFX=“/home/rsmith/bankapp/ULOG”mach2            LMID=SITE2 TUXDIR=“/home/rsmith/tuxroot” APPDIR=“/home/rsmith/bankapp” ENVFILE=“/home/rsmith/bankapp/ENVFILE” TLOGDEVICE=“/home/rsmith/bankapp/TLOG” TLOGNAME=TLOG TUXCONFIG=“/home/rsmith/bankapp/tuxconfig” TYPE=“type2” ULOGPFX=“/home/rsmith/bankapp/ULOG”mach3            LMID=SITE3 TUXDIR=“/home/rsmith/tuxroot” APPDIR=“/home/rsmith/bankapp” ENVFILE=“/home/rsmith/bankapp/ENVFILE” TLOGDEVICE=“/home/rsmith/bankapp/TLOG” TLOGNAME=TLOG TUXCONFIG=“/home/rsmith/bankapp/tuxconfig” TYPE=“type2” ULOGPFX=“/home/rsmith/bankapp/ULOG”#*GROUPSDEFAULT: TMSNAME=TMS_SQL  TMSCOUNT=2## Groups for bankappBANKB1 LMID=SITE1       GRPNO=1          OPENINFO=“TUXEDO/SQL:/home/rsmith/bankapp/bankdl1:bankdb:readwrite”BANKB2    LMID=SITE2       GRPNO=2          OPENINFO=“TUXEDO/SQL:/home/rsmith/bankapp/bankdl2:bankdb:readwrite”BANKB3    LMID=SITE3       GRPNO=3          OPENINFO=“TUXEDO/SQL:/home/rsmith/bankapp/bankdl3:bankdb:readwrite”## Groups for DomainsDMADMGRP  LMID=SITE1       GRPNO=4GWTGROUP  LMID=SITE2       GRPNO=5#*NETWORKSITE1  NADDR=“<network address of SITE1>”  BRIDGE=“<device of provider1>”  NLSADDR=“<network listener address of SITE1>”SITE2  NADDR=“<network address of SITE2>”  BRIDGE=“<device of provider2>”  NLSADDR=“<network listener address of SITE2>”SITE3  NADDR=“<network address of SITE3>”  BRIDGE=“<device of provider3>”  NLSADDR=“<network listener address of SITE3>”#*SERVERSDEFAULT:  RESTART=Y       MAXGEN=5 REPLYQ=Y CLOPT=“-A”## Servers for DomainsDMADM     SRVGRP=DMADMGRP          SRVID=1001          REPLYQ=N          RESTART=Y          GRACE=0GWADM     SRVGRP=GWTGROUP          SRVID=1002          REPLYQ=N          RESTART=Y          GRACE=0GWTDOMAIN SRVGRP=GWTGROUP          SRVID=1003          RQADDR=”GWTGROUP”          REPLYQ=N          RESTART=Y          GRACE=0## Servers for bankappTLR   SRVGRP=BANKB1 SRVID=1       RQADDR=tlr1          CLOPT=“-A -- -T 100 -e 1000.00”TLR   SRVGRP=BANKB1   SRVID=2       RQADDR=tlr1          CLOPT=“-A -- -T 200 -e 1000.00”TLR   SRVGRP=BANKB2   SRVID=3       RQADDR=tlr2          CLOPT=“-A -- -T 600 -e 1000.00”TLR   SRVGRP=BANKB2   SRVID=4       RQADDR=tlr2          CLOPT=“-A -- -T 700 -e 1000.00”TLR   SRVGRP=BANKB3   SRVID=5       RQADDR=tlr3          CLOPT=“-A -- -T 800 -e 1000.00”TLR   SRVGRP=BANKB3 SRVID=6       RQADDR=tlr3          CLOPT=“-A -- -T 900” -e 1000.00XFER   SRVGRP=BANKB1 SRVID=7XFER   SRVGRP=BANKB2 SRVID=8XFER   SRVGRP=BANKB3 SRVID=9ACCT   SRVGRP=BANKB1 SRVID=10ACCT   SRVGRP=BANKB2 SRVID=11ACCT   SRVGRP=BANKB3 SRVID=12BAL       SRVGRP=BANKB1 SRVID=13BAL       SRVGRP=BANKB2 SRVID=14BAL       SRVGRP=BANKB3 SRVID=15BTADD     SRVGRP=BANKB1 SRVID=16BTADD     SRVGRP=BANKB2 SRVID=17BTADD     SRVGRP=BANKB3 SRVID=18AUDITC    SRVGRP=BANKB1 SRVID=19      CONV=Y  MIN=1  MAX=10  RQADDR=”auditc”BALC      SRVGRP=BANKB1 SRVID=20BALC      SRVGRP=BANKB2 SRVID=21BALC      SRVGRP=BANKB3 SRVID=22#*SERVICESDEFAULT:  LOAD=50  AUTOTRAN=Y  TRANTIME=30WITHDRAWAL       PRIO=50  ROUTING=ACCOUNT_IDDEPOSIT          PRIO=50  ROUTING=ACCOUNT_IDTRANSFER         PRIO=50  ROUTING=ACCOUNT_IDINQUIRY          PRIO=50  ROUTING=ACCOUNT_IDCLOSE_ACCT       PRIO=40  ROUTING=ACCOUNT_IDOPEN_ACCT        PRIO=40  ROUTING=BRANCH_IDBR_ADD           PRIO=20  ROUTING=BRANCH_IDTLR_ADD          PRIO=20  ROUTING=BRANCH_IDABAL             PRIO=30  ROUTING=b_idTBAL             PRIO=30  ROUTING=b_idABAL_BID         PRIO=30  ROUTING=b_idTBAL_BID         PRIO=30  ROUTING=b_idABALC_BID        PRIO=30  ROUTING=b_idTBALC_BID        PRIO=30  ROUTING=b_id#*ROUTINGACCOUNT_ID       FIELD=ACCOUNT_ID                 BUFTYPE=“FML”                 RANGES=“10000-39999:BANKB1,                         40000-69999:BANKB2,                         70000-109999:BANKB3,                         *:*”BRANCH_ID        FIELD=BRANCH_ID                 BUFTYPE=“FML”                 RANGES=“1-5:BANKB1,                         6-10:BANKB2,                         11-15:BANKB3”b_id             FIELD=b_id                 BUFTYPE="VIEW:aud"                 RANGES="1-5:BANKB1,                         6-10:BANKB2,                         11-15:BANKB3"
Creating a DMCONFIG File for the bankapp Application
Listing 2‑4 Sample DMCONFIG File for the bankapp Application
Creating the UBBCONFIG File for the Credit Card Authorization Application in the Domains Environment
*RESOURCESIPCKEY 76666UID 0000GID 000PERM 0660MAXACCESSERS 40MAXSERVERS 35MAXSERVICES 75MAXCONV 10MAXGTT 100MASTER SITE1SCANUNIT 10MODEL            SHMLDBAL Y#*MACHINESsfexpz           LMID=SITE1 TUXDIR=“/home/rsmith/tuxroot” APPDIR=“/home/rsmith/creditapp” ENVFILE=“/home/rsmith/creditapp/ENVFILE” TLOGDEVICE=“/home/rsmith/creditapp/TLOG” TLOGNAME=TLOG TUXCONFIG=“/home/rsmith/creditapp/tuxconfig”                 TYPE=“type1”                 ULOGPFX=“/home/rsmith/creditapp/ULOG”#*GROUPSDEFAULT: TMSNAME=TMS_SQL  TMSCOUNT=2## Group for credit card authorizationCREDIT    LMID=SITE1      GRPNO=1          OPENINFO=“TUXEDO/SQL:/home/rsmith/creditapp/crdtdl1:bankdb:readwrite”## Groups for DomainsDMADMGRP  LMID=SITE1      GRPNO=2GWTGROUP  LMID=SITE1      GRPNO=3#*SERVERSDEFAULT:  RESTART=Y        MAXGEN=5  REPLYQ=Y  CLOPT=“-A”## Servers for DomainsDMADM     SRVGRP=DMADMGRP          SRVID=50          REPLYQ=N          RESTART=Y          GRACE=0GWADM     SRVGRP=GWTGROUP          SRVID=60          REPLYQ=N          RESTART=Y          GRACE=0GWTDOMAIN SRVGRP=GWTGROUP          SRVID=70          RQADDR=”GWTGROUP”          REPLYQ=N          RESTART=Y          GRACE=0## Servers for credit card authorizationTLRA   SRVGRP=CREDIT   SRVID=1          CLOPT=“-A -- -T 600”ACCTA   SRVGRP=CREDIT   SRVID=2CRDT   SRVGRP=CREDIT   SRVID=3#*SERVICESDEFAULT:  LOAD=50  AUTOTRAN=Y  TRANTIME=30# Services for credit card authorizationWITHDRAWALA  PRIO=50INQUIRYA  PRIO=50OPENCA  PRIO=40CLOSECA  PRIO=40DEPOSITA  PRIO=50OPEN_ACCT2  PRIO=40OPENC  PRIO=40
Creating a DMCONFIG File for the Credit Card Authorization Application
Listing 2‑6 Sample DMCONFIG File for the Credit Card Authorization Application
Examining the creditapp Domains Configuration
...*RESOURCESIPCKEY           80952UID              <user id from id(1)>GID              <group id from id(1)>PERM             0660MAXACCESSERS     40MAXSERVERS       35MAXSERVICES      75MAXCONV          10MASTER           SITE1MODEL            SHMLDBAL            YMAXGTT           100MAXBUFTYPE       16SCANUNIT         10SANITYSCAN       5DBBLWAIT         6BBLQUERY         50BLOCKTIME        2##*MACHINES<SITE1's uname>  LMID=SITE1                 TUXDIR="<TUXDIR1>"                 APPDIR="<APPDIR1>"                 ENVFILE="<APPDIR1>/ENVFILE"                 TLOGDEVICE="<APPDIR1>/TLOG"                 TLOGNAME=TLOG                 TUXCONFIG="<APPDIR1>/tuxconfig"                 ULOGPFX="<APPDIR1>/ULOG"                 TYPE="<machine type1>"
##*GROUPSDEFAULT:         LMID=SITE1BANKB1           GRPNO=1     TMSNAME=TMS_SQLTMSCOUNT=2                 OPENINFO="TUXEDO/SQL:<APPDIR1>/crdtdl1:bankdb:readwrite"BANKB2           GRPNO=2BANKB3           GRPNO=3BANKB4           GRPNO=4##*SERVERS#DEFAULT:         RESTART=Y       MAXGEN=5   REPLYQ=Y  CLOPT="-A"DMADM            SRVGRP=BANKB2   SRVID=32GWADM            SRVGRP=BANKB2   SRVID=30GWTDOMAIN        SRVGRP=BANKB2   SRVID=31GWADM            SRVGRP=BANKB3   SRVID=24GWTDOMAIN        SRVGRP=BANKB3   SRVID=25GWADM            SRVGRP=BANKB4   SRVID=20GWTDOMAIN        SRVGRP=BANKB4   SRVID=21TLRA             SRVGRP=BANKB1   SRVID=2                 CLOPT="-A -- -T 100"BTADD            SRVGRP=BANKB1   SRVID=3ACCTA            SRVGRP=BANKB1   SRVID=4CRDT             SRVGRP=BANKB1   SRVID=5CRDTA            SRVGRP=BANKB1   SRVID=6 #*SERVICESDEFAULT:         LOAD=50INQUIRYA         PRIO=50WITHDRAWALA      PRIO=50OPEN_ACCT2       PRIO=40OPENC            PRIO=40OPENCA           PRIO=40CLOSECA          PRIO=40BR_ADD           PRIO=20TLR_ADD          PRIO=20
Listing 2‑8 domcon1 Domains Configuration File for the creditapp Application
Setting Up a Domains Configuration
Configuring a Sample Domains Application (simpapp)
Figure 2‑4 Local and Remote Applications in simpapp
Configuration Tasks
How to Set Environment Variables for lapp
Windows Example
UNIX Example
How to Define the Domains Environment for lapp in the UBBCONFIG File
Listing 2‑9 lapp.ubb Configuration File
Listing 2‑9 lapp.ubb Configuration File
Server Group Definitions
Server Definitions
How to Define Domains Parameters for lapp in the DMCONFIG File
Listing 2‑10 lapp.dom Domains Configuration File
Listing 2‑10 lapp.dom Domains Configuration File
DM_LOCAL Section Definitions
DM_REMOTE Section Definitions
DM_EXPORT Section Definitions
DM_IMPORT Section Definitions
DM_TDOMAIN Section Definitions
How to Compile Application and Domains Gateway Configuration Files for lapp
How to Set Environment Variables for rapp
Windows Example
UNIX Example
How to Define the Domains Environment for rapp in the UBBCONFIG File
Listing 2‑11 rapp.ubb Application Configuration File
How to Define Domains Parameters for rapp in the DMCONFIG File
Listing 2‑12 rapp.dom Domains Configuration File
How to Compile Application and Domain Gateway Configuration Files for rapp
See Also
How to Compress Data Between Domains
How to Route Service Requests to Remote Domains
Setting Up Security in a Domains Configuration
Domains Security Mechanisms
How to Configure Principal Names for Domains Authentication
How to Configure Domains Password Security
Using the DM_MIB(5) to Set Domains Passwords (DM_PW)
Using the dmadmin Command to Set Domains Passwords (DM_PW)
Examples of Coding Password Security Between Domains
Example 1: Setting Security to NONE
Listing 2‑13 Setting Security to NONE for Both Application and Domains
Listing 2‑14 Setting Application Security to NONE and Domains Security to DM_PW
Example 2: Setting Security to APP_PW
Listing 2‑15 Setting Security to APP_PW for Both Application and Domains
How to Configure Domains Access Control Lists
How to Configure ACL Policy for a Remote Domain
How to Configure Domains Link-Level Encryption
Setting Up Connections in a Domains Configuration
How to Request Connections for Client Demands (ON_DEMAND Policy)
Figure 2‑5 Connections Made with an ON_DEMAND Policy
How to Request Connections at Boot Time (ON_STARTUP Policy)
Figure 2‑6 Connections Made with an ON_STARTUP Policy
How to Limit Connections to Incoming Messages Only (INCOMING_ONLY Policy)
Figure 2‑7 Connections Made with an INCOMING_ONLY Policy (Accept Incoming Connections)
How to Configure the Connection Retry Interval for ON_STARTUP Only
How to Configure the Maximum Retry Number
Example of Coding Connection Policies Between Domains
Controlling Connections in a Domains Configuration
How to Establish Connections Between Domains
How to Break Connections Between Domains
How to Report on Connection Status
How to Initiate Domain Connection Events
Configuring Domains Link-Level Failover and Keepalive
Planning and Configuring CORBA Domains
Overview of the CORBA Domains Environment
Single-Domain Versus Multiple-Domain Communication
Figure 3‑1 Domains Configuration Consisting of Two CORBA Applications
Figure 3‑1 Domains Configuration Consisting of Two CORBA Applications
Single-Domain Communication
Multiple-Domain Communication
Elements of a CORBA Domains Configuration
Understanding and Using the Configuration Files
The UBBCONFIG File
Domain Name
Gateway Group and Server Names
The DMCONFIG File
Listing 3‑1 Sample DMCONFIG File for a Oracle Tuxedo CORBA Domains Environment
Listing 3‑1 Sample DMCONFIG File for a Oracle Tuxedo CORBA Domains Environment
DM_RESOURCES
DM_LOCAL
DM_REMOTE
TYPE = TDOMAIN
ACCESSPOINTID = string
DM_EXPORT
DM_IMPORT
DM_ACCESS_CONTROL
DM_TDOMAIN
NWADDR = string
The factory_finder.ini File
DM_REMOTE_FACTORIES
Listing 3‑2 Assigning an Alias to a Remote Factory
Listing 3‑3 Assigning Multiple Aliases to a Remote Factory
DM_LOCAL_FACTORIES
See Also
Specifying Unique Factory Object Identifiers in the factory_finder.ini File
Processing the factory_finder.ini File
Types of CORBA Domains Configurations
Directly Connected Domains
Indirectly Connected Domains
Figure 3‑2 Indirectly Connected Domains
Examples of CORBA Domains Configurations
Sample UBBCONFIG Files
Listing 3‑4 UBBCONFIG File for the Here Domain
Listing 3‑5 UBBCONFIG File for the Yonder Domain
Sample DMCONFIG File
Listing 3‑6 DMCONFIG File for the Local Machine in the Here Domain in a Three-Domain Configuration
Listing 3‑7 DMCONFIG File for the There Domain in a Three-Domain Configuration
Listing 3‑8 DMCONFIG File for the Yonder Domain in a Three-Domain Configuration
Sample factory_finder.ini File
Listing 3‑9 factory_finder.ini File for the Here Local Domain
Listing 3‑10 factory_finder.ini File for the There Remote Domain
Administering Domains
Using Domains Run-Time Administrative Commands
Figure 4‑1 Domains Run-Time Administration
Using the Administrative Interface, dmadmin(1)
See Also
Using the Domains Administrative Server, DMADM(5)
See Also
Using the Gateway Administrative Server, GWADM(5)
See Also
Using the Domain Gateway Server
See Also
Tuning the Performance of the Domain Gateway
Managing Transactions in a Domains Environment
Using the TMS Capability Across Domains
Figure 4‑2 The Domain Gateway as Subordinate/Coordinator of Another Domain Gateway Group
Figure 4‑3 Client Commit Managed by a Domain Gateway
Using GTRID Mapping in Transactions
Defining Tightly-coupled and Loosely-coupled Relationships
Global Transactions Across Domains
Example of a Service Request Graph Generating Local and Remote Requests
Figure 4‑4 Service Request Graph
Transaction Trees for Oracle eLink OSI TP and Oracle Tuxedo Domains
Figure 4‑5 Transaction Tree for Oracle eLink OSI TP Environment
Figure 4‑6 Transaction Tree for TDomain Environment
Summary of Domains Transaction Management
Using Logging to Track Transactions
Recovering Failed Transactions

Copyright © 1994, 2017, Oracle and/or its affiliates. All rights reserved.