首页 > 人工智能 > 正文

基于SOA构建集成应用系统

2011-08-15 11:48:00  来源:e-works

摘要:SOA帮助信息系统不用对现有的系统做修改的前提下,系统可对外提供web服务接口,这是因为它们已经被可以提供web服务接口的应用层做了一层封装,所以在不用修改现有系统架构的情况下。
关键词: SOA 面向服务的体
  伴随着信息化发展的深入,各种应用系统越来越多,规模越来越大,功能也越来越繁杂,同时为了适应行业发展的需要,各软件系统本身也在不断的调整和更新,信息系统变得日渐庞大,却难于快速响应需求的变化,有时候反而形成了业务和发展的瓶颈等。

    基于SOA构建集成应用系统

    .1突破传统架构的缺陷,SOA的优势

    更好的支持流程


    一个中心思想就是使得企业应用摆脱面向技术的解决方案的束缚,轻松应对不断膨胀,变化的需求。传统的体系架构只能通过不断开发新应用程序并扩展现有应用程序来艰难支撵其现有的业务需求,但是基于SOA的企业应用系统同业务流程结合在一起,通过将注意力放在服务上,应用程序能够集中起来提供更加丰富、目的性更强的流程。其结果就是,能够更加精确地表示业务模型、更好地支持业务流程。

    有利于业务的集成

    传统的应用集成方法(点对点集成、企业消息总线或中间件集成,基于业务流程的集成)都很复杂,并且不灵活。这些集成方法难于快速适应基于企业现代业务变化不断产生的需求。基于SOA的企业系统具有一套完善的开发模式来帮助客户端应用连接到服务上。SOA帮助信息系统不用对现有的系统做修改的前提下,系统可对外提供web服务接口,这是因为它们已经被可以提供web服务接口的应用层做了一层封装,所以在不用修改现有系统架构的情况下。SOA可以将系统和应用迅速转换为服务。

    服务粒度

    在SOA中服务粒度的含义:服务是如何实现的,服务使用和返回了多少数据或多少消息。

    细粒度服务执行了最小的功能,发送和接收少量的消息。

    粗粒度服务执行了较大的业务功能,并交换了更多的数据。

    细粒度服务是供粗粒度服务或组合服务使用的,而不是由终端应用直接使用的。粗粒度服务可以使用多个细粒度服务,它们不提供粒度级的安全和访问控制。组织服务可以使用粗粒度服务和细粒度服务进行组装。

    作为面向服务的架构,简化了IT的计算环境,其兼容性、互通性以及最终实现的自主能力,满足了高度动态环境,实现了IT对业务从数月到分秒的响应。SOA的最终价值在于让IT和业务同步,在规划上以面向提供弹性的业务服务为目标。

    基于SOA的系统的建立

    .1选择成熟的标准和技术实现SOA

    使用的标准很多,如CORBA、COM、J2EE等,但web服务协议创建和部署SOA架构到目前还是首选的标准。事实上,近年来SOA的发展和提倡,很大程度上得益于web服务技术的发展和成熟。选择成熟的应用技术和产品,对SOA的成功构建非常关键。

    从开发人员的角度来说,开发人员的工作是面向服务的应用程序设计/开发(service-Oriented Application Design/Development,SOAD),他们使用的-工具必须支撑开发人员有效地创建和使用SOA对象,并设计SOA模型、开发服务和服务对象以及测试SOA应用程序这些过程包括进来并组成一个整体。

    .2构建服务的基本模块

    我们可以从以下方式创建服务:

[page]    从头开始编写服务。这一种选择适合正在开发全新系统或者改写应用软件的企业,可以通过通盘考虑服务,让可重复使用机会最大化。

     将现有代码改写成服务。对采用模块化方式开发但没有使用Web服务技术实施的定制应用,这种方法行得通。

    对现有的应用或流程加以“封装”为它们提供web服务接口。

    获得的服务。包括企业内部的套装应用和系统(如ERP、CRM)随带的web服务支持功能,或外部企业提供服务执行的功能。

    .3分析和创建SOA应用时需采取的步骤

    了解哪些流程可以转化为服务。

    构建应用流程中心库。这些流程来自于被设计成一组服务的业务应用,这是一个日积月累的过程。

    确定适当级别的服务粒度,以确保服务有效地重复使用。粒度过细会导致服务过于具体而无法使用,粒度过粗又会导致服务过于笼统而无法使用。

    培育重复使用的服务。它使组织能够把流程作为定义明确的一组服务来交付,而且很容易把这些服务提供给开发人员。

    .4构建SOA应用系统


    实施SOA是个分步走的过程,也是分阶段的,具体到实施每个应用系统时也是这样。无论新建系统还是对原有系统的重构,都需要根据需求分析结果去构建、部署、整合和调用服务。

    系统按不同的功能模块可以被分为7层:

    第1层是系统已经存在的程序资源,如营销系统、专卖系统等。

    第2层是组件层。在这层中用不同的组件把底层系统的功能封装起来。

    第3层是SOA系统中最重要的服务层,用底层功能组件来构建所需要的

    不同功能的服务。总的来说,SOA中的服务可以被映射成具体系统中的任何功能模块。

    .5 SOA与SOI,走向面向服务的应用集成

    以在SOA基础上,通过服务的交互来集成企业中的各种IT资源,是SOA实践发展到高级阶段的必然结果。

    企业应用集成是为了避免企业内部信息系统各自为政、无法互通互联,实现对整体业务运行和流程的全面掌控,同时为了满足协同商务时代要求企业内部和企业之间协同,乃至整个供应链和供应链之间的协同目标。企业应用集成通过将不同系统中的数据和消息进行翻译、并指定数据传输的方向,实现充分、实时、多方、双向的集成,为信息互通架起了桥梁,实现互通互联。

    以面向服务的体系结构集成应用系统,采用“关注点分离”(separation Concern)的方法规划企业集成的各种架构元素。同时从服务视角规划每种元素提供服务,以及服务如何被组合在一起完成某种类型的集成。

    结语


    面向服务的体系结构构建和集成行业应用系统,其松散灵活,易于互通共享和企业集成的诸多优点,不仅提高了IT的效率,还弥合了IT与业务之间的距离,为实现“系统集成、资源整合、信息共享”提供了一种很好的基础和解决方案。随着SOA及相关技术的日渐成熟,SOA成为行业应用架构首选。

第四十一届CIO班招生
国际CIO认证培训
首席数据官(CDO)认证培训
责编:kaifangli

免责声明:本网站(http://www.ciotimes.com/)内容主要来自原创、合作媒体供稿和第三方投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。