- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第八节 面向服务架构(SOA)
面向服务的架构 (Service-Oriented Architecture SOA)是一种形式化的分离服务的架构风格,这是最近一两年出现在各种技术期刊上最多的词汇了。
面向服务的架构关注的是哪些是服务向用户提供的功能,哪些是需要这些功能的系统,这种分离,使用一种服务合约(Service Contract)的机制来完成的。
现在有很多架构设计师和设计开发人员简单的把SOA和Web Services技术等同起来,这是不准确的,事实上Web服务只不过是SOA的一种实现形式,这之间并没有什么必然联系。
本质上来说,SOA体现的是一种新的系统架构,SOA的出现,将为整个企业级软件架构设计带来巨大的影响。
一、SOA的优点
SOA对现代企业架构具有很大的好处,它为应用程序的集成提供了一条重要的新道路。
SOA框架的特点是以服务为中心,它把应用程序划分成具有明确定义接口的模块,从而得到服务和应用程序之间相当松散的耦合。
这样SOA中创建的系统,很大程度上提高了应用系统的可用性、互操作性、可维护性以及可靠性。
在这样的架构中,服务供应商和消费者是两个独立的实体。
这种服务供应商和消费者之间的松散耦合也有利于消费者,因为消费者可以有更多的服务供应商可供选择。
这种松散的耦合也有助于服务提供者,因为同一个服务可以被不同的消费者实现不同业务价值的应用程序,同时服务也更加容易修改,以满足不断变化的业务需求。
并且,通过SOA组装起来的应用系统,可以更加容易的修改,以满足不断变化的业务需求。
SOA的服务是有价的,这就可以极大的增加公司所拥有的数据和拥有资源的价值。
面向服务的架构的优点主要体现在以下几个方面:
降低应用开发费用。
降低维护费用。
增长的公司敏捷性。
生成对应用程序和设备的故障、中断更具免疫力的系统,提高整体的可靠性。
提供了一条应用系统的升级途径,对比使用单一的应用程序的时候,需要替换整个应用系统的标准升级方法,显然更为经济,更不容易失败。
我们来子细讨论一下这几方面的情况。
开发费用下降是一下原因:
代码复用的机会增加了。
大部分的代码都经过了详细测试。
表示层是唯一需要为不同客户定制的层次。
一旦SOA系统被建立起来,并且应用开发的员工培训完毕,就可以看到SOA基础设施的代码有许多地方是可以被复用的,创建新的应用程序成了简单的即插即用操作。这种即插即用操作的能力甚至可以制作专门的组件,通过这些组件之间的松散耦合来实现。
复用很大程度上可以降低开销,尤其是测试方面的代码量。
这是因为真正困难的事情,比如:通信、资源访问以及业务逻辑,都没有改变。
SOA 也可以减低开发新的应用带来的风险。这是因为新应用和原有的SOA服务是完全松散耦合的,组建之间的依赖关系相当小。
事实上,用户界面是变化最大也是对用户影响最大的部分。
SOA 架构在这方面的的优势是非常大的。一般来说,基于浏览器的GUI 通过SOA只能得到有限的好处,但是以Java Swing或者Windows界面作为客户界面,可以得到相当大的好处。
经过良好测试的SOA架构一般可以提供系统的不变部分,它可以对各种不同的客户应用提供服务,在SOA 框架下开发的应用程序耦合确实非常小,这使我们有把握的相信,系统的改变造成无法预期的副作用的风险大大降低了。
对企业来说,SOA带来的增值结果的原因在于,由于它更容易对新情况和新机会做出反应,所以它提高了公司的敏捷性。
二、SOA的特性
我们已经讨论了SOA 的好处,现在让我们看一下SOA 架构的概貌。
总的来说,SOA 有以下特性:
服务具有明确的接口(合约)与策略。
服务通常代表业务功能或者领域。
服务拥有模块化的设计。
服务被松散的耦合在一起。
服务是可以被发现的。
服务的位置对客户是透明的。
服务是独立于传输层的。
服务是独立于平台的。
SOA可以通过很多方式来实现,但最常用的SOA是用Web Service来实现,这主要应为Web Service的独立于平台的特性和其它特性更符合SOA 的规则。
很多文章把SOA和Web Service等同起来,这是不正确的,因为Web Service只不过是SOA在互联网的一种实现,但不是本身意义上的SOA,下面我们将讨论本身意义上的SOA完整定义。
1)服务具有明确的接口与策略
明确定义服务具有的接口(合约)是SOA 的核心定义。
所有的服务都必须发布一个合约,这个合约浓缩了服务和客户之间的协议,这个合约是消费者寻找服务的时候需要阅读的东西。这个合约包含了创建可以访问服务的客户所必需的所有信息,使用这个合约信息来访问服务,称之为绑定(binding)。
合约应该包含两部分内容,一个是接口,另一个是业务策略。
普通对象概念
您可能关注的文档
最近下载
- 心理卫生与心理咨询填空题.doc VIP
- 2023高考英语复习之高频词长难句练习2 全国乙卷七选五(解析版).pdf VIP
- 【高中化学】13个知识点的易错集锦.pdf VIP
- 现场签证单表格.docx VIP
- 中央财经大学后勤处、后勤服务产业集团 全员聘用管理暂行办法.doc VIP
- 2025中央财经大学后勤服务产业集团工程管理岗招聘1人(非事业编制)笔试备考试题及答案解析.docx VIP
- 最新国家开放大学国开电大《离散数学》形考任务+大作业答案.pdf VIP
- 现场签证单表格优质资料.doc VIP
- 24J331地沟及盖板参考图集.docx
- 汽车维修清单表(含使用说明).docx VIP
文档评论(0)