SOA 与其他技术的关系! --苏振兴

转载 2006年05月25日 07:28:00

SOA 可以与许多其他技术结合在一起使用,然而,组件的封装和聚合在其中扮演着重要的角色。如前所述,SOA 可以是一个简单对象、复杂对象、对象的集合、包含许多对象的流程、包含其他流程的流程,甚至还可以是输出单一结果的应用程序的整体集合。在服务之外,它可以看作是单个实体,但是在其自身中,它可以具有任何级别的复杂性(如果必要的话)。出于性能方面的考虑,大多数 SOA 服务并没有下降到单一对象的粒度,并且更适合于大中型组件。

除了可能离不开 XML 和 WSDL 之外,SOA 并不是特定于语言的。可以用任何编程语言来实现服务,只要这种编程语言可以生成服务并且可以与 WSDL 结合在一起使用就可以了。SOAP 本身并不是绝对需要的,但它是通用的消息传递系统。因此,可以使用几乎任何一种编程语言和支持 WSDL 的平台来实现 SOA 中的成员服务。

基于通用对象请求代理体系结构(Common Object Broker Request Architecture,CORBA)的应用程序有许多组件必须连接到 SOA 中。虽然 CORBA 中的接口描述语言(Interface Description Language,IDL)在概念上类似于 WSDL,但它不是严格的,因而首先需要将其映射到 WSDL。另外,需要使用更高级的 SOA 协议(比如用于流程和策略管理的协议),而不是 CORBA 中的类似的概念。请记住,这是 CORBA 组件(表示为服务)需要与 SOA 服务交互的情况;在 CORBA 模型中,所有的独立子集仍然可以像以前一样工作。

由对象管理组(Object Management Group)提出并在许多 IBM Rational 产品中得以实现的模型驱动体系结构在一个更抽象的层次上与 SOA 的概念具有很强的相关性。MDA 基于这样的概念,任何软件流程都可以定义为模型甚至是元模型(即模型的模型),然后可以将这些模型和元模型转换成应用程序的实际组件。因此,MDA 创建了一个模型,这个模型先编译成软件应用程序,而软件应用程序接着又编译成可执行程序,这样就可以在平台上运行了。MDA 并不区分服务和对象这两个概念,但是它确实允许模型由其他子集模型本身组成,这类似于 BPEL(SOA 的一个核心组件)中的流程聚合的概念。

SOA 和 Web 服务是独立于编程语言的,但 Java 是主要的开发语言之一。可以使用定义良好的 Java 接口以及各种协议丰富的 Java 实现为正在构建这个模型的开发人员提供了优势。Java 在此担当了开发每个服务的功能、管理数据对象和与其他在逻辑上封装在服务内的对象进行交互的角色。

SOA 与 Web 的另一个重要的关系是自主计算和网格计算的概念。自主计算的概念应用于管理分布式服务体系结构的范围,具体来说,就是帮助维护策略和服务级协议以及 SOA 系统的总稳定性。

另外,网格计算可以以两个级别与 SOA 系统一起使用。网格是分布式计算的一种形式,它利用分布式特性和服务之间的交互来为 SOA 应用程序提供计算支持。在这种情况下,网格起到了框架的作用,其中实现了一些或所有单独的服务。因此,SOA 应用程序可以是网格服务的消费者。

在另一方面,网格本身也可以构建在 SOA 之上。在这种情况下,每个操作系统服务都是构成整个 SOA 应用程序的成员,而 SOA 应用程序就是网格本身。因此,单独的网格组件既可以使用 Web 服务进行通信,又可以以 SOA 的方式进行交互。总而言之,网格系统可以是 SOA 本身,也可以提供服务来在其上构建应用程序级 SOA 模型。

相关文章推荐

Architectural Pattern(4)-SOA相关名词概念解释(SCA、ESB、JBI、BPEL、WEB服务)以及关系说明

SOA,SCA,ESB,WebService,BPEL,JBI

ESB与SOA的关系

ESB与SOA的关系 转自:http://lavasoft.blog.51cto.com/62575/165597/ SOA的概念渐渐清晰了。   有关ESB的概念,已经吵了好...

【SOA】矩阵式客户关系管理设计、实现方案

这学期开始,正式开始了复旦MSE工程硕士的在读生涯,其教学计划中有一门选修课程为《客户关系管理》,一向习惯了理工科的我想换换口味,也希望从另一个角度开阔一下视野,所以毫不犹豫的选择了它,乍看上去貌似跟...

SOA和云计算的关系

首先对于SOA是解决集成的问题,这个集成包括了数据集成,应用集成,流程集成和B2B集成。为了解决集成问题在实施SOA时候需要分两个大步骤,即SOA本身的定义:其一是将业务系统能力分解为独立,自治,离散...
  • libo250
  • libo250
  • 2015年06月07日 12:59
  • 468

Web Service 与 SOA 关系 区别

引: SOA 不是Web服务 Web服务是实现SOA的方式之一。   对于面向同步和异步应用的,基于请求/响应模式的分布式计算来说,SOA是一场革命。一个应用程序的业务逻辑(busin...

正确理解SOA、SaaS和云计算的关系

随着云计算的概念受到越来越多的人的推崇和论证,“云上的日子”看起来离我们越来越近了。几乎所有的IT厂商都不约而同了启动了各自的云计算战略。但是由于每个企业的战略出发点不同,企业推出的云计算概念也有所差...

SOA与SaaS的关系

SOA和SaaS两者之间存在着怎样的联系?一个是服务基础架构(Service-Oriented ArchITecture),一个是软件即服务(Software as a Service)。至少,他们都...

SOA和EA的关系

SOA和EA的关系 原址:http://blog.csdn.net/cissyring/article/details/1764656 分类: EA SOA2007-08-30 0...

SOA架构下如何解决服务与服务使用者之间的关系?

作者:任成钢    来源:TechTarget中国 原文:http://www.searchsoa.com.cn/showcontent_54444.htm 【TechTarget中国原创...

深入解读ESB与SOA的关系

时至今日,SOA的概念渐渐清晰了。有关ESB的概念,已经吵了好多年了,还是没有定论。 我个人认为,ESB本来就是抽象的概念,而且内涵丰富,在不同的场合含义不同。因此应该从不同的角度来认识。一、SOA...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章: SOA 与其他技术的关系! --苏振兴
举报原因:
原因补充:

(最多只允许输入30个字)