SOA学习

来源:互联网 发布:深圳经纬之创网络 编辑:程序博客网 时间:2024/06/08 15:12

SOA学习:

SOA 是一种分布式的软件模型

SOA 的主要组件包括 服务、动态发现和 消息

²        服务是能够通过网络访问的可调用例程。服务公开了一个接口契约,它定义了服务的行为以及接受和返回的消息。术语 服务常与术语 提供者互换使用,后者专门用于表示提供服务的实体。

²        接口通常在公共注册中心或者目录中发布,并在那里按照所提供的不同服务进行分类,就像电话簿黄页中列出的企业和电话号码一样。客户(服务消费者)能够根据不同的分类特征通过动态查询服务来查找特定的服务。这个过程被称为服务的 动态发现。

²        服务消费者或者客户通过 消息来消费服务。因为接口契约是独立于平台和语言的,消息通常用符合 XML 模式的 XML 文档来构造。

下图所示为SOA中的角色示意图。

Web 服务建立在开放标准和独立于平台的协议的基础之上。Web 服务通过 HTTP 使用 SOAP(一种基于 XML 的协议),以便在服务提供者和消费者之间进行通信。服务通过 WSDLWeb Service Definition Language)定义的接口来公开,WSDL 的语义用 XML 定义。UDDI 是一种语言无关的协议,用于和注册中心进行交互以及查找服务。所有这些特性都使得 Web 服务成为开发 SOA 应用程序的优秀选择。

J2EESOA体系结构

1.4 版的 J2EE 平台通过新的 JAX-RPC 1.1 API 提供了完整的 Web 服务支持,这种 API 支持基于 servlet 和企业 bean 的服务端点。JAX-RPC 1.1 基于 WSDL SOAP 协议提供了与 Web 服务的互操作性。J2EE 1.4 平台也支持 Web Services for J2EE 规范(JSR 921),后者定义了 Web 服务的部署需求并利用了 JAX-RPC 编程模型。除了几种 Web 服务 API 之外,J2EE 1.4 平台还声称支持 WS-I Basic Profile 1.0WS-I Basic Profile 标准让 Web 服务克服了不同编程语言、操作系统和供应商平台之间的障碍,从而使多种应用程序之间能够交互。这意味着除了平台独立性和完整的 Web 服务支持之外,J2EE 1.4 还提供了跨平台的 Web 服务互操作性。

 
原创粉丝点击