1. 分布式对象模型有一个共同的缺陷,即难以扩展到互联网上。
【要求服务的客户与服务本身之间必须紧密耦合,即要求处在一个同质的基础结构框架中】
2. Web服务是松散耦合的。它通过诸如HTTP、SMTP以及发挥了核心作用的XML等在Web上广泛应用的标准协议来实现统一的连接,使人们转向基于消息的异步技术来实现具有高可靠性的系统。
3. Web应用和桌面应用之间存在连接问题。
【Web应用和桌面应用之间的数据迁移常常是手动完成】
4. Web服务作为一种新兴的Web应用模式,是一种崭新的分布式计算模型,是Web上数据和信息集成的有效机制。
5. Web服务是使用标准技术在Internet上运行的商务流程,它可以使用标准的Internet协议,将功能纲领性的体现在Internet和Intranet上。
6. Web服务就像Web上的构件编程,开发人员通过调用Web应用编程接口,将Web服务集成进他们的应用程序,就像调用本地服务一样。
7. Web服务支持异构操作系统之间的连接。可以与分布在世界各地的应用互连,实现无缝、高效的连接。
8. Web服务的关键是Web服务体系结构
(1)是由平台构建商提供的、基于Internet的应用解决方案
(2)这些方案可以用标准的格式通过Internet进行调用,完成对业务的集成
9. Web服务技术核心基于可扩展标记语言XML的标准,包括:
(1)简单对象访问协议,SOAP
a. SOAP是一种轻量的、简单的、基于XML的协议。
b. SOAP是Web Service的基本通信协议。
(2)Web服务描述语言,WSDL
【WSDL是一种XML文档,它定义SOAP消息和这些消息是怎样交换的】
(3)统一描述、发现和集成协议,UDDI
10. Web服务可以分为5个逻辑层
(1)数据层:保存Web服务需要的所有物理数据
(2)数据访问层:为业务层提供数据服务
【优点:可以做数据的分布式处理,有利于保护数据的完整性】
【缺点:效率较低】
(3)业务层:提供业务逻辑
【业务逻辑:做一件事情的步骤】
(4)业务面:提供简单接口,直接映射到Web服务提供的过程
【提供一个到底层对象的可靠的接口,即功能列表】
(5)监听者:接收带有请求服务的输入消息,解析这些消息,并把这些请求发送给业务面的相应方法
【把消息发送给对应的接口,有点像基于消息的隐式调用的体系风格】
11. 共同特征
(1)应用的分布式
【网络中数据源和服务提供者都是分布式的,所以We服务是松散耦合的,不关心数据源的格式】
【Web服务对用户具有分布透明性】
(2)应用到应用的交互
【集中式的控制对服务器压力太大】
(3)平台无关性
【Web服务采用现有的规范的协议和约定,接口使用的标准简单、易理解】
(4)完好的封装性
【使用者仅能看到提供的功能列表】
(5)高度集成能力
(6)松散耦合
【只要Web服务调用界面不变,Web服务实现的任何变是透明的,用户无法察觉】
12. 一个完整的Web服务包括三种逻辑构件
(1)服务提供者:提供服务,并进行注册以使服务可用
服务代理:起中介作用,是服务的注册构件
服务请求者:可在应用程序中通过服务代理请求服务,调用所需服务
(2)发布:对服务进行一定的描述并发布到代理服务器上,进行注册。
发现:服务请求者向服务代理发布服务查询请求。服务代理提供规范的接口来接受服务请求者的查询。服务请求者根据通用的行业分类标准浏览分类或者通过关键字搜索,并逐步缩小查找范围,直到找到满足条件的服务为止。
绑定:分析从注册服务器中得到的调用该服务所需的详细绑定信息,根据这些信息,服务请求者可以编程实现对服务的远程调用。
13. Web服务开发生命周期可分为构建、部署、运行和管理四个阶段。
(1)构建:构建阶段包括开发和测试Web服务的实现,定义服务接口描述和定义服务实现描述。
(2)部署:向服务请求者或服务注册中心发布服务服务接口和服务实现的定义。
(3)运行:在运行阶段,可以调用Web服务。
�(4)管理:管理阶段包括持续的管理和经营Web服务应用程序。
14. Web服务栈
(1)SOAP本质上是xml。
(2)可开发的为:发现服务、描述服务、消息格式层,剩下两个为基础层。
(3)发现服务层:主要用来帮助客户端应用程序解析远程服务的位置,通过UDDI实现。
描述服务层:为客户端应用程序提供与远程服务交互的描述信息,通过WSDL实现。
消息格式层:保证客户端应用程序和服务器端在格式设置上保持一致,通过SOAP协议实现。
编码格式层:为客户端和服务器之间提供一个标准的、独立于平台的数据交换编码格式,一般通过XML实现。
传输协议层:为客户端和服务器提供交互的网络通信协议,一般通过HTTP和SMTP实现。
15. UDDI (统一描述、发现和集成)
(1)UDDI是Web服务集成的一个体系框架。用来说明一个Web服务的一些信息类型。
(2)注册流程:
a. 客户通过UDDI发出请求。
b. HTTP服务器发给SOAP服务器。
【SOAP用HTTP来承载消息。】
c. SOAP服务器解析请求。
d. 去数据库注册,按级返回。
16. XML
(1)是一种允许用户定义自己的标记的元语言。
(2)在Web服务中几乎所有都是用XML描述的。
【Web服务的所有接口、对Web服务的请求、Web服务的应答数据】
17. SOAP
(1)SOAP本身不定义任何应用语言,只定义简单的机制,通过提供一个有标准构件的包模型和通过在模块中对数据编码的机制,来定义一个简单的表示应用语义的机制。
【SOAP是一种机制】
(2)典型SOAP通信体系结构中的一些组件:SOAP客户机、SOAP服务器、实际服务。
【实际服务存放实际代码,求出结果并返回】
(3)SOAP包括4个部分:SOAP信封(强制)、SOAP编码规则、SOAP RPC表示、SOAP绑定
(4)一个典型 SOAP 通信体系结构的组件:
a. SOAP客户机:是一台有SOAP机制的机器,它可以产生SOAP请求并通过HTTP发送到服务器。
b. SOAP服务器:是一台有SOAP机制的机器,能够接收来自SOAP客户机的请求,并对之作出适当的响应。
•在SOAP服务器内部有三个实体:服务管理器、被部署服务的列表(判断服务存在与否)、XML转换程序(解析XML)
【服务器解析XML代码,取出请求,判断有没有服务】
c. 实际服务:被调用的方法就会完成它的工作并且将结果信息返回XML转换程序。
【注意是直接返回结果】
18. 基于面向服务架构SOA
(1)SOA为一种应用程序体系结构,在这种体系结构中,所有功能都定义为独立的服务,这些服务带有定义明确的可调用接口。
(2)SOA为客户端/服务器的软件设计方法,一项应用由软件服务和软件服务使用者组成。
(3)SOA与大多数通用的客户端/服务器模型不同之处,在于它着重强调软件构件的松散耦合,并使用独立的标准接口。
(4)一个完整的面向服务的体系结构模型
(5)单个服务内部结构:
(6)SOA模型的特征:
a. 松散耦合
【灵活性高,包容修改】
b. 粗粒度服务
c. 标准化接口
【采用中立的方式定义】