面向服务架构风格

关键目标关键技术实现方式WEB Service服务注册表企业服务总线ESB特点:

SOA是一种

粗粒度、松耦合服务架构,服务之间通过简单、精确定义接口进行通信,不涉及底层编程接口和通信模型。

在SOA中,

服务是一种为了满足某项业务需求的操作、规则等的逻辑组合,它包含一系列有序活动的交互,为实现用户目标提供支持。

SOA并不仅仅是一种开发方法,还具有管理上的优点,管理员可直接管理开发人员所构建的相同服务。

多个服务通过企业服务总线(ESB)提出服务请求,由应用管理来进行处理

关键目标

实施SOA的关键目标是实现企业IT资产重用的最大化

在实施SOA过程中要牢记以下特征: 可从企业外部访问、随时可用(服务请求能被及时响应)、粗粒度接口(粗粒度提供一项特定的业务功能,而细粒度服务代表了技术构件方法)、服务分级、松散耦合(服务提供者和服务使用者分离)、可重用的服务及服务接口设计管理、标准化的接口(WSDL、SOAP、XML是核心)、支持各种消息模式、精确定义的服务接口。

从基于对象到基于构件再到基于服务,架构越来越松散耦合,粒度越来越粗,接口越来越标准。 基于服务的构件与传统构件的区别有四点:

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

关键技术

SOA中应用的关键技术如下表。

功能协议发现服务(可见)UDDI DISCO描述服务(可见)WSDL XML Schema消息格式层(可见)SOAP REST编码格式层(不可见)XML(DOM,SAX)传输协议层(不可见)HTTP、TCP/IP、SMTP等

UDDI:是一套基于WEB的、分布式的、为WebService提供的、信息注册中心的实现标准规范,同时也包含一组使企业能将自身提供的WebService注册,以使别的企业能够发现的访问协议的实现标准,用于WEB服务注册统一描述、发现及集成。

WSDL(WebService描述语言)∶将Web服务描述定义为一组服务访问点,客户端可以通过这些服务访问点对包含面向文档信息或面向过程调用的服务进行访问(类似远程调用),用于描述服务。

SOAP(简单对象访问协议)︰是用于交换XML编码信息的轻量级协议,用于传递信息。

XML(可扩展标记语言)︰是WebService平台中表示数据的基本格式,用于数据交换。

实现方式

SOA的三种实现方式:WEB Service、服务注册表和企业服务总线ESB。

WEB Service

服务提供者、服务注册中心(中介,提供交易平台,可有可无)、服务请求者。服务提供者将服务描述发布到服务注册中心,供服务请求者查找,查找到后,服务请求者将绑定查找结果。

服务注册表

服务注册:应用开发者(服务提供者)在注册表中公布服务的功能。服务位置:服务使用者(服务应用开发者),帮助他们查询注册服务,寻找符合自身要求的服务。服务绑定:服务使用者利用检索到的服务接口来编写代码,所编写的代码将与注册的服务绑定,调用注册的服务,以及与它们实现互动。

企业服务总线ESB

简单来说是一根管道,用来连接各个服务节点。ESB的存在是为了集成基于不同协议的不同服务,ESB做了消息的转化、解释以及路由的工作,以此来让不同的服务互联互通。

包括:客户端(服务请求者)、基础架构服务(中间件)、核心集成服务(提供服务)。

特点:

SOA的一种实现方式,ESB在面向服务的架构中起到的是总线作用,将各种服务进行连接与整合;描述服务的元数据和服务注册管理;在服务请求者和提供者之间传递数据,以及对这些数据进行转换的能力,并支持由实践中总结出来的一些模式如同步模式、异步模式等;发现、路由、匹配和选择的能力,以支持服务之间的动态交互,解耦服务请求者和服务提供者。高级一些的能力,包括对安全的支持、服务质量保证、可管理性和负载平衡等。

精彩链接

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: