SOA面向服务架构

SOA面向服务架构


目录
1 SOA简介 1
1.1 什么是SOA 1
1.2 SOA的特性 1
1.3 SOA的工作流程 1
1.4 SOA的相关标准 2
2 SOA展望 3
2.1 SOA已死,服务永存 3


1 SOA简介
1.1 什么是SOA
面向服务的体系结构(Service-Oriented Architecture,SOA)是一个组件模型。
SOA是一种架构模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互。

1.2 SOA的特性
代码重用 松耦合 平台独立 语言无关
1、可重用
  一个服务创建后能用于多个应用和业务流程。
  2、松耦合
  服务请求者到服务提供者的绑定与服务之间应该是松耦合的。因此,服务请求者不需要知道服务提供者实现的技术细节,例如程序语言、底层平台等等。
  3、明确定义的接口
  服务交互必须是明确定义的。Web服务描述语言(Web Services Description Language,WSDL)是用于描述服务请求者所要求的绑定到服务提供者的细节。WSDL不包括服务实现的任何技术细节。服务请求者不知道也不关心服 务究竟是由哪种程序设计语言编写的。
  4、无状态的服务设计
  服务应该是独立的、自包含的请求,在实现时它不需要获取从一个请求到另一个请求的信息或状态。服务不应该依赖于其他服务的上下文和状态。当产生依赖时,它们可以定义成通用业务流程、函数和 数据模型。
  5、基于开放标准
 当前SOA的实现形式是Web服务,基于的是公开的W3C及其他公认标准.采用第一代Web服务定义的SOAP、WSDL和UDDI以及第二代Web服务定义的WS-*来实现SOA。

1.3 SOA的工作流程
SOA工作流程如下:

[img]http://dl.iteye.com/upload/attachment/0070/4944/a3dee5e1-9e75-3c5d-a67b-966854d3a2bc.jpg[/img]

SOA架构中有三种角色:
• 服务提供者:发布自己的服务,并且对服务请求进行响应。
• 服务注册中心:注册已经发布的web service,对其进行分类,并提供搜索服务。
• 服务请求者:利用服务中心查找所需要的服务,然后使用该服务。
SOA的三种操作:
• 发布操作:为了使服务可访问,需要发布服务描述以使服务使用者可以发现它。
• 查找操作:服务请求者定位服务,方法是查询服务注册中心来找到满足其标准的服务。
• 绑定操作:在检索到服务描述之后,服务使用者继续根据服务描述中的信息来调用服务。

1.4 SOA的相关标准
SOA的相关标准:
SOAP: 简单对象访问协议 (Simple Object Access Protocol)
WSDL: Web服务描述语言 WSDL (Web Services Description Language)
UUDI: 统一描述、发现和集成 (Universal Description, Discovery and Integration)
WSDL用来描述服务;UDDI用来注册和查找服务;而SOAP,作为传输层,用来在消费者和服务提供者之间传送消息。一个消费者可以在UDDI注册表(registry)查找服务,取得服务的WSDL描述,然后通过SOAP来调用服务。

2 SOA展望
2.1 SOA已死,服务永存
一些WS-*标准已经中途夭折,使得SOA推广衰亡,另外一方面是新起的SOA技术,如REST不过趋势已经从服务转向了API。
虽然云计算在一定程度上使得SOA有了一定的成活,但这只是让服务的思想活了下来,而云之间的通信协议很多并不会完全延续使用SOA的标准。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值