Tuxedo configuration management brief description (transfer)

xiaoxiao2021-03-06  37

Configuration Management of Tuxedo

Configuration Management of Tuxedo 1 1. Tuxedo Basic Command 2 II, UBB File Configuration Description 3 IM File configuration 94.3 Management 11 V. Connect Tuxedo and WebLogic115.1 with jolt, configure jolt server115.2 Configuring WebLogic Server 6.x125.3 Example Setup136, Tuxedo dynamic configuration 136.2 Change configuration with TMADMIN Change TuxConfig (Ubbconfig) 14

First, Tuxedo basic command

# 1. Set the environment variable Tuxdir, AppDir, TuxConfig, Lang (related to OS), LD_Library_Path (related to OS) # 2. Compile UBB Text Generating Binary Profile: TMLOADCF -Y Ubbconfig # 3. Run TLISTEN on all machines, specific See the NetWork section # 4 in the document. Start the TMBOOT -Y # 5. Turn off the TMSHUTDOWN -Y parameter: -A Start / close the managed Server process on all machines - MAM only start / close the managed Server process on the master machine - ISRVID start / close a server process specified -Ggrpname start / close a server group name specified by a Server Group-S start / close All Application Server (LMID) -SServer-Name Start / Close a Server name specified Server process - LLMID Option Start / close all TMS Processes and Applications (LMID) -Tgrpname Start / Close All TMS Processes in Specical Server GROUP - BBL Process on the specified machine on the specified machine Specifies a program to perform -c calculation of the current UBB configured Tuxedo to start the minimum occupied system IPC resource when the current UBB configuration

# With TmunloadCF> generated.ubb can draw all currently configured UBB files All the parameter values ​​(no settings are available) # with TMLOADCF -C or TMBOOT -C can calculate the current UBB configuration TUXEDO startup minimum occupied System IPC resources.

Second, UBB file configuration description

UBB configuration files are divided into * resources, * group, * server, * service, * network, etc. Default indicates the default attributes of all objects in this section.

* Resources #Resouch section provides basic parameters for the entire system.

IPCKEY55555 (32767-262143) # ipc communication Key Value DomainidUnicom #domain ID value MasterUnicom1, Unicom2 # Specifies the management host in Domain to Unicom1, the Unicom1 in the run, the management host switches to Unicom2MaxAccessers 1000 # here value Represents the total number of Client and Server, which can access tuxedo in a single machine in the entire system (the maximum number of processes that can access BBL) should be greater than the number of license users Server (copy should be recorded). This field will be overwritten by the MaxAccessers part of the Machine section. # 系统 系统 核 的 数 的 (SEMMNS) in the system core parameter (SEMMNS) is greater than the number of maxAccessers here, and the number of IPC messages should be larger than the number of MaxAccessers all numbers with Replyq. MaxServers80 # Maxser number (copy should be recorded) MaxServices200 # Maxseru (multiple Server Repeat) MaxGTT20 # system MODELMP # indicates the cluster mode, otherwise shmoptionslan, Migrate # multiple machines The Cluster mode must be specified as a LAN mode, and the MigRate represents the migration of the machine Server in groups. LDBALY # Allows load balancing scanUnit10 # scanunit is BBL to schedule regularly in all service requests to find timeout transactions and blocked and gerbera (seconds). This parameter specifies the basic unit of the BBL scan interval, which affects the exact level of the transaction timeout specified in TpBegin and the accuracy of the request blocking timeout specified by blockTime. SanityScan, BBLQuery, DBBLWAIT, blockTime and other parameters are multiple of ScanUnit, not actual seconds. As a time unit scanunit must be a multiple of 5, and satisfy 0

The value of SanityScan12 # SanityScan specifies that the time interval of all processes on each of Machine is automatically detected to scanUnit as units. The default is satisfied (ScanUnit * SanityScan) is about 120 seconds.

DBBLWAIT 2 # dbblwait's value Specifies the maximum time for all BBL responses when the DBBL scan BBL, which is scheduled for scanunit as a unit, which exceeds dbblwait * scanunit (second). Each time DBBL forwards the request to its BBL, BBL will reply to a positive response before requested to return. This allows you to detect dead or abnormal BBLs. The value of scanunit * dbblwait is equal to the biggest in ScanUnit and 20 seconds.

BBLQuery30 # bblQuery Specifies the time interval of the status check for all BBLs, which is also schema in scanunit. If the status query of DBBL does not answer, the BBL is Isolated '. The default is satisfied (ScanUnit * BBLQuery) is about 300 seconds.

