SOA面向服务架构(PPT30页)
- 格式:ppt
- 大小:731.00 KB
- 文档页数:30
软件设计中的面向服务架构(SOA)当今互联网时代,软件开发从早期简单的单机应用,到后来的分布式系统设计,再到现在的大规模分布式系统,软件发展的历程已经演变成了一个复杂的过程,这个过程中有许多因素影响着软件开发的效率和质量。
为了应对这些问题,一种先进的软件开发架构逐渐走进人们的视野,它就是面向服务架构( Service-Oriented Architecture, SOA)。
面向服务架构是一种软件架构的风格,它的关注点不是单个应用程序或系统,而是由一个或多个服务组成的网络,这些服务通过相互协作,能够完成特定的业务功能。
服务作为功能的基本组成单元,对外提供标准化的接口描述和契约,方便其他服务以标准化方式进行访问和使用。
SOA从多个服务组成应用的角度来看待应用系统,它强调组件的重用性、模块化、松耦合、构建可靠可用的应用系统。
SOA的具体实现可以通过使用Web服务技术来实现。
Web服务是一种标准化的服务组件,可以通过网络进行通信,通过SOAP协议进行数据交互,并通过WSDL文件来描述服务接口和数据格式。
Web服务可以在分布式环境中实现服务发布、发现、组合和集成,简化了分布式系统的构建和管理。
SOA可以带来很多优点,例如:1.灵活性和可维护性:由于SOA组件的松耦合关系,因此我们可以只更改一些特定的组件以实现所需的更改,而不影响其他组件的运作。
2.可重用性:IS组件(Integration Service)和SOA架构是基于组件化的原理,使得组件可重用和跨系统、跨平台使用,可降低开发成本。
3.易于管理:SOA元素尽可能地作为单独的部分运行,这使得管理它们变得更加简单。
此外,服务元素可以像LEGO一样连接在一起,以实现所需的各种功能模块的复杂组合。
4.提高互操作性:SOA支持通用标准和协议,这使得基于SOA技术的系统可以与其他技术平台和系统进行互操作,从而进一步加强组织间的互相连通性和互动性。
5.提高应用程序的可扩展性:SOA使应用程序组件化,从而易于扩展和调整。
SOA(面向服务的架构)•SOA(面向服务的架构)编辑面向服务的架构(SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)进行拆分,并通过这些服务之间定义良好的接口和契约联系起来。
接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。
这使得构建在各种各样的系统中的服务可以以一种统一和通用的方式进行交互。
•中文名•面向服务的结构•外文名•Service-Oriented Architecture•外语缩写•SOA•本质•组件模型定义介绍编辑面向服务架构,它可以根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署、组合和使用。
服务层是SOA的基础,可以直接被应用调用,从而有效控制系统中与软件代理交互的人为依赖性。
SOA是一种粗粒度、松耦合服务架构,服务之间通过简单、精确定义接口进行通讯,不涉及底层编程接口和通讯模型。
SOA可以看作是B/S模型、XML(标准通用标记语言的子集)/Web Service技术之后的自然延伸。
SOA将能够帮助软件工程师们站在一个新的高度理解企业级架构中的各种组件的开发、部署形式,它将帮助企业系统架构者以更迅速、更可靠、更具重用性架构整个业务系统。
较之以往,以SOA架构的系统能够更加从容地面对业务的急剧变化。
Soa系统是一种企业通用性架构。
体系结构编辑松耦合的系统这种具有中立的接口定义(没有强制绑定到特定的实现上)的特征称为服务之间的松耦合。
松耦合系统的好处有两点,一点是它的灵活性,另一点是,当组成整个应用程序的每个服务的内部结构和实现逐渐地发生改变时,它能够继续存在。
与之相反,紧耦合意味着应用程序的不同组件之间的接口与其功能和结构是紧密相连的,因而当需要对部分或整个应用程序进行某种形式的更改时,它们就显得非常脆弱。
对松耦合的系统的需要来源于业务应用程序需要根据业务的需要变得更加灵活,以适应不断变化的环境,比如经常改变的政策、业务级别、业务重点、合作伙伴关系、行业地位以及其他与业务有关的因素,这些因素甚至会影响业务的性质。
概要简介SOA的概念是Gartner公司,在1996年提出来的,并于2002年12月进一步提出SOA是“现代应用开发领域最重要的课题”。
一、SOA的定义SOA分为广义的SOA和狭义的SOA:广义的SOA是指一种新的企业应用架构和企业IT基础架构,它可以使企业实现跨应用,跨部门,跨企业甚至跨行业之间的离散系统实现互连。
(注意:这里所指的服务并不单单是Web Service,它可以是以Web Service实现,也可以以业务方式实现,甚至是书面口头承诺实现)。
狭义的SOA是指一种软件架构,它可以根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署、组合和使用。
服务层是SOA的基础,可以直接被应用调用,从而有效控制系统中与软件代理交互的人为依赖性。
二、如何实现SOA目前Web Service越来越流行,并成为实现SOA的一种手段。
Web Service使应用功能通过标准化接口(WSDL)提供,使用标准化语言(XML)进行描述,并可基于标准化传输方式(HTTP和JMS)、采用标准化协议(SOAP)进行调用,并使用XML SCHEMA方式对数据进行描述。
你也可以不采用Web服务来创建SOA应用,但是这种标准的重要性日益增加、应用日趋普遍。
三、Web Service实现SOA的好处第一,Web Service是跨平台的,应用程序经常需要从运行在IBM主机上的程序中获取数据,然后把数据发送到主机或UNIX应用程序中去。
即使在同一个平台上,不同软件厂商生产的各种软件也常常需要集成起来。
通过WebService,应用程序可以用标准的方法把功能和数据“暴露”出来,供其它应用程序使用。
第二,Web Service是无语言限制的,你可以使用.NET,JAVA,PHP,VB......等多种语言开发并进行相互调用。
第三,使用SOAP时数据是以ASCII文本的方式传输,调用很方便,数据容易通过防火墙而实现无缝连接。
四、WCF是什么WCF是微软为了实现各个开发平台之间的无疑缝连接而开发一种崭新工具,它是为分布式处理而开发。