Web 服务 - 架构

有两种方式查看Web服务架构 −

  • 首先是检查每个 Web 服务参与者的各自角色。
  • 第二个目标是研究新兴的网络服务协议栈。

Web 服务角色

Web 服务架构中有三个主要角色 −

服务提供商

这是网络服务的提供商。 服务提供商实施服务并使其在 Internet 上可用。

服务请求者

这是网络服务的任何消费者。 请求者通过打开网络连接并发送 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。 因此,一个有前途的想法是使用 SOAP 而不是 BEEP。