BlockTime6 # blockTime Specifies the timeout time of the blocked request in the block queue (including the client from the TPinit to TPTERM) to calculate in ScanUnit. The default is satisfied (ScanUnit * BlockTime) is about 60 seconds.

* MachiceDefault: # This section describes each host. unicom2LMID = unicom2APPDIR = "/ usr / tuxedo / apps / simpapp" TUXCONFIG = "/ usr / tuxedo / apps / simpapp / tuxconfig" TUXDIR = "/ usr / tuxedo" UID = 17GID = 26MAXACCESSERS = 100unicom1LMID = unicom1APPDIR = "/ usr / Tuxedo / Apps / SimPApp "TuxConfig =" / usr / tuxedo / apps / simpapp / tuxconfig "Tuxdir =" / usr / tuxedo "uid = 17gid = 26maxwsclients = 50 # unicom2, Unicom1 is obtained by using hostname for the network host name. #LMID: Logical Machines ID Names Tuxedo's internal logic of the host. #Appdir requires the executable of Server. #Tuxconfig is the binary configuration file of the full path, requires the same as the environment variable TuxConfig. For MASTER TUXCONFIG files are generated by TmLoadCF, not the MASTER machine is started by TMBOOT, is obtained from the MASTER machine. #Tuxdir is the Tuxedo installation directory, requires the same as the environment variable Tuxdir. #Maxwsclients indicates the maximum number of connectable client.

* Groups # group1 is a group name, LMID indicates the host, GRPNO is a group number, and OpenInfo opens the RM (usually indefined database) of the group through XA.

Group1 lmid = unicom2grpno = 1 openinfo = nonegroup2 lmid = unicom3grpno = 2 openInfo = none

* Servers # here describe the application server. SRVGRP's Server is a group name, SRVID is the server ID number, and Min indicates that the server Clopt provides the relevant parameters of the running, requiring "-a - ....", Which can be obtained in the SRVINIT function of the application server. Default: clopt = "- a"

BILLSERVER SRVGRP = Group1 SRVID = 1 min = 2 max = 4rqaddr = qname replyq = yclopt = "- a -O ./out.log -r -e ./err.log - -p [l] [loout_water] [, [TERMINATE_TIME]] ​​[: [high_water]] If MAX> 1, and the Server using MSSQ (RQADDR, RQperm) can configure -P to control the increase and decrease in the process. The control algorithm is as follows: if the request queue The number of requests is greater than high_water, which adds a new process of the service; if the request queue is less than the terminate_time second, stop the service. Low_water default is average The service process has a request message or Workload 50; high_water default is the average of two request messages or workload 100.create_time default, and the and Terminate_time defaults to 60 seconds. Note: Using Tuxedo When the service process pool, the user should call the process if it is used by system () such as ALARM (), but it does not report error. [L] tag means that the increase or decrease service process is based on load rather than the request queue. Length. For SHM mode and ldbal = y, otherwise error (libtux_cat: 1542), the service process will not increase or decrease. Wslsrvgrp = group2 srvid = 1 clopt = "- A - -N //130.36.0.103: 8889 -M 3 -M 10 -X 10 -T 10 "#WSL is used to connect to the Client side.-N indicates that the access point is IP: port mode, -m -m represents the minimum and maximum startup how much WSH and Front-end communication, -X represents a WSH and several client end connections.-T 10 indicates that there is no trading request if the Client side and the Server connection are not connected to the transaction request. * Services # does not require all services to describe, When a service has a special parameter, it will be described in the Service section .toupperload = 60 // Load, useful when ldbal = y uses PRIO = 80 // Service in the request queue TRANSTIME = 120 // Trading time svctimeout = 60 0 // Service timeout time

* Network # network sessions How to make network connections between multiple machines describe. #Cluster mode requires starting TLISTEN first. In fact, the application server for non-MASTER starts is done by TLISTEN. #Tlisten's start-up mode is # unicom1: Tlisten -L //130.36.1.101:8891#unicomb2: Tlisten -L //130.36.0.102:8891#naddr Specifies the access point of the network connection. #Nlsaddr specifies the TLISTEN's access point. #Bridge refers to the device file used by the TCP connection.

UNICOM2 NADDR = "// 130.36.0.102:8899"nlsaddr="//130.36.0.102:8891"bridge="/dev/streams/xtiso/tcp"Unicom1naddr="//130.36.0.101:8899"nlsaddr="/ / 130.36.0.101:8891"bridge="/dev/streams/xtiso/tcp "

Classification summary

