当前位置:文档之家› webservice接口协议有哪些

webservice接口协议有哪些

竭诚为您提供优质文档/双击可除webservice接口协议有哪些

篇一:webservice基础原理

第一部分webservice基本原理

第1章webservice基础

1.1引言

(1)服务是自包含的模块,它们部署在标准的中间件平台上,能够在网络上使用基于xml的技术进行描述、定位、编配和编程。

(2)面向服务的计算并不是一个新的技术,而是分布式系统、软件工程、信息系统、计算机语言、基于web的计算和xml技术的融合。

(3)在面向服务的模型中,可以清晰地区分服务提供者、服务客户端以及服务聚合者。服务提供者提供服务的实现、描述以及相关的技术与业务支持。服务客户端是具体使用服务的终端用户组织。服务聚合者是将多个服务整合成一个新的服务,这个新的服务通常称为业务流程。

(4)服务的主要优点之一是,它们既可以在一台机器上实现,也可以在多个各不相同的设备上实现。服务的实现可以分步在一个局域网中,甚至也可以跨几个广域网。

1.1.1webservice是什么

(1)webservice是一个可通过网络使用的自描述、自包含软件模块,这些软件模块可完成任务、解决问题或代表用户、应用程序处理事务。(2)webservice可以是:自包含的业务任务,如提款或取款服务;成熟的业务流程,如办公用品的自动采购;

应用程序,如人寿保险应用程序、需求预测与库存补充应用程序;已启动服务的资源,如访问特定的保存病人病历的后台数据库。1.1.2webservice的典型场景

供应商

图1.1涉及多个相互交互的webservice的订购单应用程序

1.2“软件即为服务”的理念

(1)web页面直接面向的是人,而webservice的开发目标是访问者,既可以是人也可以是自动化的应用程序。

(2)“软件即为服务”首先产生于应用服务提供商软件模型中。应用服务提供商

(applicationserviceprovider,asp)是将软件、基础设施

要素、业务以及专业的服务进行打包的公司,它们创建完整的解决方案,并将其作为基于订阅的服务向用户推介。asp 是第三方(服务组织者),它们部署、维护并管理打包的应用程序,并通过提供集中管理方式,对跨网络的客户提供应用程序可用性、安全性。asp的基本出发点是向用户出租应用程序。

(3)将webservice与基于web的应用程序进行比较,有四方面的显著差异[aldrich20xx]:

对于请求或调用webservice的应用程序而言,无论这种调用是否需要人的干预,请求或调用的web

service都可视作应用程序的资源。这意味着webservice可以调用其他的webservice,从而将复杂事物中一些处理交由其他的一些webservice实现。这提供了基于web的应用目前无法达到的高度的灵活性和适应性。

webservice是模块化的、自感知和自描述的应用程序。webservice知道它能完成什么功能,也知道何

种如数会产生何种输出,并将其向潜在用户或其他的webservice进行描述。webservice也能描述它的非功能性属性,例如调用webservice花费、webservice覆盖的地理范围、使用webservice所涉及的安全性度量、性能特点、联系信息等。

相比于基于web的应用程序,webservice更容易被监控

和管理。可以在任何时候使用外部的应用管理

和工作流系统来监控和管理webservice的状态。本地应用程序可以检测到webservice的状态,并可管理webservice的输出状态。

可对webservice进行评估和拍卖。加入几个webservice 完成同样的任务,webservice可对索要使用

的服务进行招标。代理科基于webservice的“竞价”属性(花费、速度、安全性)进行选择。

1.3webservice的完整定义

(1)webservice是一个平台独立的、松耦合的、自包含的、基于可编程的web的应用程序,可使用开放的xml标准描述、发布、发现、协调和配置这些应用程序,用于开发分布式的互操作的应用程序。webservice能够在一些常规的计算中提供一些服务,从而完成一个具体的任务,处理相关的业务或解决一个复杂的问题。此外,webservice使用(基于xml的)标准化的因特网语言和标准化协议在因特网或内部网上展示它们的可编程功能部件,并通过自描述接口实现webservice。这些自描述接口基于开放的因特网标准。

(2)webservice是松耦合的软件模块:服务接口的定义必须中立,独立于任何底层平台、操作系统及实现服务所使用的编程语言。因此,服务将可在一些不同的系统上实现,并以一致的形式和通用的方式相互交互。中立的接口定义将

不会受到特定实现的很大影响,从而在服务间做到松耦合。

(3)webservice语义封装各个独立的功能:webservice 是一个完成单个任务的自包含的软件模块。该模块描述了自身的接口特征,例如操作可用性、参数、数据类型和访问协议。基于这些信息,其他的软件模块将能确定该模块能完成什么功能,确定如何调用这些功能以及确定可能的返回结果。在这一点上,webservice是契约式的软件模块,模块公开提供了接口特征的可用描述。webservice的潜在客户将能绑定到这些接口,并通过这些接口访问webservice。

(4)编程式访问webservice:可将webservice嵌入到远程的应用中,因此可以查询和更新信息,从而提高了效率、响应性和精确性。

(5)可动态发现webservice并将其添加到应用中:与目前已有的接口机制不一样,可对多个webservice进行装配,从而实现

某个特定的功能、解决一个具体的问题或者向客户提供一个特定的解决方案。

(6)可使用标准的描述语言来描述webservice:webservice描述语言(wsdl)既能描述功能性服务特性也能描述非功能性服务特性。

(7)可在整个因特网上分发webservice:webservice

使用一些非常通用的因特网协议,如http。与web内容一样,

相关主题