关于soa的7个问题

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

对于SOA,尤其是像开发人员和CIO等仍有若干关键问题需要回答。
Web 服务以及越来越多的面向服务架构(Service Oriented Architecture,SOA)已经在市场上投放了大量广告。两者都可以给企业带来广泛的短期和长期利益。但对于SOA,尤其是像开发人员和CIO等仍有若干关键问题需要回答。

问:SOA的前提是能够使应用程序像服务那样工作。软件如何像服务一样工作呢?

答:没有SOA,软件包是被编写为独立的(self-contained)软件,即在一个完整的软件包中将许多应用程序功能整合在一起。实现整合应用程序功能的代码通常与功能本身的代码混合在一起。我们将这种方式称作软件设计"单一应用程序"。与此密切相关的是,更改一部分代码将对使用该代码的代码具有重大影响,这会造成系统的复杂性,并增加维护系统的成本。而且还使重新使用应用程序功能变得较困难,因为这些功能不是为了重新使用而打的包。

SOA旨在将单个应用程序功能彼此分开,以便这些功能可以单独用作单个的应用程序功能或"组件"。这些组件可以用于在企业内部创建各种其他的应用程序,或者如有需要,对外向合作伙伴公开,以便用于合作伙伴的应用程序。

"服务"的概念是要使用与实施细节无关的标准化接口来构建这些"组件"。针对一套应用程序服务的Web服务描述语言文档,描述需要作为请求特殊服务(例如,"检查库存"功能可能需要零件数)输入来传输的数据名称和类型,并描述服务响应的细节(它可能返回表示库存中零件数量的一个整数)。

这些详细信息看上去好像与 Java、C++、COBOL 等中实施的功能相同,因此,服务的请求程序无需知道使用的何种语言,而且可以使用任何语言来编写请求程序。这就使一个平台上的服务可以和为另一个平台编写的应用程序集成。互操作性的关键是请求和响应消息,例如,使用SOAP消息发送,其消息使用 XML 编写代码。

问:请举例说明 SOA 如何使企业受益。

答:关键的优势是互操作性,可以使用任何平台之间的功能,而与编程的语言、操作系统和计算机类型等等无关。在上述示例中,"检查库存"功能可能已经编写为一个应用程序要求的服务,例如,监控库存并在需要时自动重新定购的服务,但我们后来发现,同样的服务无需修改即可用于支持由员工使用的基于 Web 的库存监控工具。

就内部而言,应用程序的重复使用是一项关键优势,因为它可以降低开发成本。服务的重复使用,其长期作用在于减少企业中冗余的功能,简化基础架构,从而降低维护代码的成本。通过按服务的使用者来组织应用程序,与传统的编程技术相比,我们获得一个要灵活敏捷得多的集成模型,使我们可以迅速修改业务流程模型。

就外部而言,为服务交互而详细定义的"合同"使业务合作伙伴之间的交互"自由联合",提供集成所必需的稳定性,并提供更改基层软件(underlying software)问题的一个解决方案。当保留了相同的消息格式时,支持该格式的软件只要仍然支持消息合同,则可以按需进行更改。只要它支持相同的消息格式,甚至可以使用另一种编程语言的实施来完全替换系统,请求程序无需更改。当消息合同不断发展而必须更改时,与相当困难的任务,即支持多个版本的程序 API 和文件格式相比,它使用版本控制(versioning),更容易作为过渡策略支持多个版本的应用程序。

这些是部分关键益处,还有许多其他益处。

问:SOA与Web服务以及SOA和网格计算之间是何关系。

答:SOA是一种面向业务应用程序系统的体系架构设计风格,但可以应用于其他系统,包括中间件技术,例如网格计算。

Web服务是可以用于创建SOA的一套标准。尽管没有Web服务标准也可能创建SOA(例如,在SOAP之前,人们已经在HTTP或JMS上使用XML来实现相似的结果),但运用Web服务标准却是我们目前针对与外部软件交互的最佳方法。