TypeParameters requiring tuningIdentificationTUXCONFIG, UID, GID, IPCKEY, DOMAINIDThresholdsMAXACCESSERS, MAXSERVERS, MAXSERVICES, MAXGTT, MAXCONV, MAXBUFSTYPE, MAXWSCLIENTSTime-outsSCANUNIT, SANITYSCAN, DBBLWAIT, BBLQUERY, BLOCKTIMEAvailabilityMASTER, MIGRATE, RESTART, GRACE, MAXGEN, RCMDMachineTYPE, CMPLIMIT, NETLOAD, SPINCOUNT, TLOGDEVICE, PERMNetworkNADDR, NLSADDRServersCLOPT, ENVFILEServicesLOAD, PRIO, bUFTYPE, SVCTIMEOUTWorkstationsWSNADDR, WSRPLYMAX three databases XA settings 3.1 oRACLE XA1. provides rm file attachment, also recommended to run the oracle demo file to get the names of all lib library to connect to. then Write these names in the RM file. Such as: #oracle 8i for ntoracle_xa; xaosw;% oracle_home% / rdbms / xa / oraxa8.lib% ORAME% / precomp / lib / msvc / oraSQL8.LIB% Oracle_Home% / Precomp / LIB / MSVC / ORASQX8.LIB% ORACLE_HOME% / OCI / LIB / MSVC / OCI.LIB% ORACLE_HOME% / OCI / LIB / MSVC / OCIW32.LIB # Oracle 8i for Unixoracle_xa: xaosw: -l $ {oracle_home} / lib - LCLNTSH

2.Ubb file * Group sections plus TMSNAME = TMS_ORA TMSCOUNT = 3 openinfo = "Oracle_xa: Oracle_xa ACC = P / Scott / Tiger SESTM = 120 logDir =. SQLNET = Abcde" Specific in Oracle online document Application Developments -> Oracle8 Application Development's Guild-> Oracle XA-> Defining The Xa_Open String

3. Log in to SQLPlus, a) run $ {oracle_home} /rdbms/admin/xaview.sql, {oracle_home} /rdbms $ to public; c) Grant SELECT ON DBA_PENDING_TRANSACTIONS TO SCOTT; D) Commit ;

4. Run BuildtMs -O $ (Tuxdir) / bin / tms_ora -r oracle_xa5. Exec SQL Connect in TpsVrinit () Change to TPOpen (), Tpsrvdone () EXEC SQL Disconnect ... change to TPClose () ; Actual copy $ tuxdir / apps / banapp / appinit.c

6. You need to specify TLogDevice, TLogSize Examples in the UBB file: TlogDevice = "/ home / usr1 / tlogdev" TLOGSIZE = 500

7. Establish a TLOG file to copy $ TUXDIR / Apps / BankApp / Crtlog.sh. Set the associated environment variable to run the shell file.

8. Start the transaction TPBEGIN (3, 0), submit a back roll with TPCommit / TPabort.

3.2 Sybase XA1. In the RM file, run Sybase to get the name of all LIB libraries to connect to. Then write these names in the RM file: # sybase_11 for ntsybase_xa_server; Sybase_xa_Switch; c: /sybase_server/lib/libxasrvlib.lib2.ubbconfig * GROUP section TMS_NAME = TMS_SYB TMS_NAME = TMS_SYB TMSCOUNT = 3 openinfo = "Sybase_xa_server: -uuserid1 -ppassword1 -nconnection2 -lxa_log -tall" Specific views of Xa_Open String in the Sybase text

3. Run Buildtms -O $ (Tuxdir) / bin / tms_syb -r sybase_xa_server4. Exec SQL Connect ... changed to TPOPEN, TPSRVDOne () in Tpsvrinit () Change to TPClose (); actual You can view $ TUXDIR / Apps / BankApp / Appinit.c5. You need to specify TLogDevice, TLogsize Examples: TLogDevice = "/ Home / USR1 / TLOGDEV" TLOGSIZE = 5006. Creating TLOG files Copy $ TUXDIR / Apps / Bankapp / crtlog.sh. Set the relevant environment variables run the shell file. 7. Start transaction TPBEGIN (3, 0), submit back TPCommit / TPabort.

3.3 Informix XA1. Run ESQL -Lib to get the name of all LIB libraries to connect. Then add these names all in the RM file in Informix-Online: INFX_XA_SWITCH: $ {informixdir} /lib/esql/libInfxxa.a / usr / informix /LIB/ESQL/Libixos.a /usr/informix/lib/esql/libixgen.a /usr/informix/lib/esql/inciXsql.a /usr/informix/lib/libixasf.a / usr / informix / lib / esql /LIBIXOS.A /USR/INFORMIX/LIB/ESQL/Libixgen.a /usr/informix/lib/esql/libixgls.a -lnsl_s -lm -lv3 -lcl -lsec /usr/informix/lib/esql/libixglx.a2 In the .ubbconfig file * Group section TMS_NAME = TMS_INFO TMSCOUNT = 3 openinfo = "Informix-Online: Test_TUX" Specific views of Xa_Open String in the Sybase text in Xa_Open String, running Buildtms -O $ (Tuxdir) / bin / TMS_INFO -R Informix -OnLine4. Exec SQL Connect ... changed to TPOPEN, TPSRVDOne () EXEC SQL DISCONNECT ... Change to TPClose (); actually view $ TUXDIR / Apps / BankApp / Appinit.c5. Machine section in the UBB file specifies TLogDevice, TLogsize: TlogDevice = "/ Home / USR1 / TLOGDEV" TLOGSIZE = 5006. Creating a TLOG file directly copy $ TUXDIR / Apps / BankApp / Crtlog.sh. Set the relevant environment variables After running Shell file. 7. Start transaction TPBEGIN (3, 0), submit back TPCommit / TPabort.

Fourth, Tuxedo Multi-Aircly Configuration Point Tuxedo Multi-Aircly Configuration There are two aspects 4.1 Start TLISTENTLISTEN to play the role of the controller during Tuxedo, starting the BBL and application servers on the non-MASTER machine, TListen's startup method is TListen -L // Hostip: ipport 1. Note that IPPORT here must match NLSADDR in the UBB file, it is best to use IP addresses to avoid interpretation of different IP addresses to the same machine name. 2. TLISTEN must start on all machines and start TMBoot after startup. It is recommended to run TListen.3 when the operating system is started. Note that all nodes have password, where there is% appdir% /. ADM / TLISTEN.PW file, if there is no, you will read the contents of Tuxedo's% tuxdir% / udataobj / tlisten.pw file. TLISTEN Password in each node is to ensure absolutely the same (including entering you!). Otherwise, an error will be reported: 'Security Violation'. 4.2 ubb file configuration for multi-machine mode generally refers to multiple machines in a single management domain, only a ubb file on all machines, the following is a template file ubb * RESOURCESIPCKEY80952MAXACCESSERS40MAXSERVERS35MAXSERVICES75MASTERSITE1, SITE2OPTIONSLAN, MIGRATE // MIGRATE represent MASTER can live migration MODELMP / / MORE MARY * MACHINES "Patrick" LMID = "Site1" AppDir = "D: / BEA / TUXEDO / SAMPLES / ATMI / SIMPAPP" TuxConfig = "D: / bea / Tuxedo / Samples / Atmi / SimPApp / Tuxconfig" Tuxdir = "D: / bea / tuxedo" UID = 0GID = 0type = "NT" MaxWSClients = 5maxaccessers = 40 "TEST60" LMID = "site2" Appdir = "/ bea / tuxedo / Samples / Atmi / SimPAPP" TuxConfig = "/ BEA / Tuxedo / Samples / Atmi / SimPApp / Tuxconfig "Tuxdir =" / BEA / TUXEDO "UID = 1002GID = 101type =" Sun "MaxWsClients = 15maxaccessers = 100

* Groupsgroup1 lmid = site1grpno = 1OpenInfo = nonegroup2 lmid = site2grpno = 2OpenInfo = None

* ServersDefault: default: rest= y Maxgen = 5 replyq = y clopt = "- a"

Wslsrvgrp = group1 srvid = 20 clopt = "- a - -n //10.128.5.201:9009" Wslsrvgrp=Group2 srvid = 10 clopt = "- A - -N //10.128.5.200:9009"simpservsrvgrp=group1 SRVID = 3simpservsrvgrp = group2 srvid = 4

* SERVICES

* NetWorksite1naddr = "// 10.128.5.201:6044" NLSADDR = "// 10.128.5.201:6045"site2naddr="/10.128.5.200:6044"nlsaddr="/10.128.5.200:6045"# bridge =" / DEV / TCP "

4.3 Management can only run TMADMIN on the MASTER machine. To get the statistics, you should run the default -m command in TMADMIN. $ TMADMIN> Default -m Site1> PSR> BBI

When Master host accidentally occurs, Tuxedo can still run normally. You can manually do MASTER dynamic migration on the Backup node, and DBBL is as Master on the current Backup node. $ TMADMIN> M

