SOA架构实现技术之WebServices概述

一、名词解释

1、SOA(Service Oriented Architecture),面向服务的架构。一种架构,包括了运行环境、编程模型、架构风格和相关方法论等在内的一整套分布式系统构造方法和环境。SOP涵盖了服务的整个生命周期。SOP的架构风格是以服务为最核心的抽象手段。

2、WebServices是一组函数库,与(客户端)项目开发时位于本地的函数库不同,Web服务(WebServices)位于服务提供者的服务器中。Web服务是部署在Web上的对象或应用程序组件。

WebServices的特点:

1)、WebServices是自包含的。客户端不需要附加任何软件,只需要支持HTTP和XML即可。

2)、WebServices是自我描述的。客户端和服务端只需要找到请求和响应信息的格式和内容。

3)、WebServices是跨平台和跨语言的。

4)、WebServices是基于开发标准的。WebServices的主要技术基础是HTTP和XML,而HTTP和XML已是业内标准。

5)、WebServices是可组合的。一个WebServices可以访问另外一个WebServices来组合成一个功能更复杂的服务。

6)、WebServices通过网络进行发布,查找和使用。

特点总结:WebServices提供一个建立分布式应用的平台,使得运行在不同操作系统和不同设备上的软件,或者是用不同程序语言和不同厂商软件开发工具开发的软件,所有可能的已开发和部署的软件,能够利用这一平台实现分布式计算。

二、WebServices体系结构

在WebServices体系结构中有三个角色:服务提供者,服务中介者,服务请求者。同时,涉及到三项动作:发布、查找、绑定。

三个角色简介

1)服务提供者,发布Web服务,等待其他服务或应用程序请求并作出响应。

2)服务中介者,也称服务代理,用来注册已经发布的Web服务提供者,对其分类以提供搜索服务。一般通过UDDI来实现。

3)服务请求者,Web服务的使用者,通过Web服务中介者(服务注册中心)查找到所需要的服务,再利用SOAP向Web服务提供者发送请求,获得服务。

三项动作定义

1)发布,将Web服务提供者向Web服务中介者注册服务提供者的功能及访问的接口。

2)查找,Web服务请求者可以通过Web服务中介者来查找到特定类型的Web服务。

3)绑定,实现服务请求者如何使用服务提供者提供的服务。

三、WebServices应用实例——天气查询Web服务

运行环境:VS2012,C#之WindowsFormsApplication(Windows窗体应用程序)。

操作步骤:

1)创建Windows窗体应用程序,工程名为WinForm

2)在工程名上右键,选择“添加服务引用”,弹出[添加服务引用]对话框。

3)在[添加服务引用]对话框中点击高级,找到“添加Web引用”,弹出[添加web引用]对话框。

4)[添加web引用]对话框的URL,填写:http://www.webxml.com.cn/Webservices/WeatherWebService.asmx。此URL为天气查询WebServices所在位置。

5)在[添加web引用]对话框,更改Web引用名为WeatherWebServices,点击”添加引用“。

6)在应用程序中提供WeatherWebServices类调用其中的方法,具体细节看源码。

运行效果如下图。

附工程源码链接:http://pan.baidu.com/s/1hrMlaao

四、参考文献

彻底理解webservice SOAP WSDL:http://blog.csdn.net/zhuizhuziwo/article/details/8153327

WinForm做的天气查询工具:http://www.cnblogs.com/QinBaoBei/archive/2010/03/30/1700898.html

时间: 2024-10-07 09:28:59

SOA架构实现技术之WebServices概述的相关文章

论SOA架构的几种主要开发方式

 面向服务架构soa以其独特的优势越来越受到企业的重视,它可以根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署.组合和使用.服务层是SOA的基础,可以直接被应用调用,从而有效控制系统中与软件代理交互的人为依赖性.Soa的开发方法一般主要有开源的dubbo.dubbox.mule.wso2.cxf,以及付费的oracle soa.ibm soa等.         SOA是一种粗粒度.松耦合服务架构,服务之间通过简单.精确定义接口进行通讯,不涉及底层编程接口和通讯模型.SOA可以看作是B/

论SOA架构的几种主要开发方式【转】

       面向服务架构soa以其独特的优势越来越受到企业的重视,它可以根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署.组合和使用.服务层是SOA的基础,可以直接被应用调用,从而有效控制系统中与软件代理交互的人为依赖性.Soa的开发方法一般主要有开源的dubbo.dubbox.mule.wrs.axis.xfire.wso2.cxf,以及付费的oracle soa.ibm soa等.现在rest正在取代soa. SOA是一种粗粒度.松耦合服务架构,服务之间通过简单.精确定义接口进行通

