我今天的报告是介绍SOA的,我们主持人给我出了一个题目,网上发给我的一个题目,我一看这个题目也给大家介绍一下,我是第一个报告,所以也希望大家听一下是什么内容。我根据这个情况,20分钟我就报告完了。
我根据这几个题目来介绍以下,因为我以前讲过几次,所以穿插起来讲一下。我介绍的题目是这几个,第一个是产生背景、解决什么问题?第二个是SOA是什么?它的二大目标。第三个SOA的实现框架与其特点。还有SOA是适用于何处、应用实例?最后介绍一下如何构建SOA?再一个是告诉大家如何去入门。
我们的分布式系统出来以后,如税务的数据大集中,银行的通存通、机票订票,这都是三层体系结构。它提供了一种解决方案,实现了一种紧耦合的分布式系统,组成一个自成体系的单个应用燃烧。而如何将现有的多个应用燃烧,通过网络将其整合成一个集成系统,以能做得更好。
随着网络的普及化,越来越迫切需要将现有多个应用系统集成。有大系统的时候最好的解决方法就是SOA,下面我来介绍一下。
我们国外讲起来是从2001年开始,已经取得了实际应用。现在国内开始不久,现在国外也是开始不久,如果我们现在加快努力的话完全可以赶上,因为差距不大。
仲萃豪演讲:SOA面向服务的体系结构
中科院软件研究所总体部资深研究员 仲萃豪
第一个是讲什么是SOA呢?它是面向服务体系的结构,面向组建和面向服务的,其实他是一种体系结构,用构建组成一个系统,一个模型,这种模型才能松耦合的办法,有它也可以,没它的也许可以,把现有的系统组成新的系统,许多系统都能易构平台,不同平台上的东西协同起来,能够相互交互,这个采用一种服务的方式。
所以这做的是IBM公司提出来的两句口号,这是整合创新,随需应变。反应了SOA的特点,第一个特点灵活性,是第二个是适应变化。满足了这两个特点就是SOA。松耦合佩戴起来很方便,可以随需应变,随需应变还有一个特征就是可以提供BPEL。
第一个目标是跨平台,不再使用CORBA的方式来实现SOA,CORBA很难做,后来发现用WEBService这个东西大家很容易接受,很容易浏览同样我也可以交互,同样可以利用把它继续发展下去,WEBService广泛接受,在这个基础上,我们用一个WEBService的描述语言来描述,这个语言是满足XML的。第二个它传输的是通过简单存取协议,是由这两个东西组成的东西,WEBService是大家公认的一个规范,是一个标准,听到WEBService很快能接受,比学CORBA、.net都方便多了,所以很快推出来了。
在这个推测中间还有重要的一点就是能用松耦合的办法,松耦合的办法就是相当于我们现在采用的中介组织,像劳务市场一样,中介组织转一转弯浪费精力,还要花费钱,同样得到好处很大,能够很快的做。
现在面向服务的系统里面一个最大的特点就叫“面向服务”。“面向服务”有什么特点呢?为什么叫“面向服务”呢?我们举一个例子,我们社会由什么组成,不管怎么组成最好的还是市场经济,市场经济什么情况呢?每个人都有自己的服务,每个单位、每个公司、每个个人都是属于社会里面能够做贡献的,能做什么事情,这个做什么事情就是服务。这种机构就很容易合起来,我也有服务我就参加进来,这样通过服务相互联系起来,通过中间的组织连接起来。我们这里的服务是跟构件不同一点,我们是通过SOA协议来实现的。
我们是有一套机制,现在搞得已经很成熟了,这套东西我们不讲了。
下面我们讲一下SOA怎么实现的?这张图是IBM网站上下的,我感觉比较好,这是其中的一部分,一部分是功能,SOA就是要服务功能属性,服务的时候有一个中介组织,服务是一层层的下去,最底层是传输协议,还有一个固层,我们后面会讲到,这套东西有了也会实现,功能实现以外很简单,还要保证它跟网络上的通信,这里就有数据传输的时候,还有安全性的要求,所以在体系结构里面出现好多的中间件,同样网络上面也有中间件需要做,这就是旁边的这部分。这就形成SOA的架构。一个是服务质量好,有安全性,还有传输的可靠性等等。
到现在为止,有了SOA是可以用CORBA也可以用其他,可以用中间件什么的,这里面比较集中,包括服务质量和服务通信的时候提出来用ESB,企业服务总线,用企业服务总线实现,用一个总线相当于PC总线一样,这要求通过总线实现就更简单,所以用ESB来实现它的总线功能。ESB实现把这个组成起来,现在国外好多公司都推出了ESB,国内的一些公司也有推出。
我们做的时候要注意,这是最早的,最先对象、组件、面向服务,我们有一批系统可以面向对象做的,是比较方便的,我在计算机方面写了一篇文章,是操作系统的结构设计,实际上就是面向对象的体系结构做的,是比较早的。可是后来有一些东西不适应了,哪些能用呢?后来我提出用异构的办法做,就像我开发新系统的时候,我用构件的系统来做,构件提出以后通过远程调用的办法来做,通过TCPIP协议来做。
我们要做到随需应变我们还有其他一部分要做,我们怎么去实现用SOA?除了松耦合和随需应变以外,他用服务的办法来做,我们可以用用户需求,很快我们就推出了一个BPEL,这是相当于我们过去C语言一样,BPEL用公式的方法写出来,也有一系列的东西,这一套东西逐渐成熟,所以现在好多公司像清华大学,他们就有需求用XML,用它写工作流,工作写出来以后就不管了,检测信息就完了,后面不用管,这个很快,这个办法就很适用,你写一个需求,写完以后新的办法就自动转换变化过去了,所以现在开发这个系统很快,写出用户需求后面可以自动转化过去,这套能随需应变,这个平台都有了。
最后我们归类一下SOA有什么优点?SOA它能把现有的资产很快的集中起来,你开发一个系统的时候,我上次碰到一个奥运会项目,北京自动交通,它要做一个试点,是奥运会交通的问题,北京交通阻塞嘛,可能它没有一个SOA的概念,体系结构概念没有,当时我们评审它很难,做不好,他给五千万也做不好,可是后来我给了几个报告,介绍给他们,当然对SOA不是很清楚,但是影响挺大,如果他们有八个系统,如果八个系统200万都可以做出来,北京现有的东西使用起来再加一加就行了,这样就快了,整合现有的系统最多半年,一般三个月可以做出来,效果也好,而且能够写流程很方便。
我是六年前最后一个博士生论文就是它,并获科学院奖,我的学生是证券公司的总经理,他是用SOA开发的,当开发之后他把消息告诉我,我感觉很好,去年不到三年时间,有很多公司都在搞,有很多公司开发布会,我每一个都去了,听了他们的报告,我听着他们的影响系什么样的?他们对SOA的标准大家都定了,他们把自己的东西结合起来,大同小异,名字解释不一样,SOA的定义不一样,可是做的都是一回事情,所有的大公司都来争这个瓜。现在有ESB这个最关键的,我感觉现在CORBA不行,.net的系统逐步要转后SOA结构,可是J2EE技术水平比较好一点,这两家很难说一个上下,我觉得有许多还要.net来做。
我们比较一下,一个是服务,一个是构件。Web服务器的描述语言和协议来做的,一个采用处理中间件来做,一个是采用ESB来做,一个是松耦合,一个是紧耦合做的。一个是随需应变强一个是弱。
我们今天的正邦公司是国内第一个用SOA技术开发了上海证券公司的管理系统。中和威公司开发了ESB的SOA运行平台。还有北京市市科委投资1800万,北京也要做这个事,国家科委也要做,最近网上已经公布了,报告上面看不到SOA这个字,但是里面的技术部分都有SOA。
现在国内有这么多的项目在做,我们不讲了。我们的报告有几个数字,我们估计2008年基于SOA的软件产品将占有70%的市场份额。我们要做的是四个层次,今天没有时间讲。
最后讲几句,其实现在DeveloperWorks上面都有,我根本来不及看,你要挑最好的东西看,我建议你们看这个文章“SOA and WebService新手入门”,我已经写了一部《软件开发方法》,已经讲过四五次了,博士生都听我的课,也有用UML技术。它的基础理论是什么,我把软件开发的东西浓缩了一下。大家如果有兴趣可以和我联系。我的报告到这,谢谢大家。

0

收藏

仲萃豪

5篇文章,8789人气,0粉丝

Ctrl+Enter 发布

发布

取消

仲萃豪演讲:SOA面向服务的体系结构
仲萃豪演讲:SOA面向服务的体系结构

扫一扫,领取大礼包

0

2
分享
仲萃豪演讲:SOA面向服务的体系结构
仲萃豪
仲萃豪演讲:SOA面向服务的体系结构