WebService - 特征
-
简述
WebServices 具有以下特殊的行为特征 - -
基于 XML
WebServices 在数据表示和数据传输层使用 XML。使用 XML 消除了任何网络、操作系统或平台绑定。基于 WebServices 的应用程序在其核心级别具有高度的互操作性。 -
松耦合
WebServices 的使用者不直接绑定到该 WebServices 。WebServices 接口可以随着时间而改变,而不会影响客户端与服务交互的能力。紧密耦合的系统意味着客户端和服务器逻辑彼此密切相关,这意味着如果一个接口发生更改,则必须更新另一个接口。采用松散耦合的架构往往会使软件系统更易于管理,并允许不同系统之间更简单的集成。 -
粗粒度
Java 等面向对象的技术通过单独的方法公开其服务。单个方法过于精细,无法在公司级别提供任何有用的功能。从头开始构建 Java 程序需要创建几个细粒度的方法,然后将这些方法组合成一个粗粒度的服务,供客户端或其他服务使用。业务及其暴露的接口应该是粗粒度的。WebServices 技术提供了一种定义粗粒度服务的自然方式,这些服务访问适量的业务逻辑。 -
能够同步或异步
同步性是指客户端与服务执行的绑定。在同步调用中,客户端阻塞并等待服务完成其操作,然后再继续。异步操作允许客户端调用服务,然后执行其他功能。异步客户端在稍后的时间点检索它们的结果,而同步客户端在服务完成时接收它们的结果。异步能力是启用松散耦合系统的关键因素。 -
支持远程过程调用 (RPC)
WebServices 允许客户端使用基于 XML 的协议调用远程对象上的过程、函数和方法。远程过程公开 WebServices 必须支持的输入和输出参数。在过去的几年中,通过 Enterprise JavaBeans (EJB) 和 .NET 组件进行组件开发已越来越成为架构和企业部署的一部分。这两种技术都是分布式的,可通过各种 RPC 机制访问。WebServices 通过提供自己的服务(与传统组件的服务等效)或通过将传入调用转换为对 EJB 或 .NET 组件的调用来支持 RPC。 -
支持文件交换
XML 的主要优势之一是它不仅可以表示数据,还可以表示复杂文档的通用方式。这些文档可以像代表当前地址一样简单,也可以像代表整本书或报价请求 (RFQ) 一样复杂。WebServices 支持文档的透明交换以促进业务集成。