学习 WebService 第一步:体系结构、三元素SOAP/WSDL/UDDI
原文地址:爱军的博客——WebService简介
一、为什么需要Web Service
笔记:
WebService 可以实现 跨(硬件、服务器、开发工具、平台、应用程序、程序语言……)共享数据和应用,多么强大!
当你困扰于以下难题,WebService可以完美解决!
- 有没有一种办法可以实现跨应用程序和跨平台进行通信呢?
- 换句话说,就是有什么办法可以实现应用程序 A 可以和应用程序 B 进行通信呢?
- 换句话说,如何实现用不同的程序语言和不同厂商的软件开发工具开发的软件,那些已开发和部署的软件,能够实现分布式计算的目的?
- 或者说是,用 Java 写的应用程序和用 . Net 开发的应用程序之间进行通信呢?
- 或者说是,Windows Server 2008 服务器如何和UNIX 或者是 Linux 服务器进行连接呢?
WebServices 特点优势?
- 可以通过 Web 服务来公开一些接口给其他人(程序)使用。
- 可以将多个 WebServices 组合成为更为强大的 WebServices使用。
二、Web Service 体系结构
在 Web 服务的体系结构中,涉及到三个角色,一个是 Web 服务提供者,一个是 Web 服务中介者,还有一个就是 Web 服务请求者,同时还涉及到三类动作,即发布,查找,绑定。
- Web 服务提供者:可以发布 Web 服务,并且对使用自身服务的请求进行响应,Web 服务的拥有者,它会等待其他的服务或者是应用程序访问自己。
- Web 服务请求者:也就是 Web 服务功能的使用者,它通过服务注册中心也就是 Web 服务中介者查找到所需要的服务,再利用 SOAP 消息向 Web 服务提供者发送请求以获得服务。
- Web 服务中介者:也称为服务代理,用来注册已经发布的 Web 服务提供者,并对其进行分类,同时提供搜索服务,简单来说的话,Web 服务中介者的作用就是把一个 Web 服务请求者和合适的 Web 服务提供者联系在一起, 充当一个管理者的角色,一般是通过 UDDI 来实现。
- 发布:通过发布操作,可以使 Web 服务提供者向 Web 服务中介者注册自己的功能以及访问的接口。
- 发现(查找):使得 Web 服务请求者可以通过 Web 服务中介者来查找到特点的种类的 Web 服务。
- 绑定:这里就是实现让服务请求者能够使用服务提供者提供的服务了。
WebServices 三种基本元素之 SOAP、WSDL、UDDI
笔记:
SOAP
SOAP 其指导理念是“唯一一个没有发明任何新技术的技术”,通过 XML 来实现消息描述,然后再通过 HTTP 实现消息传输。
WSDLWeb服务描述语言,描述了 Web 服务的三个基本属性:
(1)服务所提供的操作
(2)如何访问服务
(3)服务位于何处(通过 URL 来确定就 OK 了)
UDDI
是一种目录服务,企业可以通过 UDDI 来注册和搜索 Web 服务。存放的是关于 Web 服务的信息。UDDI 通过 SOAP 进行通讯。
三、开发 Web Service
(1)开发阶段:
实现一个 Web 服务,使这个 Web 服务能响应和接收 SOAP 消息,
(这个呢,其实可以通过 Visual Studio 来帮助实现),
定义好逻辑模块(这个 Web 服务总要干点事情吧),
然后再撰写 WSDL 文件(这个呢,开发工具会自动生成的,不需要人工撰写了)
(2)部署阶段:
指定 Web 服务的传输协议,将 Web 服务注册到相应服务描述部署文件(这些也是可以由工具来自动完成的)
(3)发布阶段:
将 Web 服务的接口和调用的地址公开给客户端调用,
常用的发布方式为基于 Web 提供的 WSDL 的链接,当然 UDDI 也是一个选择。
懦夫从不启程,弱者溺与途中,只剩我们前行~