TUXEDO配置参数详解

TUXEDO配置参数详解
TUXEDO配置参数详解

TUXEDO配置参数详解

2007-07-10 09:39:47

大中小

TUXEDO应用系统的配置

3.1 TUXEDO应用系统的常见配置

配置文件UBBCONFIG介绍

一个TUXEDO应用系统的所有资源都在一个文本文件中进行定义,该文件称为UBBCONFIG,在配置完成后,UBBCONFIG被编译成一个二进制的文件TUXCONFIG.在TUXEDO系统启动时,从该文件中读取系统的配置信息。UBBCONFIG文件类似WINDOWS下的*.INI文件。它包括以下9大部分, 我们称之为节,RESOURCES,MACHIENS,GROUPS

这三个节必须的,其他的节是可选的。

RESOURCES(必需): 与整个系统有关的配置信息

MACHINES(必需): 一个TUXEDO应用系统可以跨越多台服务器,在该节中配置与每台服务

器有关的信息

GROUPS(必需): TUXEDO中的服务可被分为多个组,在该节中配置与组有关的信息SERVERS(可选): 与SERVER有关的信息在该节配置

SERVICES(可选): 与SERVICES有关的信息在该节配置

NETWORK(可选):与网络有关的信息在该节配置

ROUTING(可选) :路由规则在该节配置

NETGROUPS(可选):与网络分组有关的信息在该节配置

名称解释:

TUXEDO应用系统

一个TUXEDO应用系统包括服务端,客户端,服务端安装在服务器上,客户端一般安装在PC 机上,从开发角度看,一个TUXEDO应用系统包括服务端程序,客户端程序,一个配置文件。此外,一个TUXEDO应用系统可以部署在一台服务器上,也可以部署在多台服务器上。SERVER:

服务端程序用C或COBAL编写,每一个程序文件编译成一个相应可执行文件,该可执行文件在运行时称为SERVER,它实际上就是一个进程。每个SERVER都有一个名字,也就是该进程的名字。为与TUXEDO应用系统的服务端区分,我们在本书中,我们用SERVER表示该进程,用服务端表示TUXEDO应用系统的服务端。

SERVICE:

在每个服务端程序中,主要是一个个的函数,在TUXEDO中称这些函数为SERVICE,一般

也称之为服务。在该SERVICE中实现业务逻辑,在客户端中调用这些SERVICE来实现各

种操作,如在前面的例子simpapp中,服务端程序为simpserv.c,它编译成可执行文件simperv, simpserv就是一个SERVER,该SERVER包括SERVICE:TOUPPER。

下面我们给出一个配置文件的例子:

*RESOURCES

IPCKEY 123456

MASTER simple

UID 0

GID 0

PERM 0666

MAXACCESSERS 100

DOMAINID simpapp

MODEL SHM

LDBAL Y

SCANUNIT 10

SANITYSCAN 12

BLOCKTIME 6

NOTIFY DIPIN

MAXCONV 10

*MACHINES

"MYSYS" LMID="simple"

TUXCONFIG="d:\tuxdemo\pbdemo\tuxconfig"

TUXDIR="d:\tuxedo65"

APPDIR="d:\tuxdemo\pbdemo"

TLOGDEVICE="d:\tuxdemo\pbdemo\TLOG"

TLOGNAME="TLOG"

TLOGSIZE=100

MAXWSCLIENTS=5

CMPLIMIT="MAXLONG,MAXLONG"

NETLOAD=0

SPINCOUNT=0

MAXACLCACHE=100

*GROUPS

"GROUP1" LMID="simple" GRPNO=1

OPENINFO="Oracle_XA:Oracle_XA+Acc=P/scott/tiger+SesTm=600+MaxCur=5+L ogDir=."

TMSNAME="TMS_ORA8i"

TMSCOUNT=2

*SERVERS

DEFAULT:

CLOPT="-A"

"simpserv" SRVGRP="GROUP1" SRVID=1

CLOPT="-A"

RQADDR="simpserv"

RQPERM=0660 REPLYQ=Y RPPERM=0660 MIN=5 MAX=5 CONV=N

MAXGEN=1 GRACE=86400 RESTART=N

"WSL" SRVGRP="GROUP1" SRVID=1116

CLOPT="-A -- -n //MYSERVER:8888 -m 2 -M 5 -x 6"

*SERVICES

"TOUPPER"

LOAD=50 PRIO=50

BUFTYPE="ALL"

TRANTIME=30

AUTOTRAN=N

*ROUTING

各节之间的包含关系:

从上到下,是一对多的关系,即:一个TUXEDO系统可以跨越多台服务器,一台服务器上可以有多个GROUP,但一个GROUP只能在一台服务器上,一个GROUP中可以有多个SERVER,一个SERVER中可以有多个SERVICE。

下面我们分别对每个节种具体的常见配置进行说明,NETWORK,NETGROUP,ROUTING三节及其他比较高级的配置我们在后面的内容中说明

RESOURCES(必需):

该节是必须的,在这里配置与整个TUXEDO应用系统有关的信息,主要包括:

IPCKEY: TUXEDO使用它标识公告板及其他的IPC资源。它不能与该服务器上其他的IPC资源的ID号冲突范围:32,769-262,142

MASTER: 指定该TUXEDO应用系统的MASTER服务器,在该服务器上对整个TUXEDO系

统进行管理配置,可以为该MASTER服务器指定一台备份服务器,当该MASTER

服务器当机时,可从BACKUP服务器上进行管理。在进行系统迁移时,也要指定

BACKUP服务器。

DOMAINID:该TUXEDO应用系统的唯一标识

UID, GID, PERM:这三个参数控制对系统IPC资源的存取权限

UID: 可对该TUXEDO应用系统进行管理的TUXEDO系统管理员的用户ID,在UNIX下

就是UNIX系统的用户ID,默认为执行TMLOADCF的用户的ID。在NT下该设置

没有用,要设为0。

GID: 在UNIX下为UID中所指定的用户所在的组ID,在NT下该设置没有用,要设为0 PERM: 指定对TUXEDO系统IPC资源的存取权限。默认值为0666,即任何人都可以对该IPC 资源进行存取。

MAXACCESSERS,MAXSERVERS,MAXSERVICES:这三个参数控制该TUXEDO应用系统对IPC资源的使用情况。

MAXACCESSERS: 在本系统的一个节点(一台服务器)上,同时可以有多少个进程可以访问

该TUXEDO系统的公告板,默认值为50,它包括本地客户端进

程,SERVER进程,但不包括管理进程如:BBL,DBBL等

MAXSERVERS: 在本系统中,总共可以有多少个SERVER存在,包括进行管理的SERVER, 如:BBL,TMS等。默认值为50。

MAXSERVICES: 在本系统中,总共可以有多少个SEVICE存在, 默认值为100。

TUXEDO应用系统的部署方式:

一个TUXEDO应用系统可能部署在一台服务器上或多台服务器上,也可能是部署在共用一块全局共享内存的几台服务器上,可在MODEL,OPTIONAS中配置该TUXEDO应用系统的部署模式。

MODLE:

SHM: 单机或多台服务器但共用一个全局共享内存

MP: 多台服务器但没有共用一个全局共享内存

OPTION: LAN: 是多机(MP)部署模式

MIGRATE: 可对该系统进行迁移

TUXEDO的管理进程BBL定时对它所在的服务器上的TUXEDO系统进行检查,检查超时的事务,

超时的客户端连接等。

SCANUNIT: 指定检查的最小时间单位,它单位为秒,必须是5的倍数。默认值为10,即10 秒。

SANTIYSCAN: 每隔多少个SCANUNIT检查一次, SANITYSCAN*SCANUNIT不能大于300秒。默认值为12,即120秒

BLOCKTIME: 指定一个消息可以阻塞多长时间,如果过了SANITYSCAN*SCANUNIT秒该

消息还没有发送出去,将超时出错。SANITYSCAN*SCANUNIT不能大于

