Presentation is loading. Please wait.

Presentation is loading. Please wait.

中间件 定义:中间件是介于应用与操作系统之间的系统软件,是相关应用的基准平台 三大基础软件:操作系统、数据库、中间件

Similar presentations


Presentation on theme: "中间件 定义:中间件是介于应用与操作系统之间的系统软件,是相关应用的基准平台 三大基础软件:操作系统、数据库、中间件"— Presentation transcript:

1 中间件 定义:中间件是介于应用与操作系统之间的系统软件,是相关应用的基准平台 三大基础软件:操作系统、数据库、中间件
消息中间件MOM(BEA MessageQ、IBM MQSeries、TongLink/Q、Microsoft MSMQ)、交易中间件TPM (Tuxedo、TXSeries、TongEasy)、对象中间件(Corba、COM、MTS)

2 TPM中间件 Transaction Process Monitor 支持联机交易服务(OLTP) 提供用户实时的交易请求与响应
支持分布式交易服务 支持多个数据源、异种数据源、和分布式协同应用,支持两阶段提交

3 CICS三层结构

4 南京医保前台三层结构

5 分布式系统CICS (TXSeries)的历史
􀂃 1969年IBM CICS (Customer Information Control System)第一版发布 􀂃 1993年IBM推出UNIX平台的CICS产品,最终命名为TXSeries 􀂃 1999年IBM发布WebSphere EE,即TXSeries 4.3 􀂃 2002年IBM发布TXSeries 5.0 􀂃 2004年IBM发布TXSeries 5.1 􀂃 2005年IBM发布TXSeries 6.0 􀂃 2006年11月IBM发布TXSeries 6.1 􀂃 2007年底IBM发布TXSeries 6.2

6 TXSeries 6.2安装 Windows 2003、Windows XP 安装:TXSeriesV62-windows.exe
去掉DCE, Encina等组件 无须再启动DCE,但SFS仍保留 增加Web控制台 XA容错性增强

7 TXSeries 6.2配置-环境变量 set NLSPATH=C:\opt\cics\MSG\en_US\@N
set set LANG=zh_CN set CICSPATH=c:\opt\cics set CICS_SFS_SERVER=/.:/cics/sfs/VMWINXP set CICS_SFS_SIZE=128 set ORACLE_HOME=C:\oracle\ora92 set ORACLE_SID=ORA92 set CICS_PROGRAM_PATH=C:\var\cics_regions\CICS01\bin

8 TXSeries 6.2配置-Region SFS(Windows下会自动创建) 创建 region
cicscp -v create region CICS01 DefaultFileServer=%CICS_SFS_SERVER%

9 TXSeries 6.2配置-监听 icsadd -c ld -r CICS01 L1435 Protocol=TCP TCPAddress="" TCPService="cics_1435" 在 %system32%\drivers\etc\services 中增加 cics_ /tcp

10 TXSeries 6.2配置-用户管理 cicsadd -c ud -r CICS01 TEST CICSPassword=TEST

11 TXSeries 6.2配置-XA nmake –f oracle1pc.mk Oracle
cicsadd -c xad -r CICS01 OraXA SwitchLoadFile="oracle1pc"

12 分布式事务 XA:XA接口标准是事务处理系统与数据库服务器的事务管理接口 一阶段、二阶段

13 TXSeries 6.2启动与停止 cicscp -v start sfs_server %CICS_SFS_SERVER% StartType=cold cicscp -v start region CICS01 StartType=cold cicscp -v stop region CICS01 cicscp -v stop sfs_server %CICS_SFS_SERVER%

14 CICS服务程序开发 #include <time.h> #include "easycics.h" void main(){
struct tm *newtime; time_t aclock; if( InitEasyCics() ) ExitEasyCics(); BeginWrite(); time( &aclock ); /* Get time in seconds */ newtime= localtime( &aclock ); /* Convert time to struct tm form */ SetValue( "TIME", asctime(newtime) ); PrintStatus("GETTIME"); ExitEasyCics(); }

15 CICS服务程序开发 set EC_SRV=C:\gettime\srv nmake -f easycics.win.mk
nmake -f gettime.win.mk cicsadd -B -c pd -r CICS01 gettime PathName="gettime.dll" RSLKey=public

16 CICS服务程序开发-EasyCICS 参考easycics.h文件 InitEasyCics(); GetValue();
BeginWrite(); RsCreate(); RsAddRow(); RsSetCol(); RsSaveRow(); ExitEasyCics();

17 CICS客户程序开发 #include "ec.h" void main(){ char s[200]; int r;
r= ConnectServer( "NJ_186", "TEST", "TEST" ); printf( "ConnectServer: return code= %d\n", r ); r= CallProgramAndCommit("GETTIME"); printf( "CallProgramAndCommit: return code= %d\n", r ); GetValue( "TIME", s ); printf( "Server Time= %s\n", s ); }

18 CICS客户程序开发 set EC_CLI=X:\CICS\Client\Get2K
set path=%path%;X:\CICS\Client\Get2K nmake -f gettime.nmk

19 CICS客户程序开发 多线程客户端DllEcx.dll dllCreateHandleX dllConnectServerX
dllBeginWriteX dllSetValueX dllCallProgramAndCommitX RsOpen dllRsGetRowNumX、dllRsGetColNumX、dllRsFetchRowX、dllGetValueX、dllRsGetColX RsClose dllDisConnectX dllDestroyHandleX

20 CTG、CUC CTG:CICS Transaction Gateway CUC:CICS Universal Client
CTG包含了CUC和Java Gateway


Download ppt "中间件 定义:中间件是介于应用与操作系统之间的系统软件,是相关应用的基准平台 三大基础软件:操作系统、数据库、中间件"

Similar presentations


Ads by Google