CICS培训笔记.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CICS培训笔记 2004年8月27日 马建伟 CICS:客户信息控制系统,起源于大机,诞生于1969年,1998年更名为TX Serials,最后又集成到Web Sphere家族 CICS的编程方式: EPI:针对3270终端,现在比较少 ECI:一般客户端编程 CICS是三层架构应用服务器,CICS是TPM(事务处理监视器) 二层架构的缺点: 主要使用SP(存储过程),各数据库存储过程不兼容,造成数据库移植困难 使用SP描述业务逻辑,数据库服务器只能增加内存和CPU速度,扩展性差,所以会形成Bottle Neck(瓶颈) 不支持TP 三层架构的特点: 一般不建议使用SP,但在性能要求高时也可以使用 业务逻辑实现在应用服务器,可以横向扩展,负载平衡 SFS:有TPM功能的文件系统 2 Phase Commit(两阶段提交):访问2个以上的数据源实现数据完整性 提交各数据库前,先向各数据库请求prepare,并锁住相关资源,确保提交时能够成功,数据库自动记录日志 TPM记录整个事务日志 这样两阶段提交确保了数据完整性,但是由于各数据库可能有异常,导致整个事务长时间等待,系统性能大大降低 XA:X/Open组织定义的标准,包括2 Phase Commit的标准 CICS有很多操作系统的版本,但是没有SCO和Linux的服务端版本,没有正式的SCO和Linux的客户端版本 CICS不能保存客户端连接的状态信息,类似与EJB中的Stateless的Session Bean CICS客户端连接方式:主要有TCP/IP,SNA DCE(分布式计算环境):目前一般使用RPC(Remote Procedure Call) Only Encina也是CICS的一个分支,但是已不作发展 CICS的Java客户端连接需要安装CICS Transaction Gateway,但一般Java客户端如果与CICS客户端在一台机器,就可以使用JNDI访问 Region(区域):CICS Server的一个实例,资源定义一般保存在SFS,但也可以使用数据库 Region的事务资源的定义一般用于EPI编程 CICS客户端连接一般使用CICS用户认证,但也可以使用DCE认证 CICS队列 TSQ:临时数据队列 TDQ:瞬时数据队列 CICS连接数据库 non_XA:程序中主动调用Connect语句连接数据库 XA:程序中不调用Connect语句连接数据库,连接由CICS管理 CICS客户端和服务端通过commArea内存块交互数据 LUW:Logical Unit of Work,逻辑工作单元,即数据库的事务 CICS AS:CICS应用服务器,一个事务相关的程序在一个CICS AS进程运行 CICS异常处理顺序:停止CICS AS中运行的程序,如果不行则杀CICS AS进程,如果不行则杀DB连接 CICS API命令:EXEC CICS 命令 ABEND:抛出异常 HANDLE ABEND:捕获异常 RETURN:返回客户端 GETMAIN:CICS中申请变量空间,RETURN时释放(除GETMAIN SHARED) FREEMAIN:释放GETMAIN SHARED申请的空间 LINK:调用另一个程序 XCLT:将程序转到其他程序,由那个程序返回客户端 START:异步调用另一个程序 DELAY:延时 SynPoint:提交事务,一般提交操作不放在服务端,建议在客户端来控制 开发CICS程序注意的问题 不同CPU的非字符型数据类型的高低位顺序不同和自动字节补齐等问题,所以INTEL客户端数据传送到RISC服务端不正确,需要通过转化 客户端传递的数据缓冲不能超过32K 任何资源(文件、SOCKET、环境变量、共享内存)申请后注意释放和恢复 建议使用GETMAIN命令申请内存空间,尽量不使用alloc 建议使用同步方式调用服务端,即使是异步方式,也需要等调用的程序完成才能调用其他程序 使用线程安全 不要使用exit命令 Region的程序配置建议不要设置事先载入,否则更新程序需要停止Region才行 Easy CICS:2000年诞生,为了实现CICS编程简单而设计的API接口 服务端支持C语言,客户端支持C/Java/Ole Ole方式连接不支持多线程 客户端提交数据仍不能超过32K,但是返回结果集可以超过32K 基于文本方式传送数据 Call调用前调用BeginWrite清空缓冲 一般使用CallAndCommit调用服务端程序直接提交 调用Call后使用GetError方式获取错误信息 服务端程序不需要CICS预编译 Easy CICS API: InitCICS GetValue SetValue BeginWrite GetError ExitEas

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档