网格计算是一种系统管理策略,其目标是最大限度地减少硬件资源的使用。例如,当突然的需求溢出指定的服务器时,它可能临时将一些请求转向相对没那么繁忙的服务器。网格计算设计为一种面向服务架构(用于调整网格计算的服务叫做网格服务)。

随着我们转向SOA,我们将看到该方法用于支持各种其他新的系统功能。另外一个示例是自主计算伙子管理系统。事实上,SOA是Web服务高级功能的基础,例如WS-Trust和联合身份识别管理规范。

问:因为还没有通用互操作性标准,SOA最大的问题不仍然是供应商中心性(vendor-centricity)吗?

答:有一些基本标准正好适用于Web服务,它们可以用于实施面向服务架构。XML和XML方案分别自1998年和2001年就已成为标准。SOAP 1.2自2003年6月成为标准。UDDI在2003年夏天标准化。WS-Security在2004年4月成为标准。

除了著名标准机构(例如W3C和OASIS)支持的这些正式标准以外,许多"技术建议书规范"也被广泛接受,并作为事实标准得到充分支持。例如,直到 W3C完成WSDL 2.0为止,要求在其产品中支持Web服务的大多数供应商都支持WSDL 1.1规范。

事实上,目前大部分软件供应商对Web服务标准的支持,已导致使用Web服务来广泛实施SOA。

问:SOA如何影响SLA?而您如何让SLA适合您的SOA?

答:当前企业之间的SOA实施通常侧重于改善合作伙伴之间现有业务的效率。同样,性能保证的概念并不是像方便的互操作性和自由联合集成那样的问题,它们可以借助Web服务标准来实现。

当服务成为企业付费的产品时,对特定水平的性能或可用性的保证,以及其它服务质量注意事项具有更为重要的作用。我们可以想象这在将来会成为一个常见要求,正在进行这方面的工作以支持该模型。

问:我如何着手构建 SOA?

答:最佳的方法时开始构建较小的SOA,侧重于提高当前缺乏效率的交互性。例如,假设使用一个系统上需要重新键入到另一个系统的打印报告,将两个计算机系统紧密联系在一起,这会消耗时间、浪费成本,导致出错,而且数据无法保持罪行。可以设计一个简单的基于Web服务SOA项目,直接链接信息,将含更新的SOAP消息发送到合作伙伴系统,而不是打印报告。

开始简单的SOA使企业可以在作出大投资之前先衡量ROI,并在出现大的问题之前获得小改善的经验。

CIO在购买软件时应该询问供应商关于对Web服务和SOA的支持,作为一个重要的注意事项。应该检查新应用程序的开发,以便考虑是否某些应用程序功能可能需要用于其他目的,以及可以嵌入对Web服务标准的支持以支持重复使用。

最终要完成大规模的企业转型,可能需要通过建立企业服务总线(形成SOA的骨干网或神经系统)来开始该工作。然后以企业合理的节奏,将服务提供商何服务请求程序逐渐添加到ESB。随着IT的SOA的增长,ESB成为在服务水平上连接应用程序,并调节消息流量以提高效率和可靠性的一种有力方式。

问:管理SOA需要哪些新的服务管理技能?

答:在运用Web服务之前,因缺乏标准和自由联合的策略,合作伙伴整合受到严重限制。随着我们开始使用Web服务和SOA来整合合作伙伴,我们可以发现,使用业务合作伙伴所提供的功能的IT系统已经开始依赖于这些功能的可用性。我们从内部管理我们自己服务的可用性转向要求监视和管理(可能有许多)企业之间的可用性。这明显大大增加了管理IT系统的复杂性,但它也带来了巨大的价值,这就是为什么许多企业要转到这个方向的原因。

Web应用程序系统正在不断发展以支持Web服务标准。"Web服务分布式管理"或WSDM标准正在由OASIS开发,对Web服务管理提供标准化的支持,通过使用Web服务来实现对不同平台的管理,满足涉及独立业务实体的大规模SOA对分布式管理的要求。