32767秒。默认值为6,即60秒。

同步调用的超时说明

对同步调用TPCALL,指从TPCALL()开始调用,到SERVER端的返回结果到到该客户端并写到输入缓冲区这一段时间。包括:

客户端开始调用TPCALL()

把数据通过网络发送到SERVER端

SERVER端的处理时间

SERVER端把处理结果通过网络返回给客户端

客户端TPCALL()调用返回

异步调用和会话方式的超时说明

对异步调用和会话方式,当一个进程调用TPACALL(),TPCONNECT(),TPSEND()时,超时时间只包括如果接收队列满时,这些调用的等待时间,如在TPACALL()中,所调用的SERVICE的接收队列如果满了,那么TPACALL()可阻塞在那里,直到该队列不满,可以接收该TPACALL()发送的请求。从TPACALL()开始阻塞到TPACALL()返回这段时间为它的超时时间。

对TPGETRPLY(),TPRECV()的超时时间是指如果要接收的队列为空时,它们应该阻塞在那里等待有消息到来的时间。

如:超时时间为60秒, 一点整调用TPGETRPLY()从接收的队列取消息,这时接收队列为空,如果到了一点零一分该接受队列还为空,那么TPGETRPLY()将超时出错。

LDBAL:要不要进行负载均衡,Y:要,N:不要,默认值为不要

MAXCONV: 在一台服务器上最多可以有多少个会话同时存在。范围:0-32768,默认值为10 NOTIFY : 设置消息的通知方式,有以下3种:默认为DIPIN

IGNORE: 该TUXEDO系统中的CLIENT不接收任何消息

SIGNAL: 用SIGUSR1,SIGUSR2信号通知CLIENT有消息到来,如果在非UNIX平台上设置采用该方式,那么会被自动转化为DIPIN方式。

DIPIN: 当CLIENT调用ATMI函数时,顺便检查看是否有消息,如果有就发送给该

CLIENT默认值为DIPIN

*MACHINES(必需):

该TUXEDO应用系统所包含的每台服务器都要在该节中进行配置

LMID:在TUXEDO,要为该应用系统中的每台服务器指定一个逻辑服务器名。如在上面的例子中,TUXEDO应用服务器MYSYS对应的逻辑服务器名为:simple,

TUXEDO应用服务器名的查看方法:

1. 在UNIX下用uname -n 查看SERVER的名字,

2. 在NT,WIN2000下用ECHO %COMPUTERNAME$查看SERVER的名字

注意:如果SERVER的名字太长(>8)或含有“.”等可以" "引起来,如: "https://www.360docs.net/doc/2c6305456.html," TUXCONFIG: 配置文件TUXCONFIG所在的路径

TUXDIR: TUXEDO的安装目录

APPDIR: TUXEDO应用系统所在的目录

注意:TUXCONFIG,TUXDIR,APPDIR的值要与它们在环境变量中的设置的值一样ENVFILE: 该服务器上与TUXEDO有关的环境变量(如FIELDTBLS等)可以放到一个文件中,在ENVFILE中指定该文件名。

TYPE: 指定该服务器的类型,当两台服务器的TYPE不一样时,在它们之间传送数据时要进行

编码/解码工作

ULOGPFX: 指定ULOG文件所在的目录及前缀。默认目录为$APPDIR,前缀为ULOG。UID,GID,PERM,MAXACCESSERS,MAXCONV这些在RESOURCES中的配置,在MACHINES中可以被重新配置,并且这些新的配置值会覆盖在RESOURCES中的配置值。

*GROUPS(必需):

在TUXEDO中,要对SERVER进行分组,配置GROUP主要有三个目的,

1.因为GROUP与数据库之间是一对一的关系,在一TUXEDO应用系统中,如果有多个数据库,就要配置多个GROUP,在该GROUP中配置TUXEDO与数据库的连接参数等。

2.数据依赖路由是以GROUP为单位的。

3.进行系统迁移时也时以GROUP为单位的一个GROUP有一个名字,还有一个GROUP ID,GROUP的名字和GROUP ID在一个TUXEDO系统中必须唯一。

每个GROUP要指定该GROUP所在的服务器,及它的ID号,如果该GROUP中的SERVER 要与数据库或其他的资源管理器相连,那么要在OPENINFO中设置连接的参数。具体的配置我们在讲数据库编程时再说明。

*SERVERS:

该系统所包含的所有的SERVER都在该节进行配置。

在DEFAULT中的设置对所有的SERVER起作用。

SRVGRP: 该SERVER所在的GROUP

SRVID: 该SERVER所对应的ID,在一个GROUP中必须唯一

MIN: 该SERVER最少启动的进程数

MAX: 该SERVER最多可启动的进程数

RESTART,RCMD,MAXGEN,GRACE: 在TUXEDO系统了,当一个SERVER进程因某中原因死掉时,可设置它可以自动重起,这4个参数指定TUXEDO的重起信息。

RESTART 该进程死掉时是否可以自动重起,默认为N(不可以)

GRACE,MAXGEN:在GRACE秒内,该进程最多可以重启MAXGEN次。

RCMD:指定该SERVER重启时,要执行的一个可执行文件名

注意:

1.为了使一个SERVER可以自动重起,光设置了RESTART=Y还不够,还要设置

GRACE,MAXGEN才能在该SERVER死掉时,自动重起,

2.该SERVER能够被自动重起的一个前提条件时它还没有被从BULLITION BOARD中清除。

例子:

test SRVGRP=GROUP1 SRVID=1 RESTART=Y GRACE=100000 MAXGEN=255

该设置指定在100000秒的时间内,SERVER进程:test可以启动255次。

在缺省情况下,TUXEDEO的每一个SERVER对应一个请求队列,该SERVER从该请求队列中取客户端发来的请求,并把处理的结果通过该请求队列返回给客户端,TUXEDO的SERVER 可以配置成多个SERVER对应一个请求队列,即MSSQ方式,以提高响应的速度。

与MSSQ有关的参数是:

RQADDR:该请求队列的名字,一般设成与该SERVER的名字一样

RAPERM:该请求队列的存取权限,默认为0666

REPLYQ:该SERVER中的某个SERVICE调用其他的SERVICE,并有返回结果,则应设置REPLYQ=Y,即把其他SERVICE的应答放到该队列中

CONV: 该SERVER是否采用会话(CONVERSATION)通讯方式,注意采用会话通讯方式的SERVICE要单独在一个SERVER中,不能与采用其他通讯方式的SERVICE在同一个SERVER 中,并且该SERVER要设置CONV=Y

CLOPT: 指定该SERVER的启动参数。默认为-A,即再该SERVER启动时,发布该SERVER 包含的所有的SERVICE。通用的有:

-e: 指定错误输出文件,默认为$APPDIR下的stderr

-o: 指定标准输出文件,默认为$APPDIR下的stdout

-r: 记录该SERVER中SERVICE每次调用的处理时间,并记录在错误输出文件中,然后可采用TUXEDO的性能分析工具txrpt对该SERVER进行性能分析。

-A: 发布该SERVER包含的所有的SERVICE

*SERVICES:

在SERVICES中可针对每个SERVICE进行配置,主要有:

AUTOTRAN: 调用该SERVICE时是否自动启一个全局事务。默认为N

LOAD:如果采用负载均衡,指定该SERVICE的负载因子,默认为50

PRIO: 指定该SERVICE的优先级,默认为50

DDR: 指定数据依赖路由规则

与远程客户端有关的配置:

1.在MACHINES中要配置MAXWSCLIENTS,即最多可以有多少个远程客户端同时连接

到该服务器上,在上面的例子中为5个

2.在SERVERS中要配置SERVER:WSL

WSL SRVGRP="GROUP1" SRVID=1116 CLOPT="-A -- -n //192.168.120.113:8888 -m 2 -M 5 -x 6"

说明:

-n //192.168.120.113:8888: 远程客户端通过该端口与服务器建立连接

