
1.采用SOA技术实现云平台部署
SOA和云计算是业界关注的热点领域,对于两者之间的关系,不同的机构和研究者观点不同。
这些观点具有一定的合理性,但也存在一定的主观性。
SOA和云计算都有丰富而复杂的内涵,产生不同的观点也就不足为奇。
随着Internet环境下业务发展的需要,有一种普遍的观点认为云计算是SOA的实现。这种观点以IBMWebSphere部门的首席技术官Jerry Cuomo为代表。他认为SOA是构建应用程序的一种架构风格,是松散耦合的,允许合成的。
云计算是一个面向服务的基础设施,它采用了SOA的架构原则并且把这个原则应用在基础设施上。
云计算和SOA具有很多的共性特点。
云计算和SOA都以构建可再利用的组件为目标,以服务为关键特性。
两者间又有明显的差别。
SOA关注于采用服务的架构设计并构建系统,而云计算侧重于服务的提供和使用。
对于软件企业来讲,采用SOA技术,可以降低软件的开发及维护的成本。
云计算是根据资源的使用来进行按需分配,从这点上讲,它可以为客户带来立竿见影的利益。
因此,采用SOA技术实现云平台的部署,使开发商与客户实现双赢。
2. SOA基本概念及特性
SOA全称Service-Oriented Architecture,中文翻译为面向服务的架构。SOA可以理解为一个组件模型。
这个组件模型将应用程序的不同功能模块用定义良好的接口联系起来。
这里的功能单元可称之为服务。
这里的接口是中立的,支持跨平台、跨操作系统、跨编程语言。
从而在不同应用系统中,采用各式各样技术开发的服务可以使用统一的方式交互。
SOA是一种架构模型,是一种构建应用系统的方法。
SOA主要用于构建信息系统基础结构,组合业务功能。
通过SOA架构,可以根据需求将松散的应用服务(业务功能)实现分布式部署,组合使用。
SOA的主要特性包括松耦合、服务调用、跨平台。
松耦合是指它可以分布部署;
服务调用是指功能模块间通过标准接口通讯;
跨平台是指它与开发语言和底层技术环境无关。
SOA采用XML进行自我描述。
SOA采用Web服务进行服务的交互。
对于SOA的交互服务的描述遵循WSDL标准(Web Services Description Language)。
SOA服务用消息进行通信,该消息通常使用XML Schema来定义(XML Schema Definition, XSD)。
消费者和提供者或消费者和服务之间的通信多见于不知道提供者的环境中。
SOA通过服务的高重用性来降低开发的成本;
通过服务的粗粒度、松耦合的特性来屏蔽复杂的业务逻辑,从而降低业务流程复杂度;
通过组织专业分工,使得软件开发的大规模化成为可能。
因此,SOA作为构建新型应用系统的解决方案,有着巨大的优势。
3. SOA的发展历史及现状
SOA的概念最早由Gartner公司在1996年提出,当时并未引起人们的关注。其原因是,在当时的技术发展水平和市场环境下并不具备实施条件。
但随着互联网业务的蓬勃发展,许多企业将自己的核心业务转移到网络上开展。
在此阶段电子商务高速发展,各个企业为了让自己的业务能够快速打包、升级以及更好地同其他业务系统通讯,提出了Web服务。
Web服务的提出是SOA发展的真正开端。
伴随Web服务的出现,数量众多、各式各样基于不同语言和技术开发的服务组件出现在互联网上。
如何才能实现这些异构系统、功能的互联互通?
如何才能适应交错纷呈的不断升级?
这时,人们发展面向服务的分布式架构可以很好地对这些服务组件进行管理,可以使不同的组件服务进行交互,可以使企业发布的服务组件具有良好的重用性,并且服务组件可以有效管理、安全可控。
SOA成为满足上述需求的最佳实现途径,开始真正迅速发展。
SOA的发展分为XML起步阶段、Web服务兴起阶段、2005年以后的高速发展阶段三大步,每个阶段都产生了一些影响至今的重要技术标准。
(1)以XML为标志的起步阶段。
这一阶段以XML(Extensibl MarkupLanguage, XML)技术为标志,时间大致从20世纪90年代末到本世纪初。
XML是一种低成本的通用交互语言格式。
开发人员可以将任何文档、数据转化为XML格式。
XML奠定了SOA的应用基础。通过XML规定了服务交互、数据交互的格式及结构,使得不同应用系统之间可以方便地进行数据传输。
数据的完整性和有效性由XSD Schemas保障,不同数据之间的映射转化通过XSLT保障。
(2)以Web服务三剑客为标志的兴起阶段。
2000年以后,Web服务的概念产生了。
通过Web服务将对外交互的接口按照统一的标准规范进行封装,从而实现跨平台、跨语言的交互。
有三个被广泛认可和采用的标准产生了,被称为Web服务三剑客。
这三项技术标准极大地推动了Web服务的普及和发展。
它们是SOAP、WSDL和UUDI。
SOAP的英文全称是Simple Object Access Protocal,中文是简单对象访问协议。
WSDL的英文全称Web Services Description Language,中文是Web服务描述语言。
UUDI的英文全称是Universal Discovery Description andIntegration,中文是通用服务发现和集成协议。
随着Web服务的快速发展,各个电子商务企业、互联网运营公司纷纷将自己的业务打包成服务或者将对外接口进行服务化封装。
Web 2.0的重要特征之一就是Web服务的广泛应用。
(3)快速成长阶段。
2005年是SOA迅速推广的开始,IBM等软件行业的领军企业和高等学院、研究机构、政府信息化主管部门、技术媒体都在研究、开发、实施采用SOA技术的产品、项目。
SOA成为技术发展的焦点。
此阶段,SOA对应用的影响已经扩展到安全保障、业务协作、事务处理等各个系统架构领域,不再是简单的Web服务。
SOA松耦合的特性解决了企业信息化建设中的两大难题。
借助SOA技术,可以在构建新业务时采用组件化的方式,对现有服务进行组合利用,节约了信息化投资。
同时以服务方式发布新业务、升级服务,满足快速业务变化的需求,使系统的扩展性更强、灵活性更高。
SOA使企业能够对业务变化快速做出反应,企业可以高效利用现有资源和现有基础架构来解决新的业务需求,实现一个可以持续发展的框架。


