IBM CICS Transaction Server是一个交易处理服务器,主要运行在基于IBM z/OS 的IBM System z 大型机上。它控制应用程序和用户(从较小的用户数量到成千上万)之间的交互。CICS应用程序提供了高可靠性和可伸缩性。CICS应用程序非常灵活,可使用多种不同的客户接口:从终端,web浏览器到web服务。
正如IBM红皮书解决方案指南介绍,CICS应用程序体系架构有一些业务和技术优势。
有关主题的相关信息,请参阅下面的IBM红皮书:
Architect's Guide to IBM CICS on System z, SG24-8067-00
内容
IBM CICS Transaction Server是一个交易处理服务器,主要运行在基于IBM z/OS的IBM System z大型机上。它控制应用程序和用户(从较小的用户数量到成千上万)之间的交互。CICS应用程序提供了高可靠性和可伸缩性。CICS应用程序非常灵活,可使用多种不同的客户接口:从终端,web浏览器到web服务。
CICS交易服务器具有广泛的功能,可服务于部署其上的应用程序。CICS架构师可以依赖于CICS提供的运行时服务,而无需将这些服务设计到应用程序代码中。这些服务包括安全、交易完整性,以及多进程或硬件集群的调度工作。
正如IBM红皮书解决方案指南介绍,CICS应用程序体系架构有一些业务和技术优势。
图1. CICS应用程序架构
你知道吗?
CICS于1969年首次发布,今天仍广受青睐。大量的商业电子交易都是由CICS交易服务器处理的。
每天有超过300亿的交易量由CICS处理。
至少有三个CICS客户实现一天交易量过十亿。
CICS每周处理一万亿美元的交易。
商业价值
CICS交易服务器是处理大容量、高效率、事务性应用程序的管理环境。不需要开发人员在其应用程序中编写系统功能,CICS能够自动或根据应用程序要求执行这些服务。
通过使用CICS,开发人员可以集中精力编写业务逻辑代码以解决业务问题,而不需要担心系统功能,比如数据库集成和安全控制。
这样可以带个客户如下几个优点,包括更短的开发周期,更易于维护,也更容易加入新的功能。应用程序不需要伴随新的操作系统或数据库而变动,因为CICS 交易服务器会处理与这些系统的接口。
CICS 提供了一种快速、低成本及低风险的方式来发展业务应用程序。CICS多种编程语言的支持为节约成本、提高生产效率提供了重要的便利。
解决方案概要
CICS提供了一组API,用来简化对CICS管理资源的访问。这组API支持CICS container的服务,保证了包括事务性,安全性以及负载管理在内的实时服务质量。
CICS的API提供了中立的,标准的语言接口来访问文件、队列、程序等资源,显著地提升了应用开发效率。同时CICS通过API将业务逻辑与系统管理逻辑相分离,实现了现代的开发模型。用户无需使用所属语言的语法,便可完成针对文件的读写。用户还可以通过索引资源的别名,以及特定的API,运行CICS命令。
CICS API的另外一项好处便是实现了跨CICS版本的加载模块的兼容性。即使特定的API将不再被支持或者被移除,如果使用该API的模块可以处理相关的错误,那么该模块仍可以在新版本的CICS中使用。
商用的应用开发语言的选择常常基于用户的需求以及其现有的技能储备。因为CICS支持多种语言,所以CICS上应用的运行于一个真正异构的环境中,应用的开发语言包括过程语言(如COBOL)和面向对象语言(如Java和C++)。
图2总结了CICS支持的编程语言。
图2. CICS编程环境
CICS语言支持的核心是IBM z/OS Language Environment。CICS通过LE集成不同语言的运行时。各种编程语言(例如PL/1, COBOL以及C/C++)在LE中拥有自己的库,所以CICS可以在语言层次上提供不同程序的简单通信。REXX由于直接使用CICS的服务,与LE库没有链接。
CICS多语言运行时有如下优势:
语言间通信,为设计和开发提供更好的弹性和效率。同时让开发者根据不同目的为不同项目选择最适合的编程语言。
CICS API提供了标准的接口,实现对CICS管理资源的交互。CICS同时提供了Java的API。Java的API通过Java实现,但是运行起来与CICS的标准API完全一致。Java的API简化开发过程,兼容其他语言,更便于利用CICS运行时的服务质量,如安全性、负载管理以及事务性。
集中诊断,系统在问题发生时将信息以标准的方式输出。这样就减少了诊断资源的时间和精力,提升应用质量。