XML Web服务是一个提供特别的功能元素的可编程实体,比如应用程序逻辑,并且可以使用普遍存在的Inte.net标准例如XML和HTTP访问许多潜在的完全不同的系统。XML Web服务依赖于对XML和其他因特网标准的广泛接受,使用它们来创建支持应用程序互操作性的基础结构,解决了许多过去阻碍互操作性的问题。
XML Web服务可在单个应用程序中使用,也可国际互联网被许多应用程序使用。因为一个XML Web服务可通过一个标准接口访问,所以它允许多个不同的系统协同合作进行单一的网络计算。
XML Web服务不追求代码的可移殖性能力,而是提供一个可行的解决方案来增强数据和系统的互操作性。XML Web服务使用基于XML的消息作为一种基本的数据通信方法,搭起使用不同的组件模型、操作系统和编程语言的系统之间的桥梁。开发者可以使用与使用组件创建一个分布式应用程序的时候相同的方法创建能把来自不同来源的XML Web服务汇编到一起的应用程序。
XML Web服务的核心特征之一就是存在于实现和使用服务之间的高度抽象。通过使用基于XML的消息作为创建并访问服务的机制,XML Web服务客户和XML Web服务提供者两者除了输入、输出和地址之外,彼此之间不需要知道任何对方的情况。
XML Web服务能够开创分布式应用程序开发的新纪元。不再存在对象模型之间的争斗或者程序语言的选美会。当系统使用专有基础结构紧密偶联时,这是以损害应用程序互操作性作为代价在的。XML Web服务在一个新的水平提供互操作性,完全否定了那些起反作用的系统之间的竞争。作为因特网下一个革命性的进步,XML Web服务将变成连接所有的计算机的基本结构。
简单的服务
XML Web服务实现的最基本的方案是提供一些基本的功能模块以供客户使用。例如,一个电子商务应用程序面对的挑战是需要计算不同货运方式的收费情况。这样的应用程序在这些计算中需要从每个货运公司那里取得目前的运输成本表单。
应用程序可以使用诸如HTTP这样的标准传输协议通过因特网向计算货运成本的XML Web服务发送一条简单的基于XML的消息。这个消息可能提供包装的重量和尺寸,发货点和收货点,以及其他参数如服务等级等。发货人的XML Web服务然后使用最新的价格表计算货物运输费用,并使用一个简单的基于XML的响应消息把这个数字返回调用应用程序,以供计算客户的总体费用。
应用程序集成
你可以使用XML Web服务以一种集成的方式整合表面上看上去完全不同的现有应用程序。大部分的公司的每个部门都有定制的软件,产生一系列有用但是孤立的数据岛和业务逻辑。由于每个应用程序环境的变化,和技术不断革新的天性,所以非常有必要从这些应用程序中创建一个功能集合体。
利用XML Web服务,就有可能把现有的应用程序中的数据和功能暴露出来做为一个XML Web服务。然后你可以创建一个集成的应用程序,使用这些XML Web服务的集合在应用程序的组成部分之间增强互操作性。
工作流程解决方案
XML Web服务能够提供应用程序一个非常强大的机制,创建端对端的工作流程解决方案。这样的解决方案适于商务到商务的交易这样的长期运行的情景。
BizTalk框架提供了一个附加协议层,定义了识别并发布消息的机制,定义了它们的生命周期,封装它们(通常带有附件),安全地把它们递送到目的地,并且确保认证、完整性和机密内容的安全。
Microsoft BizTalk Server提供基础结构和用于基于规则的商务文档的路由、变换和记录基础结构的工具。这个基础结构能让公司使用其内部或其他机构的交换业务文档(例如采购订单和发货单)整合、管理和自动化业务处理。
BizTalk Orchestration是包含于用于定义单个XML Web服务状态的BizTalk服务器以及构建多部分商务处理的XML Web服务的组成成分的一种技术。