北极星

搜索历史清空

  • 水处理
您的位置:电力综合正文

SOA:进步还是革命?[1]

2008-08-04 18:38来源:希赛关键词:SOA收藏点赞

投稿

我要投稿

  SOA这个缩略词现在已是频频见诸报端,似乎将引领软件世界的下一次革命,但是,如何实现SOA?我们是否应该抛弃已经掌握的各种技术转而重新学习新技术?它真的是一场革命吗?让我们走近它,看看SOA究竟是什么?

  什么是面向服务的架构(SOA)?目前并没有准确的定义,也没有绝对的准则,事实上,SOA仍然在不断地成熟之中。因此,在本文中,我们会更多地讨论SOA的实现途径而不是理论。

  如果一定要给SOA一个定义,那么你可以认为“SOA是一种IT系统,在这一系统里每一个应用都被当做一个服务来调用和管理”。可以看出,SOA的关键是“服务”的概念,W3C将服务定义为:“服务提供者完成一组工作,为服务使用者交付所需的最终结果。最终结果通常是使用者的状态发生变化,但也可能是提供者的状态改变,或者双方都产生变化”。

  实际上,与其说SOA是一种技术,不如说它是一种哲学,是一种架构和组织IT基础结构及业务功能的方法,是一种在计算环境中设计、开发、部署和管理离散逻辑单元(服务)的模型。

  SOA的目标

  今天,任何一个应用系统都不是孤立存在的,需要与其他企业信息系统进行平滑的集成,这就意味着它不仅必须与现有的系统(平台和应用)进行交互,同时在设计之初还应该考虑到它可以在未来的新业务或新应用模块中得到重用。

  简单来说,SOA的主要目标包括以下一些:

  ●重用与合成能够在应用之间重用模块并能在内部应用之间实现互交换;

  ●松散耦合把服务使用者和服务提供者在服务实现和客户如何使用服务方面隔离开来;

  ●灵活性每一个应用都有一定的生命周期,因此它应该可以被重新纳入新的模块,支持新的业务需求;

  ●开放性和互操作性以便能在不同平台和环境下共享模块;

  ●分布式使模块可以被远程访问并被集中管理

  在这些概念中,“松散耦合”和“可重用”是SOA两个关键概念。SOA具有“松散耦合”的组件服务,这一点区别于大多数其他组件架构,大多数松散耦合方法都依靠基于服务接口的消息来实现,这种接口能够兼容多种传输方式(如HTTP、JMS、TCP/IP、MOM等)。基于消息的接口可以采用同步和异步协议实现,Web服务对于SOA服务接口来说是一个重要的标准。当使用者调用一个Web服务时,被调用的对象可以是CICS事务、DCOM或CORBA对象、J2EEEJB或TUXEDO服务等,但这与服务使用者无关。“可重用”设计原则使应用变得更为灵活,它采用通用格式提供重要的业务功能,为开发人员节省了大量时间。

  SOA将给企业带来巨大的好处。它可以将IT架构抽象出来,而把IT系统实现的功能以服务形式表示出来,每种服务都清晰地表现出其业务价值,这些服务的顾客(既可能在公司内部,也可能是公司的某个业务伙伴或供应商)就可以得到这些服务,而不必考虑其后台的具体实现技术。当然,在实现SOA时,你并不一定要考虑以上所有目标,你可以采用这些理论准则,也可以彻底忘掉它们,关键是看它们能否带来新价值。例如,有时我们会在特定的平台上(.NET或J2EE)上建立应用系统,虽然牺牲了独立性,但却获得了更高的性能。

[1][2][3][4][5][6]

投稿与新闻线索:陈女士 微信/手机:13693626116 邮箱:chenchen#bjxmail.com(请将#改成@)

特别声明:北极星转载其他网站内容,出于传递更多信息而非盈利之目的,同时并不代表赞成其观点或证实其描述,内容仅供参考。版权归原作者所有,若有侵权,请联系我们删除。

凡来源注明北极星*网的内容为北极星原创,转载需获授权。