-m 2 :最少启动多少个WSH进程

-M 5::最多启动多少个WSH进程,默认值为MAXWSCLIENTS/m

-x 6:每个WSH进程可同时处理多少个远程客户端

3.程客户端所在的服务器上要配置WSNADDR环境变量,它的值为-n参数的值,如在上面的配置中为:

SET WSNADDR= //192.168.120.113:8888

配置文件UBBCONFIG的编译:

用下面的命令进行编译:

tmloadcf –y UBBCONFIG文件名

如:下面的命令编译名为ubbsimple的TUXEDO配置文件,生成二进制的配置文件TUXCONFIG

tmloadcf –y ubbsimple

有时候在改变了TUXCONFIG的目录后,执行tmloadcf,会出现类似下面的错误,可把原来的TUXCONFIG文件删除,然后再编译。

D:\simpdb>tmloadcf -y ubb

CMDTUX_CAT:1601: ERROR: TUXCONFIG,TUXOFFSET d:\simpdb\tuxconfig 0 doesn't match first device entry on configuration d:\tuxdemo\simpdb\tuxconfig 0 D:\simpdb>del tuxconfig

D:\simpdb>tmloadcf -y ubb

D:\simpdb>

用tmunloadcf命令可对二进制的配置文件TUXCONFIG的进行反编译

如下面的命令反编译TUXCONFIG,并把结果输出到文件myubb中。通过反编译TUXCONFIG 可查看该TUXEDO应用系统的一些属性默认值。

Tmunloadcf >myubb

3.2 多机(MP)模式的配置

一个TUXEDO应用系统可以部署在多台服务器上,这些服务器通过网络连接,这种部署方式称为MP方式,在这些服务器中要选择一台服务器做MASTER服务器,在该服务器上有一个DBBL 进程,负责整个TUXEDO应用系统的管理工作。在每台服务器上都有一个BBL进程,它与DBBL 进程进行通信,管理各自服务器上的配置。每台服务器上还有一个名为BRIDGE的进程和一个名为TLISTEN的进程,他们负责服务器之间的通讯。MP模式的结构如图:

如果配置了MP方式,那么在这些服务器之间可以做负载均衡和容错,客户端可以和其中的任何一台服务器建立连接,如果该服务器上没有该客户端所要调用的服务(SERVICE),TUXEDO 可以自动把请求发送到别的有该服务的机器取处理,并把结果返回个客户端,如图,SITE1上的客户端调用了TRANSFER,当在SITE1上没有该SERVICE,在SITE3上有,

那么SITE1通过BRIDGE把请求发送到SITE3上,SITE3把处理结果也通过BRIDGE发送到SITE1上,通过SITE1把结果返回给该客户端。这些对客户端时透明的。

如果SITE1,STIE2,SITE3上都有TRANSFER,并且设置了负载均衡(LDBAL =Y),那么TUXEDO将根据他们的负载情况把请求发送到负载较小的服务器上。

如果SITE1,SITE2,SITE3中的某一台或两台服务器出故障了,那么正常的机器仍然能够继续运行,如果时他们之间的网络连接断了,BRIDGE进程会自动进行重试,并且在这些服务器之间可以配置多个网络连接通路,当其中的一个出现故障时,会自动采用别的连接通路。

所以MP方式提供了一个高可靠性的分布式应用系统。

配置成MP方式的步骤:

1. 这些服务器之间可以通过网络互相访问

2. 在每台服务器上都正确安装了TUXEDO SERVER

3. 应用已发布到这些服务器上

4. 选择一台服务器做MASTER机,

6. 在RESOURCES,MACHINES,NETWORK,NETGROUPS中做相应的配置RESOURCE:

MODEL要设为MP

OPTIONS中要有LAN

MASTER服务器上的DBBL负责与其他服务器上的服务器BBL进行通讯,

BBLQUERY: 每台服务器上的BBL每隔SCANUNIT*BBLQUERY秒,向MASTER机上的DBBL发送一次状态信息。默认为300秒

DBBLWAIT: 如果MASTER机没有收到某台服务器发送的状态信息,它将等待

SCANUNIT*DBBLWAIT秒,如果还没有收到该服务器发送的状态信息,这台服务

器将被分离出去(PARTITIONED),默认为20秒

MACHIENS:

在MACHINES中要配置该TUXEDO应用系统包括的每台服务器,如果该服务器时UNIX服务器,那么要配置UID,GID,UID,GID为TUXEDO用户所对应的UID,GID,在UNIX下可以用ID命令查看。

NETWORK:

在该节中配置服务器之间通讯的IP地址及BRIDGE进程,

在一个MP方式的TUXEDO应用系统中,不同的服务器之间通过BRIDGE进程进行通讯,该BRIDGE的侦听IP地址及端口

在NADDR中指定。如果是在UNIX下要指定该BRIDGE所用的网络设备,如果是在NT下则不要。

在TUXEDO系统启动前,不同服务器之间的通讯是通过tlisten进程来进行的,因为这时还没有BRIDGE进程。

NLSADDR为tlisten进程侦听的IP地址及端口。

一个MP方式的配置例子。

环境:WIN2000服务器一台,安装TUXEDO6.5, 服务器名WIN,IP地址:10.13.1.124 SUN5.8服务器一台,安装TUXEDO6.5, 服务器名SUN,IP地址:12.22.32.35 MASTER机为WIN2000服务器,BACKUP机为SUN。

在WIN2000服务器上的UBBCONFIG的内容如下,在SUN服务器上不用编写UBBCONFIG 文件。当启动时DBBL会自动

把WIN2000服务器上的TUXCONFIG文件发送到SUN服务器上。

*RESOURCES

IPCKEY 87656

MASTER site1,site2

MAXACCESSERS 40

MAXSERVERS 40

MAXSERVICES 40

MODEL MP

OPTIONS LAN

*MACHINES

WIN LMID=site1

APPDIR="d:\tuxdemo\mp"

TUXCONFIG="d:\tuxdemo\mp\tuxconfig"

TYPE="win2000"

TUXDIR="d:\tuxedo65"

SUN LMID=site2

UID=1006

GID=30

APPDIR="/export/home/simpapp"

TUXCONFIG="/export/home/simpapp/tuxconfig"

TYPE="sun"

TUXDIR="/export/home/tuxedo"

*GROUPS

GROUP1

LMID=site1 GRPNO=1 OPENINFO=NONE

GROUP2

LMID=site2 GRPNO=2 OPENINFO=NONE

*NETWORK

site1 NADDR="//10.13.1.124:6000"

NLSADDR="//10.13.1.124:6001"

site2 NADDR="//12.22.32.35:6000"

NLSADDR="//12.22.32.35:6001"

BRIDGE="/dev/tcp"

*SERVERS

DEFAULT:

CLOPT="-A"

simpserv SRVGRP=GROUP2 SRVID=3

*SERVICES

TOUPPER

1. 在WIN2000服务器上把该UBBCONFIG编译成TUXCONFIG

tmloadcf -y ubbmp

2. 在WIN2000服务器上启动tlisten进程

tlisten -l //10.13.1.124:6001

3. 在SUN服务器上启动tlisten进程

tlisten -d /dev/tcp -l /12.22.32.35:6001

4. 在WIN2000服务器上启动该TUXEDO应用系统

tmboot -y

TUXEDO会先启动WIN2000服务器上的进程,然后再启动SUN服务器上的进程。

5. 在WIN2000服务器上执行

simpcl mp test

因为WIN2000服务器上没有TOUPPER服务,TUXEDO会自动调用SUN服务器上的TOUPPER服务,并把结果返回给客户端,这一切对客户端来说是透明的。

birt报表技巧

