- 学习 Web 服务
- Web 服务 - 首页
- 什么是 Web 服务?
- 为什么要使用 Web 服务?
- Web 服务 - 特性
- Web 服务 - 架构
- Web 服务 - 组件
- Web 服务 - 例子
- Web 服务 - 安全性
- Web 服务 - 标准
- Web 服务 - 总结
- Web 服务资源
- Web 服务 - 问答
- Web 服务 - 快速指南
- Web 服务 - 有用资源
Web 服务 - 架构
查看 Web 服务架构有两种方法:
- 第一种是检查每个 Web 服务参与者的个体角色。
- 第二种是检查新兴的 Web 服务协议栈。
Web 服务角色
Web 服务架构中有三个主要角色:
服务提供者
这是 Web 服务的提供者。服务提供者实现服务并使其在互联网上可用。
服务请求者
这是任何 Web 服务的使用者。请求者通过打开网络连接并发送 XML 请求来使用现有的 Web 服务。
服务注册中心
这是一个逻辑上集中的服务目录。注册中心提供了一个中心位置,开发人员可以在其中发布新服务或查找现有服务。因此,它充当公司及其服务的集中清算所。
Web 服务协议栈
查看 Web 服务架构的第二个选择是检查新兴的 Web 服务协议栈。该栈仍在发展中,但目前有四个主要层。
服务传输
此层负责在应用程序之间传输消息。目前,此层包括超文本传输协议 (HTTP)、简单邮件传输协议 (SMTP)、文件传输协议 (FTP) 和较新的协议,例如块可扩展交换协议 (BEEP)。
XML 消息传递
此层负责以通用的 XML 格式编码消息,以便可以在任一端理解消息。目前,此层包括 XML-RPC 和 SOAP。
服务描述
此层负责描述特定 Web 服务的公共接口。目前,服务描述是通过 Web 服务描述语言 (WSDL) 处理的。
服务发现
此层负责将服务集中到一个公共注册中心并提供简单的发布/查找功能。目前,服务发现是通过通用描述、发现和集成 (UDDI) 处理的。
随着 Web 服务的发展,可能会添加更多层,并且可能会向每一层添加更多技术。
下一章将解释 Web 服务的组件。
关于服务传输的几点说明
Web 服务协议栈的底部是服务传输。此层负责在两台计算机之间实际传输 XML 消息。
超文本传输协议 (HTTP)
目前,HTTP 是最流行的服务传输选项。HTTP 简单、稳定且广泛部署。此外,大多数防火墙都允许 HTTP 流量。这允许 XMLRPC 或 SOAP 消息伪装成 HTTP 消息。如果您想集成远程应用程序,这很好,但它确实引发了许多安全问题。
块可扩展交换协议 (BEEP)
这是 HTTP 的一个有前景的替代方案。BEEP 是一个用于构建新协议的新型互联网工程任务组 (IETF) 框架。BEEP 直接构建在 TCP 之上,并包含许多内置功能,包括初始握手协议、身份验证、安全性以及错误处理。使用 BEEP,可以为各种应用程序创建新协议,包括即时消息、文件传输、内容联合和网络管理。
SOAP 不绑定到任何特定的传输协议。实际上,您可以通过 HTTP、SMTP 或 FTP 使用 SOAP。因此,一个有前景的想法是通过 BEEP 使用 SOAP。