首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >什么是SOA (面向服务的体系结构)?

什么是SOA (面向服务的体系结构)?
EN

Stack Overflow用户
提问于 2009-07-07 15:57:06
回答 11查看 15.1K关注 0票数 59

如果你愿意,可以称我为巨魔,但我是认真的:新的面向服务架构趋势与我15年前构建的客户端服务体系结构到底有什么不同?我不断听到面向服务的体系结构,但我看不出它与我们一直所做的有什么不同。

回到10年前,我的公司有多个客户(使用多种语言)与相同的服务对话。它不是XML (它是一种称为Microsoft DCOM的二进制协议),也不能通过WSDL自动发现,但这也没关系,因为读取文档也很容易。我们的系统甚至在某种意义上是“开放的”,我们记录了足够的文档,允许第三方与我们的服务对话。我们不是先锋--我10年前认识的所有其他公司都在做同样的事情。

我看到当时和现在唯一的区别是,现在互联网上只有一种服务可用,而10年前,每个客户都会托管自己的服务实例。但这不是架构问题--服务所在的物理位置对使用该服务的任何人都是透明的。

那么,SOA与我们多年来一直在做的事情到底有什么不同呢?SOA仅仅是一个营销术语,代表了实际上在很久很久以前就变得普遍的最佳实践吗?或者,我是否错过了一些与我们一直在做的不同的SOA的细节?

EN

回答 11

Stack Overflow用户

发布于 2009-07-07 16:35:52

忘了XML吧。忘掉WSDL吧。SOA不是一种你可以买到的技术,尽管它经常以这种方式销售。

SOA的真正意义在于IT组织。SOA的要点是避免大量具有隔离数据池的“应用程序”,这些应用程序要么根本不相互通信(因此经常是重复数据),要么只是通过适配器层或EAI系统以一种低效、有缺陷的方式进行通信。

对于大公司来说,这是一个严重的问题--他们有数百个独立的应用程序,但没有足够的集成。到处都是重复和不一致的数据,其结果是客户被激怒了,真正的钱被损失了,因为计费部门一直在为取消的订单发送发票,而客服代表甚至找不到订单,因为它在订单跟踪系统中被取消,而不是在计费系统中。

SOA应该通过从头开始设计每个应用程序,以标准化、跨平台的方式发布其服务,以便其他应用程序可以访问数据,而不必复制它,从而解决这个问题。

从业务角度来看,这是非常可取的。时髦的炒作和首字母缩写soup只是IT公司利用这种可取之处的尝试。不幸的是,这(错误地)导致许多人(包括CEO)相信SOA是一种可以购买的产品,它将神奇地提高您的it效率,而没有意识到这只有在您重新组织整个IT (很可能还有您的业务部门)以与SOA兼容的情况下才会发生。

票数 88
EN

Stack Overflow用户

发布于 2009-07-07 17:33:49

让我使用集成地狱中著名的替罪羊:电信公司。

早在20世纪90年代,手机公司在我所在的社区就已经供过于求,几乎和90年代中期放松通信管制带来的长途经销商一样多。随着时间的推移,贝尔大西洋公司成了Verizon的巨头,吞并了一家又一家公司(至少还有一家Baby Bell)。这些公司中的每一家都有技术到位,在塔楼中,在交换设备中,在计费系统中,这些技术彼此完全不兼容。

因此,公司说,好吧,我们有这些模型来做生意,让我们以WSDL/SOAP/XSD的形式为我们的所有技术提供一个友好、一致的面孔--我们今天拥有的每种语言和系统都可以与此接口!慢慢地,但肯定的是,该公司正在使其所有系统都能够报告功能,为加载和计费目的而被询问,并公开给未来的远见者以尚未考虑到的方式进行利用。

任何人都可以构建SOA客户端。任何有wget和文本编辑器的人。任何人都可以解析结果(XML)。

这就是与过去的客户机/服务器架构的根本不同之处。前几天,我刚刚和一个人讨论了如何将基于Cobol和Smalltalk的系统连接到SOA架构。这是一个很容易解决的问题。请告诉我,您的DCOM系统也可以这样说。

票数 14
EN

Stack Overflow用户

发布于 2011-07-01 19:59:10

SOA只是一种设计服务的方式,其中的模块之间通过“”进行通信。就是这样,现在的下一个问题是:什么是“服务”,它与常规的“方法”有什么区别?

服务是执行单个原子业务操作的操作。这种原子性使得它可以从许多模块中高度可重用的。然后,一个复杂的业务操作就是以特定顺序调用这些服务的集合。

SOA与特定的技术无关,只是一种特定的设计方式。

票数 12
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1093204

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档