Problems should be noted under Windows NT / 2000: 1. Because MaxAccessors on the NT machine is usually smaller, it is recommended to set maxAccessors.2 separately in the Machines section. Separate UID = 0 and GID = 03 separately on the Machines section. When interconnecting other types of CPU machines, you must specify different types in the Machines section. Otherwise, the TLISTEN version will not match. Data exchange default data translation between Server and Client, but default data translation between a Domain Server! 5. Sometimes the LANG environment variable cannot be changed to C, you can create files in% TuxDir% / Locale The folder MKDIR% lang% .6.RM files are found in the use of valid RMs and must have a carriage return, otherwise the RM does not exist.

5. Connect the jolt connection Tuxedo and WebLogic 5.1 installed on Tuxedo, configure jolt server1 - Install jolt server 2 - set your environment set tuxdir = d: / bea / tuxedoset joltdir =% tuxdir% / udataobj / jolt set appdir =% Tuxdir% / SAMPLES / ATMI / SIMPAPP SET PATH =% TuxDir% / BIN;% joltdir% / bin;% appdir%;% PATH% SET NLSPATH =% tuxdir% / local / c set tuxconfig =% AppDir% / Tuxconfig

3 - Added in ubbconfig file jslsrvgrp = group1 srvid = 6 clopt = "- a - -n //10.128.5.112:9001"jrepsvrsrvgrp=" SRVID = 7 clopt = "- A - -W -P D: / BEA / tuxedo / udataobj / jolt / repository / jrepository "jrepsvrsrvgrp = group1 srvid = 8 clopt =" - a ---p D: / bea / tuxedo / udataobj / jolt / repository / jrepository "

5.2 Configuring Weblogic Server 6.x1, Download the Jolt client package for WLS from developer.bea.com, unzip it and copy the jar file to% WL_HOME% / lib Then add the jar files into your Weblogic domain environment file:. Classpath = % classpath%;% WL_HOME% / lib / jolt.jar;% WL_HOME% / lib / joltweblogic.jar2, Config Jolt pool manager startup class in Weblogic a, start Weblogic and access the console b, create Startup class and Shutdown class in console : Deployments-> Startup & Shutdown, Right Click Select Create A New Startup Class ...: name: demojoltpoolstartup classname: bea.jolt.pool.servlet.Weblogic.PoolManagerStartup

3, Create a jolt pool in console: Services-> Jolt, right click Select the panel: Configuration in TAB General name: demojoltpool Minimum Pool Size: 1 Maximum Pool Size: 3 Click the button "Create" in TAB address Primary Address: / / Hostname: Port Failover Address: // Hostname: Port Click The Button "Apply" SELECT TARGETS: IN ListBox Available: Select Your Server Add Intdbox Chosen Click The Button "Apply"

4. Restart Your Weblogic

5.3 Example setup1.Run% WL_HOME% / config / example / setExampleEnv.cmd, 2.compile the SimpAppServlet by: javac -d% EX_WEBAPP_CLASSES% SimpAppServlet.java3.Edit WL_HOME% / config / examples / applications / examplesWebApp / WEB-INF / web.xmladd the servlet description: JoltServlet examples.jolt.servlet.simpapp.SimpAppServlet joltservlet / joltservlet

4.Edit a html and put it to% WL_HOME% / config / examples / applications / examplesWebApp call contents comprising JoltServletType some text here and click the Post button:

5.goto% WL_HOME% / config / example, Start the Examples Domain, 6.access http: // localhost: 7001 / exampleWebapp / jolt.html

Sixth, Tuxedo dynamic configuration Tuxedo dynamic configuration can achieve different levels of configuration modifications over two command line tools for TMADMIN and TMCONFIG. TMADMIN's role is mainly to monitor Tuxedo's operation, can modify the parameters of the service; the TMCONFIG function is more powerful, you can modify the current Tuxedo system UBB configuration, that is, the binary TuxConfig generated with ubbconfig in memory by MIB. 6.1 Modifying the TMADMIN Modified Configuration After entering the TMADMIN, you can use the command HELP to list all commands.

6.2 Changing the TUXCONFIG (Ubbconfig) TMCONFIG tool actually traversed the contents of TuxConfig and modifies its configuration via the MIB API. To properly run TMCONFIG, it is recommended to set the following environment variables: tuxdir = / usr / tuxedotuxconfig = / usr / app / tuxconfigeditor = vi

The main interfaces are as follows:

$ TMCONFIG Section: 1) Resources, 2) Machines, 3) Groups 4) Services 6) Network 7) Routing Q) QUIT 9) NetGroups 11) Netmaps 12) Interfaces [1]:

Operation: 1) First 3) Retrieve 4) ADD 5) Update 6) Quit [1]: 4 Enter Editor To Add / Modify Fields [N]? Perform Operation [y]?