告别‘服务孤岛’:用FDBus的分层服务发现策略,搞定整车SOA组网难题 本文深入解析FDBus分层服务发现架构如何解决整车SOA组网中的服务孤岛问题。通过Name Server与Host Server的协同设计,实现跨域通信、安全隔离和系统可靠性,显著降低服务发现延迟60%以上。文章详细介绍了节点级、域内和整车级服务发现的优化策略,为汽车电子架构师提供实用解决方案。 阅读详情

相关推荐

CentOS 7.9 Bind 主从 DNS 服务器-日常维护001篇【20260514】

解析成功率 ≥ 99.99%平均响应时间 < 50ms主从同步延迟 < 30s。

老韩的Linux云计算架构师进阶之路 175

如何收集EBS SOA Log

调用Oracle EBS的Webservice出错了,如何查看SOA的日志? 1. 从前台 使用用户访问系统管理员职责 路径Oracle Applications 管理器&gt; 日志. Log Setup 在Site区((当然可以设置其他级别,比如职责级别)),设置日志项 重启oafm container.($ADMIN_SCRIPTS_HOME/adoafmctl.sh.) 重...

jishublog 351

调用Oracle EBS SOA服务时常见的几个错误

1. Before usage of a Oracle E-Business Suite (EBS) Integrated SOA Gateway (ISG) service, it should be generated and deployed. See, page “TroubleShooting Service Generation” for errors on service gene...

jishublog 1754

oracle ebs webservers email 怎么设置,调用Oracle EBS Webservice常见的几个错误

Fault from server: Missing wsse:Security in SOAP Header.Cause: This error is thrown by server if SOAP request does not contain a Web Service Security Header in SOAPHeader section of SOAPEnvelope.Resol...

weixin_29061465的博客 442

EBS 服务的重启

EBS 服务的重启 停止Oracle Applications 服务的顺序为:停止应用产品相关服务,再停止数据库相关服务; 启动Oracle Applications 服务的顺序为:启动数据库相关服务,再启动应用产品相关服务;   停止应用和数据库服务器 停止应用服务器(使用 applprod 用户登录系统) cd /d01/oracle/PROD/inst/apps/PROD_e

jovitang的专栏 5503

拨开SOA的面纱

SOA是英文Service-Oriented Architecture,即面向服务架构的缩写。这个词汇最近一两年频频出现在各种技术期刊上。但是一直以来对于SOA到底是什么没有明确的回答;SOA有什么特点?适合用于解决哪些问题?与其他的技术有什么区别与联系?Web Service和SOA又是什么关系?SOA的出现对于软件架构设计有什么影响?本文将就上面提到的这些问题,尝试根据作者自己的理解给出SOA

918

关于SOA7问题

对于SOA,尤其是像开发人员和CIO等仍有若干关键问题需要回答。Web 服务以及越来越多的面向服务架构(Service Oriented Architecture,SOA)已经在市场上投放了大量广告。两者都可以给企业带来广泛的短期和长期利益。但对于SOA,尤其是像开发人员和CIO等仍有若干关键问题需要回答。 问:SOA的前提是能够使应用程序像服务那样工作。软件如何像服务一样工作呢? 答:没有...

weixin_30339457的博客 75

SOA达人迷》—第2章2.7节第7问题:公司的技术是否支持公司和IT部门的管理标准?...

本节书摘来自异步社区《SOA达人迷》一书中的第2章2.7节第7问题:公司的技术是否支持公司和IT部门的管理标准?,作者【美】Judith Hurwitz , Robin Bloor , Marcia Kaufman , Fern Halper,更多章节内容可以访问云栖社区“异步社区”公众号查看。 2.7 第7问题:公司的技术是否支持公司和IT部门的管...

weixin_33774883的博客 77

如何解决SOA产品给企业带来的安全问题