Birt中的分页显示报表: 方法如下: 1、将鼠标停在表格上,选择明细数据行(Row Detail) 。 2、选择脚本(script)标签,在onPrepare方法中加入: count=0; 在onCreate方法中加入: count++; if(count % 10==0) { this.getStyle().pageBreakAfter="always"; } 然后放到服务器上运行,则实现分页显示。 Birt中报表参数的用法(一) Birt中有两种参数,一种是数据集参数,一种是报表参数。数据集参数一般是用于select语句中的?所代表的参数的。而报表参数一直则是整个报表的参数,定义它的目的一方面是和数据集参数绑定,一方面是在脚本中使用它。例如:我想设计一个报表,通过参数传递一个数据库中的表名,显示相应表中的数据,所有的表的结构一样!做法如下: 先定义数据源;然后定义数据集,查询选项中的语句写select * from [要传入的表名中的任意一个];然后定义一个报表参数table,设置一个默认值(默认表名);然后再数据集的脚本的beforeOpen方法中加入:this.queryText="select * from "+params["table"]; ;完成。 如何在Tomcat中配置使得能显示Birt Chart报表: 今天看了一本关于Birt方面的书,提到了在Tomcat中成功部署Birt的方法。我试了一下,果然可以,即可访问普通报表,又可访问chart报表,而且方法也比较简单。现介绍如下: 1、从网上下载birt-runtime-version.zip并解压 (https://www.360docs.net/doc/2c6305456.html,/birt/downloads/build.php?build=R-R1-2_1_3-200707051847)。 2、将解压后根目录中的WebViewerExample文件加复制到Tomcat根目录下的webapps 下面,并更名为birt_viewer2.2(因为我下的是2.2版本) 3、复制第三方软件:iText.jar(复制到 birt_viewer2.2\WEB-INF\platform\plugins\com.lowagie.itext_1.5.2.v20070626\lib 下)

Tuxedo日常监控维护培训-v1-0

Tuxedo日常监控维护培训手册 (V1.0)

修订记录

目录 1.引言 (1) 1.1. 编写目的 (1) 1.2. 参考资料 (1) 2.tuxedo常用操作 (1) 2.1. tuxedo服务的正常启动和停止. (1) 2.2. 查看tuxedo的版本信息 (2) 2.3. tmadmin控制台进入和退出: (2) 2.4. 查看服务信息psr (3) 2.5. 查看交易信息psc (4) 2.6. 查看队列信息pq (5) 2.7. 查看客户端信息pclt (5) 2.8. 查看部分统计信息bbs (6) 2.9. 设置为观察某个节点的进程信息default (6) 2.10. 查看消息发送状态pnw (7) 2.11. dmadmin域控制台的进入和退出: (7) 2.12. 手动连接域 (8) 2.13. 查看域网关的连接情况 (8) 3.tuxedo日常维护 (8) 3.1. 对ubb文件只做语法检查(不真正的load成TUXCONFIG) (8) 3.2. 对dm文件只做语法检查(不真正的load成DMXCONFIG) (9) 3.3. 反编译tuxconfig 文件和dmxconfig文件 (9) 3.4. 如何清除IPC资源 (9) 3.5. sh命令直接执行tuxedo操作 (9) 3.6. 启动tlisten服务 (9) 3.7. 启动多机中备机的BBL (9) 4.tuxedo注意事项、常见问题及解决方法 (10) 4.1. WSL配置参数注意 (10) 4.2. UBB文件中MAX的配置注意 (10) 4.3. tuxedo WS 的配置注意 (10) 4.4. Can’t attach BBL (10) 4.5. 运行一段时间交易失败 (11) 4.6. 常见Tuxedo错误号 (11)

birt报表修改表格宽度的学习总结

修改birt报表的表格宽度的学习总结 一、原因 Birt做的报表表格宽度是根据表格里面的内容自动显示宽度,每列的宽度是与表头(header的label)或者表body(detail的data)里面内容最多的一格的宽度一致,有时候表头里面文字很长,但是该表头的那一列表body里面的内容却很少,就照成了除表头以外,body下面每一格特别的空,这样的列若是比较多的话表格就很不好看,而且浪费空间,以我碰到的问题为例,如图: 这个报表分为两部分,前一部分是直接用报表设计器设计的,表头是居顶的,后一部分是用代码加上去的,表头居中,而且他的内容全是数字,相对来说比较少,感觉空的地方很多,看上去不美观。 二、试着调试 由于网上资料比较少,我自己调试时都是自己摸索的,可能有些地方不是很简洁,但是效果还是出来了。 (1)、首先调整直接用报表设计器设计的报表,可以有两种方法调试, 1.第一种是手工代码调试:xml resource 先调整表头,所以在

下面的你想设计宽高的那一列下面,添加属性,根据里面的内容设计宽和高,这里我设计的是宽1.5cm,高0.7cm,注意是在label下面添加设置语句,: 0.7cm 1.5cm

如图:

点击table,然后选中你想要调整的那一行或者那一列,打开属性编辑器(birt 高级版本可以右击哪一行或者列直接打开,低版本的需要点击eclipse左下角的 下面的属性版本 ) 想要修改那一行或者列的宽或者高时,先以调整列宽为例,选中一列,在属 里面, 调整行高度跟列宽度类似,这里就不写出来了。 (2)调整由代码插入进来的行宽列高 这个就比较简单,在插入列以及header下直接写代码 MyLable.setWidth(“1.5”); myLabel.setHeight("0.7cm"); myDataItem2.setHeight("0.3cm"); myDataItem2.setWidth("1.5cm");

TUXEDO简介及命令介绍

Tuxedo是一个客户机/服务器的―中间件‖产品,它在客户机和服务器之间进行调节,以保证正确地处理事务。Tuxedo是一个事务处理(TP)监督器,它管理联机事务处理(OLTP)系统(参见―事务处理‖)操作的事务。客户通过结构化查询语言(SQL)调用,或其它类型的请求,产生对服务器的请求。这个事务处理监督器确信,正确地进行了修改,以保证数据的完整性。这在一个事务可以改变多个位置的数据库的分布式数据库环境是非常重要的。这个事务处理监督器使用双阶段提交,以保证所有的数据库都已经接收和认可了这些数据的正确性。否则,这个数据库返回它的事务前状态。 事务监督器从前都是与大的大型计算机系统联系在一起的,但是Tuxedo的设计是为了在不昂贵的基于UNIX的系统上运行。AT&T最初是作为它自己使用的联机事务处理开发Tuxedo的。虽然Tuxedo必须在U-NIX系统上运行,但是它可以与DOS、OS/2、Windows和UNIX客户一起工作。它还使用通用的通信协议,如传输控制协议/因特网协议(TCP/IP)和网络基本输入输出系统(NetBIOS),并且可以在这些环境提供分布式处理支持。例如,它可以根据请求的类型,服务请求从一个客户选择路由到一个特定的服务器。Tuxedo的基本特征是它的联机事务处理系统,但是,Tuxedo也工作于集成关系型的平面文件,以及层次数据库系统。 相关条目:Connectionless and Connection-Oriented Transactions无连接和面向连接事务;Transaction Processing 事务处理。 Tuxedo作为电子商务交易平台,它允许客户机和服务器参与一个涉及多个数据库协调更新的交易, 并能够确保数据的完整性。BEA Tuxedo一个特色功能是能够保证对电子商务应用系统的不间断访问。 它可以对系统组件进行持续的监视,查看是否有应用系统、交易、网络及硬件的故障。 一旦出现故障,BEA Tuxedo会从逻辑上把故障组件排除,然后进行必要的恢复性步骤。 BEA Tuxedo根据系统的负载指示,自动开启和关闭应用服务,可以均衡所有可用系统的负载, 以满足对应用系统的高强度使用需求。借助DDR(数据依赖路由), BEA Tuxedo可按照消息的上下文来选择消息路由。其交易队列功能, 可使分布式应用系统以异步―少连接‖方式协同工作。 BEA Tuxedo LLE安全机制可确保用户数据的保密性, 应用/交易管理接口(ATMI)为50多种硬件平台和操作系统提供了一致的应用编程接口。 BEA Tuxedo基于网络的图形界面管理可以简化对电子商务的管理, 为建立和部署电子商务应用系统提供了端到端的电子商务交易平台。

通过wtc使tuxedo与weblogic通信开发

标题:通过wtc、jolt进行tuxedo与weblogic通信开发 [评论] 作者:李振嘉(dev2dev ID:lizhenjia) (一)摘要 bea tuxedo与weblogic作为业界优秀的交易与应用服务器中间件产品,在电信,银行,金融等领域广泛应用,通常由tuxedo处理系统的核心业务,weblogic将业务应用扩展到internet平台,实现电子商务,由weblogic调用tuxedo的服务或者由tuxedo的服务调用通过weblogic部署的ejb,所以tuxedo与weblogic 之间的互连通信会经常遇到,本文通过2个例子介绍tuxedo与weblogic通信的配置与开发,两个例子分别通过wtc(weblogic tuxedo connector)、jolt实现weblogic与tuxedo通信的配置与开发.本文所有例子程序与配置均在Sun Solaris,weblogic8.1,tuxedo8.0平台上进行,如在windows等其他平台开发配置方法大同小异;另外为了减少篇幅文中涉及的例子代码没有全部罗列,只选择粘贴了关键部分的代码. (二)通过wtc进行tuxedo与weblogic通信的配置与开发 1)域间通信以及wtc介绍 Tuxedo的域间通信进程介绍 Wtc是tuxedo通过域间通信实现的,所以需要tuxedo启动用于域间通信的进程,介绍wtc之前先介绍以下几个域间通信的进程. *DMADM(DOMAIN ADMINISTRATOR SERVER) 管理域的server,在运行时管理BDMCONFIG,对已登记的gateway group提供支持,在tuxedo系统中,只能有一个DMADM进程,且不能对它采用MSSQ,不能有REPLYQ. *GWADM(GATEWAY ADMINISTRATOR SERVER)