1. Add new hosts with TMCONFIG

1. After entering TMCONFIG, select 2) Machines item 2. You can then select 3) Retrieve to see the current configuration, the default is the first MACHINE configuration 3. By selecting 2) Next, you can search for a MACHINE configuration. Until the empty record. 4. Select 4) Add Enter Editor To Add / Modify Fields [N]? Y 5. Enter the VI editing state, you can increase the configuration in a certain format. Format: MIB domain name [Tab] 6. ​​The increased value MACHINE must include the following fields: oTA_TUXCONFIGoTA_TUXDIRoTA_APPDIRoTA_TLOGDEVICEoTA_TLOGSIZEoTA_PMIDoTA_LMIDoTA_TYPE Example: TA_TUXCONFIG / usr / apps / bank / tuxconfigTA_TUXDIR / usr / tuxrootTA_APPDIR / usr / apps / bankTA_TLOGDEVICE / usr / apps / bank / TLOGTA_ULOGPFX / USR / Apps / Bank / Ulogta_envfile / usr / apps / bank / envfileta_tlogsize 150ta_pmid server109ta_lmid site1ta_type sun7. The storage exits VI, perform operations. 8. Activate new Machine: Reselect 2) Machines -> 5) Update9. After entering VI, find TA_STATE, change its value from NEW to Active10. Store exits VI and performs operations. 2. Increase the new Server process with TMCONFIG

1. After entering TMCONFIG, select 2) Server item 2. You can choose 3) Retrieve to see the current configuration, the default is the first Server configuration 3. Select 2) Next, you can search the Server configuration until you Empty recording. 4. Select 4) Addenter Editor To Add / Modify Fields [N]? Y 5. Enter the VI editing state, you can add configurations in a certain format. The format is: MIB Domain Name [Tab] Value 6. Add Machine must add the following domain: OTA_SERVERNAME OTA_SRVGRP OTA_SRVID Example: Ta_servename / usr / apps / bank / teller_serverta_srvgrp group1ta_srvid 157. The storage disk exits VI and executes the operation.

7. System core parameters Reference Message Queues Parameters

· Msgmni: Total Number of queues (NO. Servers with reply queues) - (NO. Servers In MSSQ SET) (NO. MSSQ Sets) 7) To Determine The Appropriate Value · Msgmap: Number of entries in control map used to manage message segments (Not defined in NT) Set to 2 * MSGMNI · MSGMAX:.. Maximum message size in bytes Set to the largest message size or 75% of the queue size (whichever is bigger) · Msgmnb: this is the queue size itself (64k, 128k, etc.) · Msgssz: size of a segment in bytes (not defined in nt). The value of msgssz shop be such That a multiple of msgssz is equal to the size . (including the BEA TUXEDO System header) of the most commonly sent message Usually set to 16, 32, or 64. · mSGTQL: Total Number of in-Flight messages in the system at once · MSGSEG: Number of message segments in the system (Not defined in nt). You NEED TO FIND OUT The Queue Space of Your Machine and The Following Formula Applies: MsgSeg * Msgssz = Machine Queue Space Size e it will swap) Semaphores Parameters

. · SEMMNS: Maximum number of semaphores in the system The minimum requirement for SEMMNS is MAXACCESSERS - MAXWSCLIENTS 13 (local clients and all servers) · SEMMNI: Maximum number of active semaphore sets For small apps, (100 to 500 servers),. 10 sets are usually sufficient For large apps, (> 500 servers) 32-64 sets are usually sufficient (do a tmloadcf -c to see which is the best) · SEMMSL:. Maximum number of semaphores per semaphore sets (Not defined in NT ) Use the formula:. SEMMNS = SEMMNI * SEMMSL · SEMMAP: Size of the control map used to control semaphore sets (Not defined in NT) Set to SEMMNI · SEMMNU:.. Number of undo structures in the system Set to SEMMNS · SEMUME : Maximum Number of undo Entries Per undo structure (not defined in nt). Set to semmpsshared memory parameters

· SHMMAX:. Maximum shared memory segment size in bytes Bulletin Board Size (must be greater than 1,400,000) Largest BB today is approx 5 MB (this parameter is normally set much higher for the database, so use their rules) · SHMSEG..: Maximum number of segments one process can attach to (for a busy application you need to set this from 32-64) · SHMMNI:. Maximum number of shared memory identifiers in the system Normally the default of 100 is acceptable (unless more than 100 entities Plan on allocating shared memory) · shmmin: minimum shared memory segment size in bytes. Must Be set to 1.