几乎有一半的IT高管认为在实施面向服务架构(SOA)和以Web服务为基础的应用程序期间最关键的问题就是安全威胁问题。根据CA公司赞助的一次调查显示,在SOAWeb服务为企业提供创新途径、客户以及合作伙伴的IT应用和整合需求的同时,他们也带来了急需解决的重大安全挑战。 该调查发现44%的IT高管在实施SOAWeb服务的同时发现了安全威胁。 受访高级管理人员们在过去一年中,平均受到了来自外部的7次...

baiguomeng 80

废除“竖井”转向“SOA” 为什么要采用SOA

目前主流的软件项目的架构类似“竖井”,在这个“竖井”中有数据库,中间层、客户端表现层等。每个应用系统的数据库分属在不同的竖井中,当我们的信息化发展到一定程度,已开发和上线运行的系统需要整合或实现数据共享时,我们不得不在竖井中“穿洞”透过不同的“竖井”来访问数据库。一个数据库中的对象发生了变化,对其他系统的影响就变得“不可知”和“不可控”了。 当我们想调用系统的服务时也要突破竖井。如果将...

weixin_30739595的博客 175

SOA面向服务架构打包部署

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34152820的博客 789

SOA架构设计

  架构是—套构建系统的准则,通过这套准则,把—个复杂的系统划 分为一套更简单的子系统的集合,这些子系统之间保持相互独立,并与 整个系统保持一致,而且每—个子系统还可以继续细分下去,从而构成 —个企业级架构。 SOA是一种面向企业级服务的系统架构,简单来说,SOA就是一种 进行系统开发的新的体系架构,在基于SOA架构的系统中,具体应用程 序的功能是由一些松耦合并且具有统一接口定义方式的组...

aoaoshuai11111的博客 247

智能优化算法-海鸥优化算法Seagull Optimization Algorithm(附Matlab代码)

海鸥优化算法Seagull Optimization Algorithm的主要灵感来源于自然界中海鸥的迁徙和攻击行为。这些行为是数学建模和实现的,以强调在给定搜索空间中的探索和利用。SOA算法的性能在44个基准测试函数上,比较了SOA算法与9种知名的元启发式算法的性能。分析了该算法的计算复杂度和收敛性。然后将其用于解决七个受限的现实工业应用,以证明其适用性。实验结果表明,该算法能够解决具有挑战性的大规模约束问题,与其他优化算法相比具有很强的竞争力。

weixin_44028734的博客 208

Android Support V4, V7, V13常见为题汇总

一、Android Support V4, V7, V13是什么? 本质上就是三个java library。 二、为什么要有support库? 如果在低版本Android平台上开发一个应用程序,而应用程序想使用高版本上拥有的功能,则需要使用Support库,即过度包。 三、3个Support 库的区别和作用是什么? 1、Android Support v4 :是最早(20

OldTogether的博客 797

2016年终总结

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_33898233的博客 75

智慧医疗基础平台-21

专用于医院数据集成平台的ESB称为医院服务总线(Hospital Service Bus,HSB),HSB支持主流的开放标准和规范,提供可靠的消息传输机制,建立服务之间的通信、连接、组合和集成的服务动态松耦合机制,为基于SOA的应用系统的服务集成提供支撑。医疗信息平台的建设需要与院内多个业务应用系统进行对接,而这些系统由不同开发商进行建设,采用不同的的操作系统、不同的开发环境、不同的软件体系架构、不同的数据格式等,数据来源、环境、格式复杂,可采用ETL方式进行数据的处理。平台应对这些实体提供唯一的标识。

rlinux的专栏 1951

Tivoli Application Manager for Transactions 实现可用性和响应时间管理:案例研究

转自http://www.ibm.com/developerworks/cn/webservices/ws-itcamtransaction/ 案例介绍 一个股票交易公司为最终用户提供了股票交易服务。最终用户通过 Web 浏...

cnpm89348的博客 342
上一篇: SOA特征简介与Web扩展服务的前景展望
下一篇: 架构设计师与SOA(第一部分)
dotnetgroup
博客等级 码龄21年 2粉丝 83原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值