tuxedo基本操作atmi介绍

系统自带authsvr服务进程,和两个子例程,tpsvrinit(),tpsvrdone。 authsvr:客户端调用tpinit进行认证时,由交易TPAPPAUTH回应。 服务端自动调用tpsvrinit,可以在函数中进行数据库连接和处理命令行参数。 结束时tpsvrdone也被自动调用,可以在函数中断开数据库连接。 这两个例程分别在进程开始时和进程将要结束时,被自动调用。 服务端编程指导: 交易内一次只能接收一个请求,发送一个响应。 交易必须以tpretrurn, tpforward结束。 或交易内使用了tpacall,在返回或转发前,要么等待回应,要么使用tpcancel。 tpreturn一旦被调用,控制权就转移到main函数,未进行显示收取的响应会被丢弃,此时客户端会收到错误。 客户端调用tpcall后,若服务端此时对应的tpreturn成功返回,客户端tpcall才能返回。 客户端调用tpacall后,若服务端此时对应的tpreturn成功返回,客户端tpgetrply才能返回。返回的数据,可由客户端从指针*data处取得。 tpforward调用时,程序逻辑应保证之前的处理都正确,响应被收到。被调用后,交易不再等待响应。main函数取得控制权。被请求的另一个交易负责响应原来的请求。不能将请求转发到自身。 tpreturn 的参数: rval: 表明交易是否成功执行。 rcode:是应用自定义的返回值。客户端可通过tpurcode获得tpreturn的rcode值,而不论交易是否成功。 data: 该缓冲区由客户端传递,服务端可以将回应数据写至此地址。也可以进行tprealloc.而不能tpfree. 服务端也可以自行tpalloc一个缓冲区,并返回给缓冲区,但需要自行若管理。如果发送的数据长度大于已分配的,tuxedo会自动扩大缓冲。 len: 用来指示响应缓冲的长。客户端可据此得知数据是否有变化。 如果客户端需要收到一个响应,而tpreturn自身处理时出错,这时tpcall或tpgetrply会失败,客户端应检查tperrno. 此时客户端的data缓冲区没有变化。若交易返回的消息不符客户端要求,则无法判断应用状态,此时原来的缓冲区保持不变。如果交易超时,响应数据不会被发送。 发布与取消交易名: 当一个服务进程被启动后,它会根据配置文件来向公告板上广告自己有交易名。这通常由buildserver命令执行时完成。 tpcall:

Eclipse BIRT 简单报表开发

Eclipse BIRT 简单报表开发 帮助文档: https://www.360docs.net/doc/2c6305456.html,/documentation/BIRT_231/wwhelp/wwhimpl/js/html/wwhelp.htm 1新建报表: 1.1运行向导建立工程,如下图: 1.2选择新建的工程,如下图:

1.3建立报表文件,如下图

这里选中Report templates:Blank Report

已经完成建立报表文件。 2连接数据库 2.1建立Data Source 这里我们会连接SQL Server 2005的示例数据库:AdventureWorks ●请确认已经安装这个示例数据库 ●请确认Sql server 2005已经打开TCP/IP连接,如下图: 打开建立Data Source向导,如下图:

这里要注意如果刚安装的Eclipse BIRT是没有(如下图): Com.microsoft.sqlserver.jdbc.SQLServerDriver (v1.2) 下载地址: https://www.360docs.net/doc/2c6305456.html,/download/8/B/D/8BDABAE2-B6EA-41D4-B903-7916EF36 90EF/sqljdbc_1.2.2323.101_enu.exe 安装方法: ●把文件解压 ●Manage Drivers ●Add-> 选中解压出来的文件:sqljdbc.jar ●添加成功 连接串:jdbc:sqlserver://localhost:1433;databasename=AdventureWorks

TUXEDO配置参数详解

TUXEDO配置参数详解 2007-07-10 09:39:47 大中小 TUXEDO应用系统的配置 3.1 TUXEDO应用系统的常见配置 配置文件UBBCONFIG介绍 一个TUXEDO应用系统的所有资源都在一个文本文件中进行定义,该文件称为UBBCONFIG,在配置完成后,UBBCONFIG被编译成一个二进制的文件TUXCONFIG.在TUXEDO系统启动时,从该文件中读取系统的配置信息。UBBCONFIG文件类似WINDOWS下的*.INI文件。它包括以下9大部分, 我们称之为节,RESOURCES,MACHIENS,GROUPS 这三个节必须的,其他的节是可选的。 RESOURCES(必需): 与整个系统有关的配置信息 MACHINES(必需): 一个TUXEDO应用系统可以跨越多台服务器,在该节中配置与每台服务 器有关的信息 GROUPS(必需): TUXEDO中的服务可被分为多个组,在该节中配置与组有关的信息SERVERS(可选): 与SERVER有关的信息在该节配置 SERVICES(可选): 与SERVICES有关的信息在该节配置 NETWORK(可选):与网络有关的信息在该节配置 ROUTING(可选) :路由规则在该节配置 NETGROUPS(可选):与网络分组有关的信息在该节配置 名称解释: TUXEDO应用系统 一个TUXEDO应用系统包括服务端,客户端,服务端安装在服务器上,客户端一般安装在PC 机上,从开发角度看,一个TUXEDO应用系统包括服务端程序,客户端程序,一个配置文件。此外,一个TUXEDO应用系统可以部署在一台服务器上,也可以部署在多台服务器上。SERVER: 服务端程序用C或COBAL编写,每一个程序文件编译成一个相应可执行文件,该可执行文件在运行时称为SERVER,它实际上就是一个进程。每个SERVER都有一个名字,也就是该进程的名字。为与TUXEDO应用系统的服务端区分,我们在本书中,我们用SERVER表示该进程,用服务端表示TUXEDO应用系统的服务端。 SERVICE: 在每个服务端程序中,主要是一个个的函数,在TUXEDO中称这些函数为SERVICE,一般 也称之为服务。在该SERVICE中实现业务逻辑,在客户端中调用这些SERVICE来实现各 种操作,如在前面的例子simpapp中,服务端程序为simpserv.c,它编译成可执行文件simperv, simpserv就是一个SERVER,该SERVER包括SERVICE:TOUPPER。 下面我们给出一个配置文件的例子: *RESOURCES IPCKEY 123456 MASTER simple UID 0 GID 0 PERM 0666