Other tunables

· ULIMIT: Maximum file size ULIMIT needs to be large enough so that you can install BEA TUXEDO and build servers 4 megabytes recommended · MAXUP: Maximum number of processes per non-super user The BEA TUXEDO system processes - servers and.... . administrative processes-run with the UID specified in the application's UBBCONFIG file MAXUP needs to be large enough to allow all of these processes to run · NOFILES:.. Maximum number of open files per process A BEA TUXEDO server requires a minimum of four file descriptors · NPROC:.. Maximum number of processes (systemwide) · nREGION: Number of region table entries to allocate Most processes have three regions:.. text, data, and stack Additional regions are needed for each shared memory segment and shared library ( text and data) attached. However, the region table entry for the text of a `` shared text '' program is shared by all processes executing that program. Each shared memory segment attached to one or more processes uses another reg ion table entry · NUMTIM: Maximum number of STREAMS modules that can be pushed by the Transport Layer Interface (TLI) A typical default value is 16; you should have it set to at least 256. · NUMTRW:.. The number of TLI read / WRITE STRUCTURES TO Allocate in Kernel Data Space. A Typical Default Value IS 16; You Should Have IT Set To At Least 256.

The debug parameter and step 1 of the Tuxedo system platform. Configure two parameters of MaxServers, MaxServices to see if the number of services and service parameters of the UBBFILE file are met. Tmadmin - BBS, see the number of parameters inside. 2. The database can be connected to whether the number of connected servers is connected to the same database in the UBBFILE file. Refer to the error prompt of the XA_NULL * .TRC file. 3. Use the command tmloadcf -c ubfile to see the shared memory configuration required for Tuxedo's process. Then modify the configuration of the shared memory of the system. In addition to the AIX platform, the system's shared memory parameters - Set shmsys: shminfo_shmmin is set to 1.4. TmunloadCF looks at the Tuxedo environment now. 5. TMADMIN - CRDL -B -Z creates a log file. 6. Set order in the Tuxedo environment. Tuxconfig - tmadmin - TLOG; - Author: whiteclude-- Published: 2002/07/27 05:53 pm

Tuxedo interconnection with Oracle Database

