首页 > 代码库 > 案例分析之面向服务架构

案例分析之面向服务架构

 

案例分析之面向服务架构

Table of Contents

  • 1 案例分析之面向服务架构
    • 1.1 定义
    • 1.2 模型
    • 1.3 SCA构件
    • 1.4 webservice
      • 1.4.1 WSDL
      • 1.4.2 UDDI
      • 1.4.3 SOAP

1 案例分析之面向服务架构

 

1.1 定义

W3C:SOA是一种应用程序体系结构,在这种体系结构中,所有功能都定义为独立的服务,这 些服务带有明确的可调用接口,能够以定义好的顺序调用这些服务形成业务流程。

SOA的特征:松散耦合、粗粒度、标准化接口。

1.2 模型

在SOA模型中,所有功能都定义为独立的服务,所有服务通过交互和协调完成业务的整体逻 辑,所有服务通过服务总线或流程管理器连接,这种松散耦合的体系结构使得各服务之间无 需考滤双方的内部实现细节,以及部署在什么平台上。

http://image.mamicode.com/info/201409/20180110154004126279.png

SOA模型

SOA开发生命周期:建模、组装、布署、管理。

1.3 SCA构件

SCA(Service Component Architecture)服务构件体系结构中的构件与传统构件的主要区别:

  • 服务构件往往是粗粒度的,而传统构件以细粒度居多
  • 服务构件的接口是标准的,主要是WSDL,而传统构件接口常以具体的API形式出现
  • 服务构件的实现现与具体语言无关,而传统构件常绑定某种特定的语言
  • 服务构件可以获得构件容器提供的QoS服务,而传统构件完全由程序代码直接控制

1.4 webservice

http://image.mamicode.com/info/201409/20180110154004128232.png

webservice

webservice作为SOA实现技术,应用系统可分为6个部分:

  • 底层传输层:负责消息的传输机制,协有HTTP,SMTP
  • 消息协议层:描述和定义服务之间进行服务调用所需的技术标准,标准有SOAP,REST
  • 服务描述层:以一种统一的方式描述服务接口和消息交换方式,主要是WSDL
  • 服务层:是SOA的具体使用,对遗留系统进行包装,通过发布的WSDL描述被定位和调用
  • 业务流程层:功能是支持服务发现,服务调用,将业务流程从服务的底层抽象出来,标准 有WSBREL(业务流程执行语言)
  • 服务注册层:功能是支持服务提供者通过WSDL发布服务,支持服务使用者查找所需服 务信息,协议是UDDI

1.4.1 WSDL

WSDL是服务的描述语言,WSDL有一套基于XML的定义,WSDL重点是服务描述,包含服务实现 定义(Service Implementtation Definition),服务接口定义(Service Interface Definition)。

http://image.mamicode.com/info/201409/20180110154004149717.png

WSDL

服务接口定义就是一种抽象的,可重用的定义,行业标准组织可以使用这些接口定义一些标 准的服务类型,服务实现者可以根据这标准实义实现具体的服务。

服务实现定义描述给定服务提供者如何实现特定的服务接口,服务实现定义包括服务和端口 描述,服务描述了一个特定web服务所包含的所有访问入口的布署细节,端口描述了一个特 定访问入口的布署细节。

具体来说,有两个不同时期使用WSDL,一个是在编写调用服务的客户端代码的设计时期,一 个是在程序运行时期。

1.4.2 UDDI

统一描述、发现、集成协议UDDI,在UDDI协议规范中,包含以下3部分内容:

  • UDDI数据模型:UDDI数据模型是一个用于描述业务服务和WEB服务的XML Xchema
  • UDDI API:UDDI API是一组用来查找和发布UDDI数据的方法,UDDI API基于SOAP
  • UDDI 注册服务:UDDI注册服务是WEB服务的基础设施,UDDI注册服务对应服务注册中心的 角色

1.4.3 SOAP

SOAP以XML形式提供简单的、软量级的在分散或分布环境中交换结构化和类型信息的机 制,SOAP主要包含以下4个部分:

  • SOAP封装结构:封装(Envelope)、SOAP头(Header)、SOAP体(Body)
  • SOAP编码规则
  • SOAP RPC表示
  • SOAP绑定

Date: 2014-09-23 11:12:50

Author:

Org version 7.8.06 with Emacs version 23

Validate XHTML 1.0

案例分析之面向服务架构