birt报表使用简要说明

Birt报表使用指南 1Birt的安装方法 把birt整合到了Myeclipse6.5中,(eclipse的官方网站上提供有一个birt-report-designer-all-in-one-2_2_2.zip,你直接解压缩这个就可以了,就免去了birt与Myeclipse6.5的整合)。 如果要把birt安装到Myeclipse6.5中,要注意一些事情 1.1eclipse的版本 就是说你的eclipse版本要和适当的birt版本配合,当前birt的最新稳定版是birt2.3。 如果使用的是eclipse3.3版本,你应该用birt-report-framework-2_2_2.zip,如果使用的是eclipse3.4,你应该用birt-report-framework-2_3_0.zip版本不一致会出一些问题。 1.2在Myeclipse6.5中装birt。 MyEclipse6.5自带的是eclipse3.3,所以只能下载birt-report-framework-2_2_2.zip (下载地址:https://www.360docs.net/doc/2c6305456.html,/birt/downloads/index2.2.2.php) 而birt-report-framework-2_3_0.zip是针对eclipse3.4的。 把下载下来的birt-report-framework-2_2_2.zip包解压,解压后的features文件夹下的所有文件拷贝到MyEclipse6.5安装目录下的..\myeclipse\eclipse\features 下,解压后的plugins文件夹下的所有文件拷贝到..\myeclipse\eclipse\plugins下。 重新启动MyEclipse就好了。

TUXEDO管理配置中文说明new

Tuxedo的配置管理简要说明 Tuxedo的配置管理简要说明 (1) 一、Tuxedo基本命令 (2) 二、UBB文件配置说明 (3) 三、数据库XA设置 (8) 3.1 ORACLE XA (8) 四、Tuxedo多机方式配置要点 (9) 4.1启动tlisten (9) 4.2 ubb文件配置 (9) 4.3管理 (10) 五、用JOLT连接Tuxedo和Weblogic (11) 5.1在Tuxedo上安装、配置JOLT Server (11) 5.2 配置Weblogic Server 6.x (12) 5.3 Example setup (12) 六、TUXEDO动态配置 (13) 6.1 用tmadmin修改配置 (13) 6.2 用tmconfig更改TUXCONFIG(UBBCONFIG) (13)

一、Tuxedo基本命令 #1.设臵环境变量TUXDIR,APPDIR,TUXCONFIG,LANG(跟OS相关),LD_LIBRARY_PATH(跟OS相关) #2.编译ubb文本生成二进制配臵文件:tmloadcf –y ubbconfig #3.所有机器上运行tlisten,具体见文档中NETWORK一节 #4.启动tmboot –y #5.关闭tmshutdown –y 参数: -A 在所有机器上启动/关闭管理的Server进程 -M 只在MASTER机器上启动/关闭管理的Server进程 -i srvid启动/关闭某个server id指定的Server进程 -g grpname 启动/关闭某个server group名字指定的Server Group -S启动/关闭所有应用服务器(LMID) -s server-name启动/关闭某个server名字指定的Server进程 -l lmid option 在指定的机器上启动/关闭所有TMS进程和应用服务器(LMID) -T grpname 启动/关闭指定的server group中所有的TMS进程 -B lmid在指定的机器上启动/关闭BBL进程 -e command 指定一个程序可以当在MASTER机器上启动任何一个进程失败时执行 -c计算出当前UBB配臵的Tuxedo启动最少要占用的系统IPC资源 #用tmunloadcf > generated.ubb 可以得出目前配臵得UBB文件所有得参数值(没有设臵的有缺省值) #用tmloadcf –c或tmboot –c可以计算出当前UBB配臵的Tuxedo启动最少要占 用的系统IPC资源。

BIRT报表参数详解

在使用birt报表的时候感觉页面的BIRT Report Viewer头标题没有用,想去掉在网上一查原来有详细的参数设置,看来birt的功能还是很强大啊。现在转帖如下: BIRT作为一款功能强大的开源报表工具,其版本的升级更新速度也非常快,从1.0到2.0,一直到最新的2.2.1版本,无论从功能上还是性能上都得到了极大的提高和扩充。BIRT也提供了一个标准的J2EE实现组件,可以发布到支持J2EE应用的web server服务器上,可以对生成的报表进行预览等操作。在大家使用BIRT Viewer的时候,可能会对它日益纷繁的参数设置如云里雾里,在网上论坛里也有很多人碰到这样哪样的问题,同时官方的文档也不细致不全。所以我就对这些参数进行了一个简单系统的总结,希望能对大家的BIRT开发有所帮助。这些参数以2.2.1版本为准,请大家特别注意。 1.Servlet模式说明 查看BIRT Viewer自带的web.xml文件,可以看到有以下几个pattern: frameset----采用Ajax框架,可以显示工具条,导航条和TOC面板,实现复杂的操作,如分页处理,导出数据,导出报表,打印等等。该模式下会自动生成report document文件(预览report design文件)到特定的目录(用户可以用参数指定,也可以定义在web.xml里)。采用Ajax,速度较慢。 run----也采用Ajax框架,但不实现frameset的复杂功能,不会生成临时的report document 文件(预览report design文件),也不支持分页,这个主要是应用在BIRT Designer里的preview tab里,可以支持cancel操作,其它不怎么常用。采用Ajax,速度较慢。 preview---没有用到Ajax框架,直接调用底层Engine API对报表进行render,把生成的报表内容直接输出到浏览器。这种模式和run模式调用的是相同的Engine API,唯一区别在于run采用Ajax获取报表内容,而preview直接输出到浏览器。如果要支持分页,用户需要在URL上定义__page和__pagerange参数,这两个参数也会在后面详细说明。需要特别说明的是,在这几种预览模式中,preview的速度是最快的。 document---该模式主要是为了从report design文件生成report document文件。用户可以在URL上提定document文件生成存放的路径(存放在server端),如果未指定,会直接生成rptdocument发送到客户端浏览器,用户可以下载到客户端。 output---该模式类似于frameset,会自动生成report document文件(预览report design 文件),区别在于output不采用Ajax,而是将生成的报表内容直接输出到浏览器。 parameter---该模式主要用于生成一个参数对话框,一般用户不常用,用户可以直接通过提供的JSP Tag--parameterPage去实现参数对话框,不需要直接调用。 download---用于导出报表数据为CSV格式,当你使用frameset工具条里的导出数据功能时,会用到这个模式。 2.web.xml里的参数设置 web.xml文件里有许多参数,用户应该根据自已的需求出发对这些参数有一个深入的了解。

birt配置参数详解

BIRT参数设置详解 2010-08-25 16:30 在使用birt报表的时候感觉页面的 BIRT Report Viewer头标题没有用,想去掉在网上一查原来有详细的参数设置,看来birt的功能还是很强大啊。现在转帖如下: BIRT作为一款功能强大的开源报表工具,其版本的升级更新速度也非常快,从1.0到2.0,一直到最新的2.2.1版本,无论从功能上还是性能上都得到了极大的提高和扩充。BIRT也提供了一个标准的J2EE实现组件,可以发布到支持J2EE 应用的web server服务器上,可以对生成的报表进行预览等操作。在大家使用BIRT Viewer的时候,可能会对它日益纷繁的参数设置如云里雾里,在网上论坛里也有很多人碰到这样哪样的问题,同时官方的文档也不细致不全。所以我就对这些参数进行了一个简单系统的总结,希望能对大家的BIRT开发有所帮助。这些参数以2.2.1版本为准,请大家特别注意。 1. Servlet模式说明 查看BIRT Viewer自带的web.xml文件,可以看到有以下几个pattern: frameset ---- 采用Ajax框架,可以显示工具条,导航条和TOC面板,实现复杂的操作,如分页处理,导出数据,导出报表,打印等等。该模式下会自动生成report document文件(预览report design文件)到特定的目录(用户可以用参数指定,也可以定义在web.xml里)。采用Ajax,速度较慢。 run ---- 也采用Ajax框架,但不实现frameset的复杂功能,不会生成临时的report document文件(预览report design文件),也不支持分页,这个主要是应用在BIRT Designer里的preview tab里,可以支持cancel操作,其它不怎么常用。采用Ajax,速度较慢。 preview --- 没有用到Ajax框架,直接调用底层Engine API对报表进行render,把生成的报表内容直接输出到浏览器。这种模式和run模式调用的是相同的Engine API,唯一区别在于run采用Ajax获取报表内容,而preview直接输出到浏览器。如果要支持分页,用户需要在URL上定义__page和 __pagerange参数,这两个参数也会在后面详细说明。需要特别说明的是,在这几种预览模式中,preview的速度是最快的。 document --- 该模式主要是为了从report design文件生成report document 文件。用户可以在URL上提定document文件生成存放的路径(存放在server端),如果未指定,会直接生成 rptdocument发送到客户端浏览器,用户可以下载到客户端。 output --- 该模式类似于frameset,会自动生成report document文件(预览report design文件),区别在于output不采用Ajax,而是将生成的报表内容直接输出到浏览器。

TUXEDO与WEBLOGIC通过WTC进行互连的配置

TUXEDO与WEBLOGIC通过WTC进行互连的配置BEA公司的TUXEDO,WEBLOGIC作为最优秀的中间件产品,在银行、电信、金融等行业广泛使用,通常采用TUXEDO实现系统的核心业务,用WEBLOGIC做为系统扩展到INTERNET的平台,实现电子商务,由WEBLOGIC调用TUXEDO上的服务,所以TUXEDO 与WEBLOGIC之间的互连经常遇到。下面通过一个例子介绍TUXEDO与WEBLOGIC通过WTC进行连接的配置方法。 WEBLOGIC与TUXEDO的互连有两中方式,通过JOLT或通过WTC(WEBLOGIC TUXEDO CONNECTOR)。它们都是BEA的产品,WTC不仅能让WEBLOGIC调用TUXEDO中的SERVICE,而且能让TUXEDO调用WEBLOGIC中的EJB;而JOLT只能让WEBLOGIC调用TUXEDO. 但JOLT可以使TUXEDO与WEBSPERE等其他应用服务器相连,而WTC只能用于WEBLOGIC与TUXEDO之间进行互连。 一、WTC说明 (1)WEBLOIGIC5.1无法通过WTC与TUXEDO连接. (2)WEBLOGIC6.0与TUXEDO连接时,要安装WTC软件包. (3)WTC已集成在在EBLOGIC6.1中,只要配置一下就可以了,不用单独安装WTC软件包. (4)目前WTC只支持TUXEDO6.5,TUXEDO8.0两个版本,不支持TUXEDO7.1版本.

(5)目前WTC有两个版本, Windows版本支持2000/NT,UNIX为统一版本. (6)WTC可从http://commerce.bea .com/downloads/tuxedo.jsp 下载,目前的版本为1.0. 二、WTC安装过程 (1) WEBLOGIC与TUXEDO必须先安装好. (2)WTC要求在JAVA环境下安装,可在命令行下,运行weblogic 主目录下config/EXAMPLE/setEnv.sh(NT/2000 下为setenv.cmd)配置JAVA环境 (3)在DOS命令行下执行安装程序WTC_10_win.exe。按提示操作就可以. 注意:如果在WINDOW下安装,到COPY文件那一步时,不会执行,但提示安装成功,实际是假的。所以应在DOS命令行下安装. 三、WTC配置说明TUXEDO与WEBLOGIC之间通过DOMAIN方式实现互相调用,在这个例子中有两个DOMAIN:TUXEDO所在的DOMAIN名为TDOM1,WEBLOGIC所在的DOMAIN名为TDOM2。TDOM1上有TOUPPER它是一个TUXEDO SERVEICE,TDOM2上有TOLOWER它是一个EJB,下面以WTC安装带的例子simpapp(在WTC安装目录的examples/wtc/atmi/simpapp下)说明配置过程: TUXEO版本: TUXEDO65 WEBLOGIC版本:

叱咤风云tuxedo企业级运维实战如何用好全局事务

第9章如何用好全局事务 9.1 什么是全局事务 全局事务是由资源管理器管理和协调的事务,可以跨越多个数据库和进程。事务管理器一般使用XA二阶段提交协议与“企业信息系统(EIS)”或数据库进行交互。 也就是当一个事务需要跨越多个数据库时,需要使用全局事务。例如,一个事务中可能更新几个不同的数据库。对数据库的操作发生在系统的各处,但必须全部被提交或回滚。此时,一个数据库对自己内部所做操作的提交不仅依赖本身操作是否成功,还要依赖与全局事务相关的其他数据库的操作是否成功,如果任一数据库的任一操作失败,则参与此事务的所有数据库所做的所有操作都必须回滚。 在一个涉及多个数据库的全局事务中,为保证全局事务的完整性,由交易中间件控制数据库做两阶段提交是必要的。但典型的两阶段提交,对数据库来说事务从开始到结束(提交或回滚)时间相对较长,在事务处理期间数据库使用的资源(如逻辑日志、各种锁),直到事务结束时才会释放。因此,使用典型的两阶段提交相对来说会占用更多的资源,如果网络条件不好,如低速网、网络颠簸频繁,情况会更为严重。 9.2 本地事务的优缺点 本地事务容易使用,但也有明显的缺点:它们不能用于多个事务性资源。例如,使用JDBC连接事务管理的代码不能用于全局的JTA事务中。另一个缺点是局部事务趋向于侵入式的编程模型。 9.3 Tuxedo对事务的控制与管理 当客户端连接到Tuxedo并创建一个全局事务时,TM(Transaction Manager,事务管理器)就会在公告板(BB)里面创建一个事务,由TMS向GTT(Global Transaction Table,全局事务表,里面包含当前事务的状态信息)中插入一个条目,然后分配一个GTRID(Global Transaction Identifier,全局事务标识符)来对该事务进行跟踪。 Tuxedo的事务管理由TMS完成,TMS把各种RM接入到Tuxedo中的分布式计算中来,并对RM中执行的事务进行跟踪和两阶段提交。 Tuxedo对事务的管理工作主要包括创建TMS、创建TLOG、运行时事务的监控和迁

birt动态分组报表制作

1 BIRT报表开发环境准备 (2) 1.1 BIRT报表开发准备 (2) 1.2 建立Web Project (2) 1.3 配置交叉报表数据源 (5) 1.3.1 建立公共资源的文件夹 (5) 1.3.2 建立公共资源Library (6) 2 动态分组交叉报表 (10) 2.1 建立报表文件夹 (10) 2.2 建立报表文件 (11) 2.3 复用报表数据源 (12) 2.4 配置交叉报表结果集 (13) 2.5 配置交叉报表分组字段 (16) 2.5.1 新建Data Cuber (16) 2.5.2 新建Groups (17) 2.6 配置交叉报表求和字段 (18) 2.7 交叉报表表样制作 (19) 2.7.1 新建Cross Tab (19) 2.7.2 完成报表表样制作 (20) 2.8 报表分页实现 (20) 2.9 预览交叉报表 (20) 3 部署交叉报表 (21) 4 运行交叉报表 (21)

1BIRT报表开发环境准备 1.1 BIRT报表开发准备 (1)、Ecplise:这里我使用的是Eclipse Platform Version: 3.6.2。 (2)、BIRT插件:可以通过Ecplise中的Install New Software 添加Birt插件。插件地址:(3)、Tomcat:这里我使用的是apache-tomcat-6.0.16 1.2 建立Web Project (1)、新建Web Project 为了体现BIRT与实际应用项目相结合的特点,首先建立一个Web Project,工程命名为myReport。 然后单击“Next”,出现下图:

Tuxedo完全操作手册

一、tuxedo的配置 1、展开tuxedo包,例如:/home/tuxedo 2、配置ubbconfig文件 在江苏建行是jsccb.ubb *RESOURCES *RESOURCES节包含整个应用范围的信息。本节必须在配置文件第一节,不可缺少。 参数意义 *RESOURCES *RESOURCES节 IPCKEY 共享内存id UID TUXEDO管理员用户id GID TUXEDO管理员用户id PERM TUXEDO管理员组用户的权限 MAXACCESSERS 服务端和客户端的最大进程数 MAXSERVERS 限制可以启动服务总数 MAXSERVICES 限制可以发布交易总数 MASTER 指出主控节点的逻辑名,第二个是备份节点 MODEL 应用构架,MP表示多机 OPTIONS LAN,MIGRA TE表示是一个网络应用,服务可以移植到替代处理器上 SECURITY 安全级别(5个) AUTHSVC 客户端可以通过交易“AUTHSVC”获得认证 NOTIFY DIPIN,客户端通过dip-in收到广播通知 SYSTEM_ACCESS PROTECTED,NO_OVERRIDE,应用代码不得干扰共享内存LDBAL 设Y则进行负载平衡 MAXBUF[S]TYPE 数据缓冲类型及子类的最大数 SCANUNIT 内部时间间隔单位,单位是秒 SANITYSCAN 检索公告牌的内部时间间隔,单位是SCANUNIT BLOCKTIME 交易超时时间,单位是SCANUNIT BBLQUERY DBBL查询所有BLL的时间间隔 DBBLWAIT DBBL等待BBL回应的超时时间 MAXCONV 同时最大会话数 jsccb.ubb的实例

hp-unix常用命令

HP-UX常用命令 1、 cd命令的使用 返回上一次的目录(cd -) 2、 Esc键的使用 在命令行中可通过击两次Esc键来匹配当前目录中唯一的文件名,这样可节约击入长文件名的时间3、 col命令的使用 man cp | col –b >;cp.txt 该命令可将cp命令的联机帮助手册输出为名为cp.txt的文本文件 4、启动机器时执行的工作脚本(/etc/rc.config.d/) 5、which命令的使用(查看某命令的绝对路径) which 命令名 6、显示当前系统补丁安装情况(show_patches) 7、中文环境的配置 a、查看系统中安装的语言集(locale –a) b、显示当前语言环境变量(echo $LANG) c、如不为中文则修改(export LANG=zh_CN.hp15CN) d、 sty –istrip 8、查看系统信息和运行情况 a、 glance b、 top c、 performance view d、 /opt/ignite/bin/print_manifest /var/opt/ignite/local/manifest/manifest e、 /var/adm/syslog/syslog(系统运行日志) f、 /var/adm/shutdownlog g、 /var/adm/crash/ h、 /var/opt/sna/sna.err i、 /var/adm/nettl.LOG000 /usr/sbin/netfmt /var/adm/nettl.LOG000 >;net.log j、/usr/contrib./bin/info_col.11 k、/var/adm/btmp(历史登录信息,可用last命令查看) l、/var/adm/wtmp(比btmp更详细的信息) m、/etc/rc.log(机器启动时的信息) n、/var/adm/sw/(有关软件包安装、删除的信息) 9、查看系统当前init级别(who –r)

Tuxedo的工作原理及Toupper功能讲解

BEA Tuxedo中间件应用初探 本文以一个经典的例子(大写字母转换),主要介绍Tuxedo的工作原理及开发方法,以及Tuxedo应用程序的管理方法。 随着中间件在大型应用系统中的日益普及,目前各类中间件充斥着市场,它们在银行、电信、金融等大规模关键事务领域中的整合各种异构平台、保证交易完整性等方面表现出了超强的能力。BEA Tuxedo就是其中一款著名的交易中间件,本文以一个经典的例子(大写字母转换),主要介绍Tuxedo的工作原理及开发方法,以及Tuxedo应用程序的管理方法。 工作原理 Tuxedo是BEA公司的交易中间件产品,1984年由贝尔实验室开发成功,1992年易主Novell公司,1996年由BEA公司收购,经过十多年的不断更新和完善,Tuxedo已经发展成为交易中间件领域事实上的标准。 Tuxedo可以有效地整合企业异构C/S系统,实现大规模的关键业务处理和分布式事务管理,从而为企业提供一个可靠的、高性能的、易维护的三层分布式计算机环境。图1展示了一个基本Tuxedo系统的组成和工作原理。 图一 ①Client向System/T发出查询请求,以找到Server消息队列的地址; ②Client根据找到的入口地址将请求发送到Server的消息队列中; ③Server处理请求,并将结果返回给Client的消息队列。 System/T是Tuxedo系统的核心,它实现了Tuxedo的所有功能和特征,如C/S 数据流管理、服务请求的负载均衡、全局事务管理以保证交易的完整性、同步/异步服务请求、两阶段提交以确保消息的发送等。System/T提供了一个类似公

告栏的服务,用以发布C/S计算机环境中所有服务器、服务和客户机的信息,供其它分布式计算的参与者使用。下面笔者将通过一个大写字母转换的简单例子,讲述Tuxedo应用程序工作的基本原理和开发方法。 应用介绍 Simpapp是Tuxedo系统自带的一个例子,它由服务器和客户端程序两部分组成。服务器simpserv实现了一个TOUPPER服务,它从客户程序接收一个字符串,将它转换成大写后,传回客户端。整个工作流程可以用图2表示。 图二 客户机首先收集要转换成大写的字符串,然后连接到System/T并将字符串放入缓冲区,接着调用服务器上的TOUPPER服务,最后从服务器响应缓冲区中取出数据并退出System/T。 下面是服务程序simpserv.c的源代码: 可能你已经注意到了,该程序没有提供main方法。事实上,Tuxedo不要求程序员编写main方法,以便让他们把精力集中在业务逻辑的编写上,在编译时,Tuxedo系统会为它自动创建。 TPSVCINFO是Tuxedo记录服务调用信息的一个结构体,data域是保存请求数据的缓冲区,len域记录了data域的长度。 客户程序Simpcl.c是服务调用的发起者,它从命令行接收参数,通过tpinit()调用连接到System/T,通过tpalloc()调用分配一个字符串类型的缓冲区,通过

birt报表初级教程之嵌套报表

birt报表初级教程之嵌套报表 嵌套报表 嵌套报表其实是一种设计技巧的应用,类似编码过程中的模块化设计。当报表的复杂程度让设计者开始觉得逻辑混乱的时候,可以使用嵌套报表设计方法,将报表拆分为多个不同的设计页面,然后使用一个总的页面将这些设计页面整合起来展现。 此外,嵌套报表有时候也会用于主从结构的实现,通过逐层嵌套,可以实现无限层次的主从结构数据展现。 本例,我们将每个客户的信息包括客户表中基本的信息以及他们的订单信息,在同一张表中按客户一一列出来,所使用的就是嵌套报表。 报表名我们定为:nestingTab.rptdesign 构建数据源 本例我们使用BIRT自带的数据源,在新建数据源选择数据源类型为默认的第一项:Classic Model Inc,Sample Database 数据库驱动类别;org.eclipse.birt.report.data.oda.sampledb.Driver(Classic Models Inc.SampleDB Driver);URL:jdbc:classicmodels:sampledb 构建数据集 本例我们需要建立2个数据集: 1.建立数据集payments,所用SQL语句:(这里我们加入条件选择订单大于150000) select CUSTOMERNUMBER,sum(AMOUNT)amount from CLASSICMODELS.PAYMENTS group by CUSTOMERNUMBER having sum(AMOUNT)>150000 order by amount desc 2.建立数据集customers:所用SQL语句: select*

相关文档
最新文档