(计算机应用技术专业论文)基于交易中间件cics的银行代收付费系统的研究与实现.pdf_第1页
(计算机应用技术专业论文)基于交易中间件cics的银行代收付费系统的研究与实现.pdf_第2页
(计算机应用技术专业论文)基于交易中间件cics的银行代收付费系统的研究与实现.pdf_第3页
(计算机应用技术专业论文)基于交易中间件cics的银行代收付费系统的研究与实现.pdf_第4页
(计算机应用技术专业论文)基于交易中间件cics的银行代收付费系统的研究与实现.pdf_第5页
已阅读5页,还剩50页未读 继续免费阅读

(计算机应用技术专业论文)基于交易中间件cics的银行代收付费系统的研究与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

哈尔滨1 程人学硕士学位论文 摘要 目前,国内几大国有商业银行为摆脱困境,真正走向市场化、商业化, 都极力完善服务,提升综合竞争能力。特别是最近几年,各行对中间业务资 源的争夺同趋激烈。要想在竞争中取胜,除了各银行业务部门的有效经销策 略和前台操作员的高服务素质以外,整个代理系统的可靠性、稳定性、易用 性就成为了决定竞争胜负的关键性因素。本文分析了一套针对代收付平安保 险公司投保人保费的系统,该系统的功能是实现银行部门代替保险公司收取 和交付保险费,方便了投保人,减少了保险公司的现金流动量,同时提升了 银行的资金回流,取得可观的经济效益。 在本文中给出了代收付费系统的设计与实现方法。交易中间件c i c s 是 m 公司设计用来提供联机事务处理和事务管理的优秀产品,其功能是为商 业应用提供一个事务处理环境,适用于银行这样有大量突发联机事件的系统。 本系统采用c i c s 做为中间件,可以屏蔽后端的不同硬件设备,统一应用平 台,同时保证了数据准确可靠的传送和事务的完整性。系统设计采用了分层 的模块化体系结构,通过对各层模块功能的划分,对用户界面、通信服务、 数据转换等模块进行了合理的部署,使系统具有结构清晰、性能稳定、扩展 灵活的特点,能快速满足业务和市场的变化与发展。 关键词:中间件;交易中问件:完整性;事务处理 a b s t r a c t a tp r e s e n t ,s e v e r a ld o m e s t i cl a r g ec o m m e r c i a lb a n k sr e a l l ym o v et o w a r d s t h em a r k e t i z a t i o na n dc o m m e r c i a l i z a t i o ni no r d e rt oe x t r i c a t et h e m s e l v e sf r o mt h e p r e d i c a m e n t t h e yd ot h e i ru t m o s tt op e r f e c tt h es e r v i c ea n dt op r o m o t et h e i r c o m p r e h e n s i v e a n d c o m p e t i t i v ep o w e r e s p e c i a l l y ,t h e c o n t e n t i o no f i n t e r m e d i a t eb u s i n e s sr e s o u r c e si sb e c o m i n gf i e r c e ri nr e c e n ty e a r s i fo n ew a n t s t op r e v a i lo v e rt h ec o m p e t i t i o n ,b e s i d e st h a ta l lb a n kb u s i n e s ss e g m e n t ss e l l t a c t i c sa n dt h eh i i g hs e r v i c eq u a l i t i e so ft h eo p e r a t o r so ft h ef r o n td e s k ,t h e d e p e n d a b i l i t ya n ds t a b i l i t yo ft h ei n t e r m e d i a t eb u s i n e s ss y s t e mb e c o m e st h ek e y f a c t o ri nt h ec o m p e t i t i o no ft h ew h o l eb a n ks y s t e m t h i st h e s i sh a si n t r o d u c e da s y s t e mt h a tc h a r g ea n dp a yt h ep r e m i u mf o rt h ep o l i c y h o l d e ro ft h ei n s u r a n c e c o m p a n y t h ef u n c t i o no ft h i ss y s t e mi s t h a tt h eb a n k r e p l a c e st h ei n s u r a n c e c o m p a n yt oc h a r g ea n dp a yt h ei n s u r a n c ep r e m i u m t h es y s t e mf a c i l i t a t e st h e p o l i c y h o l d e r s , a n dr e d u c e st h e f l o w i n ga m o u n to ft h ec a s ho ft h ei n s u r a n c e c o m p a n y a n da tt h es a m et i m et h es y s t e mp r o m o t e st h ef u n db a c k s e t o ft h e b a n k ,a n dm a k e st h eo b j e c t i v ee c o n o m i cb e n e f i t s t h et h e s i si n t r o d u c e st h ed e s i g na n di m p l e m e n to ft h ec h a r g i n ga n dp a y i n g s y s t e m t r a n s a c t i o np r o c e s s i n gm o n i t o r - 一c i c si sae x c e l l e n tp r o d u c to fi b m t h a t o f f e rt h eo n l i n et r a n s a c t i o nd i s p o s a la n dt r a n s a c t i o nm a n a g e m e n t t h ef u n c t i o no f i to f f e r so n et r a n s a c t i o np r o c e s s i n ge n v i r o n m e n tf o rt h eb u s i n e s sa p p l i c a t i o n s ,i ti s s u i t a b l ef o rb a n k sw h i c hh a sal a r g en u m b e ro f s u d d e n l yi n c i d e n ti nt h eo n l i n e s y s t e m t h i ss y s t e ma d o p t sc i c s t ob ed o n ef o rt h em i d d l eo n e c i c sc a ns h i e l d t h ed i f f e r e n te q u i p m e n t so ft h eb a c ke n d ,a n du n i f yt h ep l a t f o r m a tt h es a m e t i m e ,c i c sc a ng u a r a n t e et h er e l i a b l ec o n v e y a n c eo ft h ed a t aa n dt h ei n t e g r a l i t yo f t h ea f f a i r s t h es y s t e ma d o p t st h ed i v i d u a lm o d u l es t r u c t u r et od e s i g n t h r o u g h 哈尔滨工程人学硕士学位论文 t h ee v e r yd i v i d u a lm o d u l eo ft h ef u n c t i o n ,t h em o d u l eo fc h a n g i n gf o ru s e r s j n t e r f a c e ,c o m m u n i c a t i o ns e r v i c ea n dd a t at r a n s f o r l nh a sc a r r i e do nr a t i o n a l a r r a n g e m e n t s o t h e s y s t e m s s t r u c t u r ei sc l e a r a n dt h e p e r f o r m a n c e i s s t a b i l i z e d ,a n dt h ee x p a n s i b i l i t yi sf l e x i b l e t h es y s t e mc a ns a t i s f yt h ec h a n g ea n d t h ed e v e l o p m e n to ft h eb u s i n e s sa n dt h em a r k e tf a s t l y k e yw o r d s :m i d d l e w a r e ,t p m , i n t e g r a l i t y ,t r a n s a c t i o np r o c e s s 哈尔滨工程大学 学位论文原创性声明 本人郑重声明:本论文的所有工作,是在导师的指 导下,由作者本人独立完成的。有关观点、方法、数据 和文献的引用已在文中指出,并与参考文献相对应。除 文中己注明引用的内容外,本论文不包含任何其他个人 或集体已经公开发表的作品成果。对本文的研究做出重 要贡献的个人和集体,均已在文中以明确方式标明。本 人完全意识到本声明的法律结果由本人承担。 日期:砷* 年,2 月五f 日 第1 章绪论 1 1 中间件产生的背景 随着全球范围内的竞争越来越激烈,不同的厂商提供的硬件设施、操 作系统、网络环境、数据库管理系统、应用模式都在显示着自身独特的魅 力,用户的可选范围在不断地扩大,而i t 业面临的问题也随之越来越多。 如何保证在异构和分布的环境下,完成各企业的业务管理、数据共享和数 据安全传输己成为r r 业关注的焦点。 传统的方法是采取以客户机i n 务器模式为代表的二层结构来开发应 用系统,基于这种结构的应用系统由于客户机与服务器直接连接,所以在 可扩展性、可维护性、集成能力上都受到了一定的限制。因此,企业级应 用逐渐向着三层和多层体系结构的分布式环境发展。在分布式环境中,无 论是硬件平台还是软件平台都不可能做到统一。大规模的应用软件通常要 求在软硬件各不相同的分布式网络上运行,为了更好的开发和应用能够运 行在这种异构平台上的软件,迫切需要一种基于标准的、独立于计算机硬 件以及操作系统的开发和运行环境n ,由此,中间件技术应运而生了。 1 2 中间件与金融业的关系 金融业是计算机应用水平最高的领域之一,也是最早意识到中间件重 要性的行业。由于银行对各种i e l 有应用系统的不断扩充,新业务需求的不 断增加以及分布式应用的迅猛发展,银行i t 部门正面临着越来越多的问题, 例如不同的硬件平台、异构的网络环境、系统效率较低、网络传输不可靠、 开发周期长等。如果仅仅通过购买更高档的主机、申请更宽的网络带宽, 或依赖传统的系统软件和工具软件,都不能完全满足银行业务系统的发展。 因此,银行业的技术人员丌始更多的关注中间件,希望能借助于中问件的 强大功能来满足迅速增长的银行业务需求。当前,世界匕使用计算机及网 络技术实现的银行业务系统,基本上全部使用了中间件技术。 中怕j 件作为一种重要的基础软件,在开发和优化银行的业务系统中发 挥着巨大的作用。同时通过中问件对服务进程的有效管理,可以减少应用 系统对数据库并发用户数的要求,从而节省对数据库的投资,为银行节约 大量建设成本。凶此,在构建银行的应用系统时,除f 机、网络、数据库 l 哈尔滨一程大学硕士学位论文 i i i i i i i ;j i i i ;i i i ;i i i i i i i ;i i ;i i i i ;i i i ;i i j ;i i i ;i i ;i ;i ;i i l 等方面,中间件成为一个关注的重点。 1 3 研究现状与发展动态 中间件的产生和发展与客户机服务器结构的发展是紧密结合的。近几 年来,随着数据库应用的发展,传统客户机服务器结构的缺点日益明显, 比如可扩展性差、对于分布式交易的处理能力差等。因此,正是由于客户 机服务器环境一直存在着操作系统、文件格式、网络协议、服务等相互异 构的多元化问题,才使得中间件作为不同结点间协同工作的桥梁得以不断 发展。,。 中间件从诞生起至今,仅仅是几年时间,但发展及其迅速,是有史以 来发展最快的软件产品。但中间件在技术上还处于成长阶段,还没有统一 的标准和模型,通常都是用c + + 语言以面向对象的技术来实现的,但是它 的特性已超出面向对象的表达能力,由于它属于可重用构件,目前趋向于 用构件技术来实现。然而中间件要涉及软件的所有标准、规范和技术,它 含有更多的内涵,因为它包括平台功能,自身具有自治性、自主性、隔离 性、社会性、激发性、主动性、并发性、认识能力等特性m 。 中间件的一个发展动向是向 n i e m e t 的延伸,典型的如应用服务器技术, 尽管i n t e r n c l n t r a n c t 技术已在全球范靥普及,但由于其自身的技术特点,在 构造许多大型企业级应用( 如金融、电信等) 时仍面临诸多问题。如并发 控制、负载均衡、可靠传输、数据路由等。三层和n 层计算技术的发展,为 应用服务器技术带来契机,当前w e b 技术和应用服务器的结合是新的热点。 基于这一发展动向,如何更好的利用中间件为企业级应用服务,成为 更多技术人员关心的问题。中间件具有平台功能,能够屏蔽底层操作系统 及网络传输的复杂性,使开发人员面对简单两统一的开发环境,减少程序 设计的复杂性,将注意力集中在业务逻辑上,大大减少了应用开发的技术 难度,缩短了应用开发周期。目前,利用中间件平台来解决企业级应用异 构环境下分布式系统开发问题在国内、国外应用很广泛。 1 。4 开发银行代收付费系统的意义 中间件并不是最终的应用,需要服务于应用开发。在电子工业与高科 技产业飞速发展,固有银行之间竞争h 趋激烈的今天,如何依托城市综合 、i k 务网络,利用现代化服务手段柬i 吸储揽存,增强资金实力,提高知名腰, 哈尔滨 :程大:学硕七学位论文 使自身在竞争中处于有利地位,乃是当前银行金融电子化工作中急需解决 的重大课题。目前国内几大国有商业银行为摆脱困境,真正走向市场化、 商业化,都在极力完善服务,提升综合竞争能力。加入w t o 后,中外银行 业竞争的焦点是如何吸纳优质客户和办理高附加值和高收益的中问业务。 特别是最近几年,各行对中间业务资源的争夺目趋激烈,因此,中间业务 在各大银行得到快速发展。由于中问业务既可以树立银行良好的公众形象, 又可以取得可观的经济效益,因此它是银行的重要发展方向。中间业务平 台的开发建设过程对推动银行业务的发展具有重要的意义。 中国农业银行黑龙江省分行为拓展农业银行中间业务项目,增加金穗 卡功能,提高手续费收入,提升农行形象,与平安保险公司哈尔滨分公司 合作,通过营业网点及网上银行,为其在全省范围内代收付保险费。保险 代收付费系统正是在这种情况下开始进行开发设计的。 1 5 论文的主要工作及论文的章节 本课题将着重讨论基于交易中间件技术下的银行代收付费系统的研究 与实现。具体包括以下几个方面: 1 熟悉中间件技术。通过理论学习,掌握中间件技术的概念、分类、 工作原理及各种中间件的实际应用。 2 学习交易中间件的基本原理及其功能。针对在银行系统应用最广泛 的交易中间件进行系统的学习,并以交易中间件c i c s 为重点,根据它所提 供的事务处理环境,学习它的基本工作原理及其在银行联机事务处理系统 中所起到的作用。 3 结合具体业务的要求,对代收付费业务系统进行详细的需求分析。 4 进一步详细设计代收付费业务系统,并建立基于交易中间件技术的 代收付费系统。 本文第二章介绍了中间件技术的基本概念及分类,并重点介绍了本系 统所采用的交易中间件c i c s 。 本文第三章介绍了银行代收付费系统的需求分析,包括逻辑描述,软 件功能,具体需求等。 本文第四章介绍了银行代收付费系统的设计,包括系统总体设计,采 用中间业务平台标准化模块等。 哈尔滨【程人学硕士学位论文 本文第五章介绍了银行代收付费系统的实现。 在结论部分对本文的工作进行了总结,并对未来的工作进行了展望。 哈尔滨工程_ 人学硕士学位论文 第2 章中间件技术介绍 2 1 基本概念 中间件的核心思想是分层,通过在应用层与底层基础软件间增加一层, 屏蔽底层复杂的技术细节,实现对底层的透明访问,为应用的开发、部署 与管理提供支持“,。但是,并非所有中间层次的软件都属于中间件的范畴。 由于中间件技术正处在发展过程中,其所要实现的功能也在不断丰富,针 对不同的应用领域和不同的应用环境,对中间件有不同的要求,不能指望 有一种解决所有问题的中间件,因此目前还不能对它进行精确的定义。大 家比较公认的一种说法是:中间件是一种介于操作系统与应用系统之间的 独立的系统软件或服务程序m 。中间件是一种软件,它能使处于应用层中的 各应用成分之间实现跨网络的协同工作,也就是互操作,这允许各应用成 分之下所涉及的系统结构、操作系统、通信协议、数据库和其他应用服务 各不相同。分布式应用借助它在不同的技术之间共享资源、协同工作。中 间件位于客户机服务器的操作系统之上,分布式应用之下,管理计算资源 和网络通信。不难看出,中间件是一类基于分布式技术的系统软件或软件 平台,而非一种应用软件;中间件是种分布式计算平台,涉及多种资源, 包括各种操作系统、数据库、网络协议甚至语言,其核心是网络通信,其 目标是在分布式计算环境中实现应用互连、资源共享、协同工作和互操作”1 。 三层客户机服务器模式的核心概念就是利用中间件将应用的业务逻 辑、表示逻辑和数据分为三个不同的处理层。如图2 1 所示。 业务逻辑 幽2 1 二层客户机i 服务器结构模式 表示逻辑( 客户层) 为第一层。它的主要功能是实现用,。交厄和数据 s 哈尔滨j 二群人学颁士学位论文 表示,为以后的处理收集数据,向第二层的业务逻辑请求调用核心服务处 理,并显示处理结果。 业务逻辑( 服务器组件) 为中间层。这些组件由中间件管理,实现核 心业务逻辑服务并将这些服务按名字广播,管理并接受客户的服务请求, 向资源管理器提交数据,并将处理结果返回请求者,即客户或其他服务器。 数据( 资源管理器) 构成模型的第三层。比如关系数据库,负责管理 应用系统的数据资源,完成数据操作。服务器组件在完成服务的过程中通 过资源管理器存取它管理的数据,或者说请求资源管理器的数据服务n ,。 中间件提供了一个基础的框架来帮助开发人员建立、运行和管理一个 三层客户机朋艮务器模式的应用,使开发人员不需要从零做起,缩短应用开 发的时间,提高了成功率。 2 2 中间件的分类 中间件的产品种类很多,根据中间件在系统中所起的作用和采用的技 术不同,大致划分为以下五种:数据库中间件、面向消息中间件、远程调 用中间件、基于对象请求代理的中间件、事务处理中闻件“”。 2 2 1 数据库中间件( d m ,d a t a b a s em i d d l e w a r e ) 数据库中间件是产生最早的一种中间件技术,发展到现在已经非常成 熟。它位于数据库管理系统和应用程序之间,实现了应用程序和异构数据 库之间的统一接口,有效地解决了应用系统在不同后台数据之间的移植问 题1 。 数据库中间件只提供数据库连接,与o d b c 的某些功能相近,其应用 比较固定。大多数的客户机服务器系统都有一个客户程序存取服务器上的 数据库,如果这个客户程序设计为只存取一种数据库类型,那么采用数据 库中间件十分理想。典型的数据库中间件产品是o r a c l e 的s q l + n e t 。 2 2 2 面向消息中间件( m o m ,m e s s a g e0 r i e n t e dm i d d le w a r e ) 通过消息中间件,一些原本互相孤立的业务可以组合成一个町靠的、 灵活的系统。借助消息机制,可以方便的实现客户方和服务方的通信,通 知服务方进行相应的处理。消息中间件的核心安装在需要进行消息传递的 系统上,在它们之间建立逻辑通道,由消息中问件实现消息发送。使用消 息中间件进行编程采用的是消息中i u j 件的a p i ,可以很好的扩展到不同的操 哈尔滨_ l 程人学硕士学位论文 作系统和硬件平台上。其优点在于能够在客户和服务器之间提供同步和异 步的连接,并且在任何时刻都可以将消息进行传送或者存储转发“。典型的 消息中间件产品有:i b m 的m qs e r i e s ,b e a 的m e s s a g eq ,东方通科技公 司的t o n g l i n k q 。 2 2 3 远程过程调用中间件( r p c ,r e m o t ep r o c e d u r ec a | i ) r p c 机制是早期开发应用时经常采用的一种同步式的请求应答协议。通 过这种协议,程序员编写客户方的应用,需要时可以调用位于远端服务器 上的过程。r p c 扩展了过程语言中的“功能调用结果返回”的机制,使它 可以适用于一个远程环境“”。 r p c 一般采用c a l l r e t u r n 模式,多用于应用程序之间的通信,而 且采用同步机制。因此,r p c 的正常工作是以客户方和服务方均能正常工 作为前提的。由此可见,r p c 的应用对网络的稳定性要求很高,而且,同 步方式使得客户方的工作在很大程度上依赖于服务器方。代表产品有d c e r p c ,i n p d s e e n t e r a 。 2 2 4 基于对象请求代理的中间件( o r b ,0 b j e c er e q u e s t b r o k e r ) 基于对象请求代理的中间件技术的基本思想是在对象与对象之间提供 一种统一的接口,对象之间的调用和数据共享无需再关心对象的位置、实 现语言及所驻留的操作系统n “。它提供一个标准的构件框架,能使不同厂家 的软件通过不同的地址空间、网络和操作系统互相交互访问。该构件的具 体实现、位置及所依附的操作系统对客户来说都是透明的。其目标是为软 件用户及开发者提供一种应用级的即插即用的互操作性,就像现在使用集 成块和扩展板一样。代表产品有i o n ao r b i x 、i n p r i s ev i s i b r o k e r 。 2 2 5 事务处理中间件( t p m ,t r a n s a c t i o np r o c e s s in g m o n i t o r ) 事务处理中间件也称交易中问件。事务是保证把系统共享状态从一个 一致状态转换到另一个一致状态的操作集合。分布环境下的事务处理往往 涉及多个数据库,因此必须知道事务在任何地方所做的所有动作,提交和 回滚事务的决定必须产生统一的结果( 全部提交或全部回滚) ,这就要依靠 交易中间件。 7 哈尔滨一l 程人学硕士学位论文 交易中间件可以向用户提供一系列的服务,如应用管理,管理控制, 应用程序问的消息传递等。常见的功能包括全局事务协调、事务的分布式 两阶段提交、资源管理器支持、故障恢复、高可靠性、网络负载均衡等。 交易中间件管理那些由应用程序声明和提交的交易,同时控制并发,实现 交易路由和均衡负载,并通过两阶段提交协议等方式保证分布式交易的完 整性n 。比较典型的产品包括b e a 公司的t u x e d o ,i b m 公司的c i c s ,东方 通科技公司的t o n g e a s y 。 2 3 中间件的实现原理 中间件的核心在于网络通信。计算机网络互连中使用最广泛的协议是 t c p i p 协议,下面基于u n i x 操作系统和t c p i p 协议来说明中间件的实现 原理。 2 3 1t o p i p 协议 t c p i p 协议是一套完整的网际通信协议族,t c p 协议提供可靠的面向 连接的全双工数据流,l p 协议提供无连接的报文分组服务。许多应用协议 都以这两种协议为基础,它为在计算机互联网络上进行可靠的数据交换提 供了有力的手段“。 2 3 2 端口与套接字s o c k e t 端口( p o r t ) 是网络协议软件与应用程序打交道的结合点,是协议软件 的一部分,一个主机的每个网络进程都使用协议端口号进行标识。网络环 境下的进程间的通信,必须指明协议种类、主机地址和端口号,它们构成 了进程间通信的一端,将它们称为套接字( s o c k e t ) ,它是网络编程的一个 接口。简单的说,套接字就是进程间的点到点的通信,它提供了进程间通 信的一般办法,并允许使用复杂的通信协议m ,。 在t c p i p 协议组中,s o c k e t 套接字与网络协议的关系如图2 2 所示。 网络应用程序 s o c k e t 接口 t c p i p 协议核心函数集 物理通信媒体 图2 2 套接字1 网络协议关系示意图 s o c k e t 的核心结构包括i 个部分:套接字层、协议层和物理层。套接 8 哈尔滨t 程大学硕十学位论文 字层提供系统调用以及协议层的接口;协议层规定通信时所使用的协议模 块;物理层提供控制网络设备的驱动程序。在配置系统时,需要将协议和 驱动程序合理的组合起来。网络通信使用客户机服务器模式,通信双方各 有一个套接字,服务器端在侦听,而客户端进程则利用套接字与服务器端 进程进行通信。u n i x 核心为从客户机到服务器的数据确定通信路径,并保 存着内部的连接“”。 s o c k e t 有三种类型:s o c ks t r e a m ( 流式套接字1 ,s o c kd g r a m ( 数 据报套接字) ,s o c kr a w ( 原始套接字) “。不同的s o c k e t 的工作流程不 同。一般地,使用t c p 协议的s o c k e t 工作流程如图2 3 所示。 断科连接 数州( 1 5 水j 数洲m 0 l 连藏i ,冰 图2 3t c p 套接字t 作流程 从图2 3 中可以看出,客户机和服务器双方的系统调用在各自进程的相 应地方成对使用 。丰要的网络系统调用见表2 1 。 一畜耋善一 荨 哈尔滨, 程大学硕士学佛论文 表2 1 网络系统调用表 服务器端客户机端说明 1s o c k e t ( )s o c k e t ( )创建一个垂接字 2b i n d ( )b i n d ( )给套接字分配一个本地地址 3l i s t e n ( )使一个套接字进入侦听状态,仅被t c p 服务器调 用。 4 a c c e p t ( ) c o n n e c t ( ) a c c e p t 用于从己完成连接队列的列头返回下一个 已完成的连接。c o n n e c t 用于在一个指定的s o c k e t 上建立一个连接,用于t c p 客户机建立与t c p 服 务器的连接 5r e a d ( )w r i t e ( ) 用于通过一个t c p 套接字读取数据或发送数据 6c l o s e ( )c l o s e ( )关闭套接字终止t c p 连接 2 3 3 中间件在应用程序中的调用 用户应用程序与中间件的衔接一般有两种方式:一种是函数调用方式, 应用程序在需要通信时,按照中间件提供的接口函数的要求,填入相应的 参数,进行数据的收发;另一种方式是标准数据接口方式,客户端和服务 器端必须根据通信结构的具体要求,对数据做相应的拆分,将所要接收或 发送数据写入通信结构中一。第一种方式比较直观,但通信速度稍慢,第二 种方式相对复杂些,但控制灵活,且通信速度较前者快。 2 3 4中间件实现数据通信与数据交换的基本过程 首先客户端应用程序将业务数据按照一定的格式( 可称之为报文) 发 送给中间件接口,或者调用中问件接口函数,将数据或报文提交到消息队 列,客户端中闻件守护进程调用s o c k e t 函数将数据发送到服务器端中间件 守护进程,服务器端中间件守护进程调用s o c k e t 函数,接受客户端发送来 的数据,并将其存入消息队列中,然后服务器端应用程序通过调用中问接 口函数或中间件接口,从消息队列中读出数据,供应用程序进行业务处理。 服务器端应用程序在数据处理完毕后,将处理结果按相反路径传送到客户 端应用程序,供其进行业务处理。 哈尔滨工程大学硕士学位论文 2 4 优点及应用 2 4 1 优点 高效率。在处理大量并发交易时,通过调度有限的服务程序为大量请 求进行服务,以减少网络连接量、内存占用进程数量和c p u 时间片等系统 资源,从而提高主机的处理能力,同时有限的服务程序只需与数据库建立 有限的数据库连接,大大提高了数据库操作的效率1 。 可靠性。通过流量控制保证系统的高可靠运行,避免交易量出现峰值 时系统阻塞或崩溃,并具备在系统故障时对交易的恢复能力。 完整性。保证联机事务处理系统所涉及的各种类型交易的完整性,以 及在不同的网络介质甚至在不同系统的数据库之间所进行的交易完整性。 安全性。提供加密、身份认证等多种安全措施,保证系统的安全性。 适应性。保证支持足够多的硬件平台、网络介质和数据库种类,以适 应各种规模的联机事务处理系统。 易开发。提供足够的开发工具、调试工具以及丰富的构件或函数库。同 时,中间件屏蔽了底层操作系统的复杂性,使程序开发人员面对一个简单 而统一的开发环境,不必为程序在不同系统软件上的移植而重复工作,从 而大大的减少了技术上的负担。 2 4 2 应用 中问件产品最初在国内应用较为集中的行业是电信和金融,其中银行 业是我国中间件应用最广泛也是最为成熟的行业,这与这些行业信息化建 设起步较早、其跨区域应用系统建设对于跨平台要求较高等因素有很大关 系。但随着近年来中国能源、交通、政府等行业相继加快信息化的步伐, 这些行业也对中间件产品产生了较大需求。 2 5 交易中间件c i c s 2 5 1 综述 目前,中国农业银行的信息系统主要基于四种硬件应用平台:s 3 9 0 , a s 4 0 0 ,u n i x 平台,p cs e r v e r ,应用的多种网络平台包括t c p i p ,s n a , f r a m e r e l a y ,d d n 等,使用的数据库包括s 3 9 0 和a s 4 0 0 的d b 2 平n u n i x 平台 上的s y b a s e 数据库。采用中问件可以解决异构硬件平台之问应用软件的统 一,可以屏蔽后端不同的硬件设备,统一应用、f 台。同时,出| _ f | u j 什县 哈尔7 兵工程大学硕士学位论文 有负载均衡的能力,因此可以增加系统的连接能力。 中国农业银行黑龙江省分行应用的交易中间件是i b m 公司的c i c s ( c u s t o m e ri n f o r m a t i o nc o n t r o ls y s t e m ) ,即客户信息控制系统。c i c s 是为 i b m 和非i b m 平台上的应用提供联机事务处理和事务管理的产品,其功能是 为商业应用提供一个事务处理环境,适用于银行这样有大量突发联机事件 的系统。c i c s 最早是在1 9 6 9 年由i b m 位于英国赫斯利的实验室首先开发成功 的,开始只是应用于s 3 6 0 、s 3 7 0 主机环境,经过近3 0 年的发展日臻完善, 被成千上万的企业使用并验证,已成为i b m 应用于信息产业领域分布式联机 事务处理环境的首要产品。c i c s 建立在操作系统、i s o 的分布式计算环境 ( d c e ,d i s t r i b u t e dc o m p u t i n ge n v i r o m e n t ) 和e n c i n a 月e 务上,c i c s 可以与 d c e 紧密结合,以满足分布式环境对于安全性,名字服务等的特殊需求m ,。 c i c s 的结构设计也是面向事务处理的,c i c s 构建的是一个三层次结构 的应用系统,c i c s 有效地区分应用系统中的表述逻辑层、业务逻辑层和数 据逻辑层,从而使应用系统结构清晰,效率高,速度快,维护简单易行。 它帮助客户建立三层次结构的联机事务处理应用,为应用程序的开发、通 信、恢复、显示、数据管理、安全性和内部通信等提供很多项服务。c i c s 环境最大的好处是它所提供的数据完整性知识不需要在应用程序中具有明 显的处理逻辑。c i c s 系统明确地记录了应用程序对数据的修改,并当交易 或应用程序失败后,自动的把对数据的修改回滚。c i c s 允许一个交易程序 被很多用户同时请求执行,而交易之间互不妨碍。c i c s 环境下开发的应用 程序,所提供的服务与c i c s 所提供的服务类似。在维护数据完整性和一致 性方面,必要的复杂任务对于所有类型的不可预测的异常条件的处理,由 c i c s 系统内部自动完成u “。 2 5 2c i c s 提供的功能模块 c l c s 提供了事务处理中共同需要的几乎所有功能模块,如请求接收、 安全管理、资源管理、逻辑锁、事务调度、事务恢复、事务一致性完成、 性能监控、多线程并行、时序控制、队列服务管理、可联结性等1 。客户仅 仅需要将他们的注意力集中在他们的业务逻辑:,从而快速地开发适合他 们业务需要的应用程序。由于这些程序不依赖于某种通讯m 议,某一种 数据库管理软件,也不依赖于某种操作系统和硬件平台,因此,由c i c s 哈尔滨工程人学硕士学位论文 构建的事务处理环境中t c p i p 和a p p c 可以共存,i b md b 2 和s y b a s e 、 i n f o r m i x 、o r a c l e 可以共存,a i x 年m v s e s a 、0 s 4 0 0 、w i n d o w s n t 、h p u x 等可以共存,因此应用程序均能很容易地配合和相互移植。 c i c s 的编程语句可以和s o l 的编程语句共同存在于应用程序中。c i c s 在 其客户机端支持c 年n c o b o l 语言,也采用统一的编程接口( a p i ) 。客户可以 采用两种方式来编制c l c s 的客户端程序。一种是外部调用接口e x t e r n a l c a l li n t e r f a c e ( e c i ) ,它使得一个在客户机上运行的 n c l c s 应用程序能同 步或异步地调用c i c s 程序,就像一个子程序。基于客户的应用程序使用简 单的e c i 调用,将需要调用的服务器程序名和一些数据通过通讯存储区传递 至o c l c s 区域,无需任何特殊的通信代码。另一种是外部显示接口e x t e r n a l p r e s e n t a t i o ni n t e r f a c e ( e p i ) ,它使一个在客户机上运行的应用程序能调 用服务器上的c i c s 事务,执行该事务就如同将它从3 2 7 0 终端启动,该事务 向客户机返回一个3 2 7 0 数据流,而客户机可在图形用户界面中将它呈现出 来,使得诸如图形或多媒体接口之类的现代技术可与传统的3 2 7 0c i c s 应用 程序一起使用,而无须更改c i c s 应用程序。甚至,用户还可以在客户端使 用其已经比较习惯的p o w e r b u i l d e r 、d e l p h i 等工具进行开发1 。但在实际应 用中,主要采用的是e c i 调用。 c i c s 还提供了强大的后台服务功能,将主机系统的内存、数据库系统、 文件系统等作为自己的资源,进行统一管理。对于服务器端的数据库,c i c s 提供了一种数据高速通道x a 接口。通过x a 接口,用户可以高速存取数据库 数据,而不必直接连接数据库。对于分布式数据库系统,c i c s 可以通过x a 接口完成两个阶段提交,实现分布式数据库的数据一致性“”。c i c s 提供各 种交易管理机制。例如,c i c s 可以定义交易的数据段、代码段的长度,并 且可以设计交易的超时时间以及交易是否长驻内存。c 1 c s 采用了先并发后 排队的进程管理机制,它可以设置交易进程的个数,以及交易进程的最小 和最大值。在交易量大时,可以根据c i c s 设置的最大并发进程个数进行并 行执行,同时对于超过并发量的交易排队管理,分配等待系统处理。这样 就保证了系统在高并发的要求下,合理地使用数据库并限制用户数。 2 5 3c i c s 的主要特肚一一完整- 生 在事务处理过程中,如果没有系统完整性的保证,则系统毫无可用性。 哈尔滨t 程大学硕士学位论文 应用服务器必须可以持续地提供任何已提交工作的准确记录。例如,如果 资金从一个银行帐户转帐到另一个银行帐户,两个帐户的操作必须相符, 以准确的反映事务过程。 c i c s 提供这样的事务环境:其中运行的事务失败时,它对文件记录或 数据项的修改都被自动回滚,应用程序员不必编写失败处理程序。c i c s 系 统明确地记录了应用程序对数据的修改,并当事务失败时,自动地把对数 据的修改回滚。c i c s 还支持两个或多个c i c s 系统事务协同工作完成同一个 任务,同一个程序对本地和远地文件记录的修改一起被提交或回滚。 c i c s 允许一个事务程序被多个用户同时请求执行,而事务之间互不妨 碍。c i c s 提供了加锁技术,预防没有被提交的文件记录被访问,保证了数 据的一致性。 为了完成上述操作,提交过程有两个阶段( 称为两阶段提交) : 在第一阶段( 准备阶段) ,服务器协调程序要求每个参与者记录足够的 工作信息,以使事务处理服务器能够提交或回滚。 在第二阶段( 提交阶段) ,服务器协调程序检查所有参与者是否已成功 完成他们的更新。如果都已成功完成,那它就提交更新,否则,作回滚操 作并异常终止事务。 从两阶段提交协议的工作过程可以看出:两阶段提交协议把本地原予 性提交行为的效果扩展到分布式事务,从而保证了分布式事务提交的原子 性。由于在两阶段提交的执行过程中维护了事务日志,记录了执行恢复所 需要的信息,所以只要事务日志不受到损害,运行记录不丢失,事务就能 够从故障中迅速恢复,从而提高了分布式事务的可靠性。 2 5 4 c i c s 三层结构的本质 作为三层c s 结构的中间层,c i c s 服务器通过客户系统和网关连接其前 端,9 0 c i c s 客户机( 如果某个c i c s 客户机是w 曲服务器,那么,它就有自 己的前端,即浏览器) ,c l c s h 鹾务器通过资源管理器连接后端,即关系型数 据库,如d b 2 、o r a c l e 、s y b a s e 、i n f o r m i x 和m ss q l s e r v e r 等。 这相当于一个嵌套的两层c s 结构:界面逻辑层是c i c sc l i e n t ,业务逻 辑层是c i c ss e r v e r + d a t a b a s ec l i e n t ,数据访问层是关系型数据库。 按照这样的结构分布,我们可以把c i c s 应用丌发i i 作分为三个部分( 见 哈尔滨工程人学硕士学位论文 图2 4 ) :界面逻辑层的丌发人员来设计用户界面,比如:录入、显示和打印 等;业务逻辑层的开发人员来设计应用逻辑,比如帐务数据处理等;数据 访问逻辑层的开发人员来配置和优化数据库系统。 、务逻辑j ,i - :c i c ss e i n e r d bc l i e n t数a m ! :d b s e l x m 预编译:e x e cs q l c 源程序( 嵌入s q l c i c s ) 图2 4c i c s 编程的结构示意图 2 6 本章小结 只有对中间件系统的整体有了一定的了解,才能对开发本系统有一个初 步的认识,因此,本章详细介绍了中间件技术的基本内容,并重点介绍了 本系统中所采用的交易中间件c i c s 。在第一节对中间件的概念做了介绍。 第二节介绍了中问件的分类。第三、四节介绍了中间件的工作原理和优点。 第五节介绍了农业银行所采用的m m 公司的中间件产品c i c s 。 ;兰| 垭州主! | 一眦 哈尔滨l 程大学硕士学位论文 第3 章银行代收付费系统的需求分析 3 1 系统概述 3 1 1 业务范围 实现黑龙江省平安保险公司投保人保险费查询,收缴,支付,自动批 扣,发票打印等功能。 3 1 1 2 系统目标 通过设计和实现联网代收付费系统,充分利用农业银行城市综合网络 系统安全、快捷的结算优势,减少被代理方现金的流通量,利用银行已有 的各种服务,代替保险公司收取保费、支付保险金,建立扩展性强,适应 性强的实时联网代理业务模式。 基于c i c s 的银行代收付费系统使用中间件技术,银行方通过中间件访 问数据库,回传客户的交费信息。建立在广域网和中间件技术基础上的实 时交易,保证客户的保单状态随着交易的结束而变更,既能方便客户,又 能避免现金操作的种种弊端,降低成本。 3 2 综合描述 3 2 1 业务功能 1 此业务分为零星业务和批量业务,零星业务又分为代收、代付两部 分。 2 银行能够实现实时代收首期保险费,实时代收续期保险费,实时代 付保险金及首期、续期的批次代扣。 3 每日由银行端以文件方式与平安保险公司发起对帐,成功笔数以银 行端为准。 3 2 2 通信协议 数据传输协议:基于t c p i p 通信协议的s o c k e t ( 套接字1 传输。 文件传输协议:基于

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论