(Source: http://www.ccw.com.cn)

In the large-scale computer application system in banks, telecommunications, finance and other industries, the use of middleware is increasingly popular, and the middleware has been intended to be three basic software. As the best middleware products, BEA Tuxedo is widely used in many industries in our country. This article describes how to access the Oracle database in Tuxedo. In the two-layer C / S structure, the client directly accesses the database. After using the Tuxedo middleware, a three-layer structure is formed. At this time, the client does not access the database directly, but is changed to the service on the middleware Tuxedo server, and the database is accessed by the Tuxedo server and returns the result to the client. The Tuxedo server can be on the same server with Oracle, or on a different machine, if in different machines, the machine where the Tuxedo's server is located to install an ORACLE client. There are two ways to connect to the Oracle database: 1, which is not directly interconnected by the XA interface. Suitable for only one database throughout the system. 2, through the XA interface interconnect, there is a database or multiple databases for the entire system, it is recommended to use this interconnect configuration method. System Description Tuxedo Version: 7.1 Installation Directory D: / Tuxedo71 Oracle Version: 8.1.5 Installation Directory D: / ORA81 Operating System: Step 1 of Win2000 Configuration 1, Oracle's configuration 1. Use the internal user (the default password is Oracle) Enter SQLPlus C: /> SQLPlus Internal / Oracle 2. Run the /rdbms/admin/xaview.sql sql> @d: /ora81/rdbms/admin/xaview.sql 3. Authorized SQL> Grant SELECT ON V $ xatrans $ to public with grant option; SQL> GRANT SELECT ON V $ pending_xatrans $ to public with grant option; 4. Connect to SYSTEM users (default passwords is Manager) and authorize SQL> Connect System / Manager SQL> Grant Select Any Table To Public; Second, Tuxedo Configuration 1. Modify the RM file under the UDataobj directory of the Tuxedo installation path, put the line with oracle_xa: xaosw: start with # 注 # #,, add a line: Oracle_xa; xaosw; d: /ora81/rdbms/xa/oRaxa8.lib d: / ora81 /precomp/lib/msvc/orasql8.lib If it is in the UNIX environment, it is: Oracle_xa: xaosw: -l $ {oracle_home} / lib -lclntsh 2. Create a TMS file under Tuxedo users: TMS_ORA8i, Tuxedo via TMS_ORA8i with Oracle Database With XA Protocol Communication Buildtms -od: / Tuxedo71 / Bin / TMS_ORA8i -r Oracle_xa Note: If the Tuxedo server is not on the same server, it may be prompted to find the library file ORAXA8.LIB and ORASQL8.LIB You can copy these two files to the corresponding directory under the client of the current machine Oracle to the server side of the Oracle database.

3. Configure Ubbconfig (1) Add: TLogDevice = "/ Home / Oracle / Temp / Simpdb / Tlog" TlogName = Tlog Tlogsize = 200 (2) Change * The configuration is: (Scott / Tiger is The users and passwords used in this database can be changed as needed) * Groups group1 lmid = Simple GrPNO = 1 openinfo = "Oracle_xa: Oracle_xa ACC = P / Scott / Tiger Sestm = 600 MaxCur = 5 logDir =." TMSNAME = "TMS_ORA8i" TMSCOUNT = 2 the modified configuration file ubb follows, with -Y ubb regenerate tuxconfig IPCKEY 123456 DOMAINID simpapp MASTER simple MAXACCESSERS 100 mAXSERVERS 50 MAXSERVICES 100 MODEL SHM LDBAL N * MACHINES server LMID = simple APPDIR tmloadcf = " D: / test "tuxconfig =" d: / test / tuxconfig "tuxdir =" d: / tux71 "TLogDevice =" D: / TEST / TLOG "TLOGNAME = TLOG TLOGSIZE = 100 * Groups Group1 LMID = Simple GrPNO = 1 openinfo = "Oracle_xa: Oracle_xa ACC = P / Scott / Tiger Sestm = 600 MaxCur = 5 logDir =." TMSNAME = "TMS_ORA8i" TMSCOUNT = 2 * Servers Default: clopt = "- a" TEST SRVGRP = Group1 SRVID = 1 * Services 4. Renname the following files because the following file names have conflicts with the file name of the Oracle belt, so they have to be renamed. (1) Tuxedo Installation Path Include Directory The following files are renamed SQLCA.H.h.bbb with sqlcode.h.bbb to rename sqlcode.h.bbb (2) rename SqlCode.h.bbb. The following files under the Tuxedo installation path lib directory are renamed libsql.lib.bb 5. Create a TLOG file with TmAdmin, Tuxedo uses a file TLOG to record the log of the database. Submitted and rollback used to coordinate distributed databases.

D: /> tmadmin> CRDL -B 500 -ZD: / TEST / TLOG> CRLOG -M SIMPLE> Q III: The server's program: Test.pc function: Take the value of ENAME according to the Empno to the table EMP according to the client. And return it to the client #include #include #include exec SQL include Sqlca; Exec SQL BEGIN DECLARE Section; long al_empno = 0; char AC_ENAME [11] = EXEC SQL VAR AC_ENAME IS STRING (11); EXEC SQL End Declare Section; Test (TPSVCINFO * RQST) {/ * Received Applications Data * / Al_EmpnO = (FBFR32 *) RQST-> Data; Exec SQL SELECT ENAME INTO: AC_ENAME FROM EMP WHERE Empno =: Al_empno; if (Sqlca.sqlcode! = 0) {UserLog ("SELECT FROM EMP Failure, SQLCode =% LD, SQLCODE =% S / N", Sqlca.sqlcode, (char * ) sqlca.sqlerrm.sqlerrmc); strcpy (rqst-> data, sqlca.sqlerrm.sqlerrmc); TPRETURN (TPFAIL, 0, RQST-> DATA, 0, 0);} / * Return the result to the client * / STRCPY (RQST-> DATA, AC_ENAME); TPRETURN (Tpsuccess, 0, Rqst-> Data, 0, 0);} four, write client programs: testcli.c function: call TUXEDO server service TEST, take EMPNO = The value of the corresponding ENAME, and is displayed in #include #include "atmi.h" main (argc, argv) {long reqlen = 1024; char * reqbuf; / * Established connection with Tuxedo server * / if (tpinit ((tpinit *) null) == -1) {(void) FPRINTF (stderr, "tpinit failed / n"); exit (1);} / * Assign Send buffer * / reqbuf = (char *) TPalloc ("string", null, reqlen; IF (Reqbuf == (Char *) NULL) {Printf ("tpalloc failed / n"); tpterm ();} strcpy (Reqbuf, "1000"); / * Call Tuxedo service Test * / if (TpCall (" Test ", (char *) Reqbuf, 0L, (char **) & required (long *) & reqlen, 0 <0) {printf (" TpCall Failed, Tperrno =

转载请注明原文地址:https://www.9cbs.com/read-62333.html

New Post(0)