SOA架构开发

SOA架构开发 SOA介绍 1.什么是SOA SOA是:面向服务的体系结构(Service Oriented Architecture)指的是一个系统的架构,他的研究领域是大型分布式系统的“架构”范式.而OOP指的是程序具体开发过程中的“编程”范式.再通俗一点说就是在一个具体的软件内我们谈论OOP,但是在讨论软件与软件,系统与系统的关系的时候我们会借助SOA的理念帮助我们处理他们(指各个系统)之间的关系. 2.SOA的核心理念 支持异质(异构) 不要奢望企业中的每个系统都是java平台的,不要奢

SOA 架构

SOA架构,是一种基于组件式模型的架构.全称 Services Oriented      Architecture. 目的是基于组件进行分布部署和组合运用来实现应用程序的高度解耦,而其组件的基础的服务. SOA 架构的基本特性: 2.1 每个服务具有自己明确的服务边界:自己的理解这个应该是说,每个服务应该有自己独立明确的对外服务接口,而在其内部实现上可以不局限与平台和语言,对外开放的仅仅是其实现的接口而已.从而实现一种高度的解耦. 2.2 独立服务:服务运行,升级,部署等均需要独立而不会影响整

分布式系统的那些事儿(六) - SOA架构体系

有十来天没发文了,实在抱歉!最近忙着录视频,同时也做了个开源的后台管理系统LeeCX,目前比较简单,但是后续会把各类技术完善.具体可以点击"原文链接". 那么今天继续说分布式系统的那些事. 我们现在动不动就讲分布式吧?那么SOA是不是必须得聊一聊呢? 面向服务的架构,简称SOA,他是基于服务组件的,把原来那种一个大型应用程序的不同的功能拆分为一些接口,通过这些接口串联起来. 这么做的好处是: 1.重用性大大提高 2.明确了接口的服务定义规则 3.定义了自家公司的api标准 4.降低系统

SOA架构设计经验分享—架构、职责、数据一致性

阅读目录: 1.背景介绍 2.SOA的架构层次 2.1.应用服务(原子服务) 2.2.组合服务 2.3.业务服务(编排服务) 3.SOA化的重构 3.1.保留服务空间,为了将来服务的组合 4.运用DDD+GRASP进行分析和设计(防止主观的判断导致错误的假设) 5.SOA分布式下的数据一致性 5.1.分布式事务(基于DTC的分布式事务) 5.2.事务补偿(提供正向或反向的操作来让数据在业务上是一致的) 5.3.异步EDA(基于异步事件流来实现柔性的分布式事务) 6.总结 1.背景介绍 最近一段时

[转]SOA架构设计经验分享—架构、职责、数据一致性

阅读目录: 1.背景介绍 2.SOA的架构层次 2.1.应用服务(原子服务) 2.2.组合服务 2.3.业务服务(编排服务) 3.SOA化的重构 3.1.保留服务空间,为了将来服务的组合 4.运用DDD+GRASP进行分析和设计(防止主观的判断导致错误的假设) 5.SOA分布式下的数据一致性 5.1.分布式事务(基于DTC的分布式事务) 5.2.事务补偿(提供正向或反向的操作来让数据在业务上是一致的) 5.3.异步EDA(基于异步事件流来实现柔性的分布式事务) 6.总结 1.背景介绍 最近一段时

μSOA 架构 - SOA 的有力替代和补充

白杨 2016-04 baiy.cn AIO vs. SOA 长久以来,服务器端的高层架构大体被区分为对立的两类:SOA(Service-oriented architecture)以及 AIO(All in one).SOA 将一个完整的应用分割为相互独立的服务,每个服务提供一个单一标准功能(如:会话管理.交易评价.用户积分等等).服务间通过 RPC.WebAPI 等 IPC 机制暴露功能接口,并以此相互通信,最终组合成一个完整的应用. 而 AIO 则相反,它将一个应用规约在一个独立的整体中,

SOA架构的理解

实践论认为:从实践提升到理论,再由理论指导实践,由此向前发展.目前SOA的发展的情况---- 通过不少实践,SOA的模型己经被公认为标准规范,目前是正需要进一步总结上升到理论的时候了. SOA架构的演化过程. SOA是从面向对象架构.面向构件架构等逐步发展完善的.且相互依托.相互补充.又各自适应不同范围,因此在讨论SOA理论时, 要了解它是如何演化过程来,继承了哪些理论体系,其适应度如何? //---------------------------------------------------