注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

Lucifer 的博客

网易英超评论专栏

 
 
 

日志

 
 
 
 

SOA Part I: What is SOA  

2008-03-23 15:19:38|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

SOA现在是个时髦的玩意,仿佛在Entprise 2.0时代,它是后台的唯一选择一样.每个人都谈它的时候显得很兴奋,跟风的公司老总们总是一副觉得不这样做他们自己的企业很落伍一样的表情,急躁的,喧哗的,仿佛怕别人深究他们的学历一样.其实又何必呢,没人规定文盲不能做老板,妄自菲薄的通常是你自己,也没有必要在酒后拍着桌子拍着胸告诉别人大学生,研究生,博士生有个屁用,一样找不到工作,老子初中毕业文凭一样做老板,吃香的,喝辣的,玩好看的女人,一副鄙视中国教育制度害人到深恶痛绝的表情,其实只是为了掩饰现在事业伟大的自己在少年时候由于读书成绩太差被别人当傻瓜而已.何必呢?

当然,真正的大企业的老板当然不是这么浅薄的人,他们懂行,所以他们在宣扬SOA,他们知道SOA可以为他们带来什么.相信我,伙计们,我们的社会特别是大企业的商业所拥护某样东西的唯一理由就是:这能带来钱,很多很多钱.再先进的思想,再伟大的理论,如果不能带来钱,那不过就只是历史夹缝里面被人缅怀的东西.就象老板不一定要有多高文化高品位一样.被一致认为的潮流通常是赤裸裸的金钱与利益相关.铺天盖地的网游其实是最低级的,单机游戏的层次比它高很多,但是一样死了.因为网游能带来钱,而单机带不来钱,仅此而已.俗世带有一个"俗"字,所以大家有时候不要太认真,很多高新的IT技术无外乎这点东西,说穿了就是如此.

看过很多谈SOA的文章,有很多冠名为"专家"的人士写出来的文章有时候真是我无法理解的,可能我自己天分和悟性所限,无法充分理解他们对于一个事物那种抽象的术语纵横交错的描述,可能他们的大脑比我的更能接受抽象的东西,而我比较初级,我只能按照我的思路去理解一样东西,我也不能问他们,他们的文章里面术语实在太多,各行各业的,问出来就仿佛显的我很浅薄,"现在的80后连这都不懂啊",呵呵,然后又开始总结70后是多么的勤劳,多么的奋斗,多么的坚韧,直到我被说的睡着为止.这也是我写SOA的理由,我听不懂他们的,我只说我自己理解的.总结的

好吧,首先我们谈一下什么是SOA。

按照术语的解释来说Service Oriented Achitecture(我没有拼错巴...),面向服务的构架,就这么简单.其实SOA并不是某个技术,比如我们通常所说的java(语言),.net(平台),structs(框架),Ajax(技术)那样的概念,SOA本身并不是一个标准,也不是一个摸的到的东西,你不能说我做一个SOA,因为那个不是技术.SOA是一种思想,就像我们的马列主义一样(喂,喂,不准睡,我也不想用这个比喻的),只是一种设计思想和方法,我们平时定义的术语都是围绕着这个思想的一些概念.每一个厂商都有自己在SOA思想上的产品,拿去卖钱,所以SOA只是个空壳一样的概念,具体的实现有很大的自由度,每个厂商都有自己的一套做法.

老是有人说SOA是面向对象的(OO)的升级版本,因为我们的编程从面向过程到面向对象是一个进化,所以很多人认为面向服务是面向对象的进化,其实是错误的.SOA和OO是两个层面的上面的东西,SOA是框架层面上的,指导思想层次上的,这个指导思想帮助你为企业做解决方案.而OO是具体编程上的实现方法,比如做一个组件什么的,把它模型化更容易让人理解.所以不在一个层次上面的东西是无法比较的,这种比较是没有任何意义的.

还有一种认识是web service就是SOA的说法,这种说法也是错误的.web service其实是SOA的一种实现方法,SOA是思想,而Web service是基于这个思想的一种产品.不过web service对于推广SOA的确有着很大的作用.SOA其实是1995年就被人提出了,不过作为一个思想是不太会被大众立即接受的,人们喜欢摸的到的东西,这玩意太抽象了,所以它就很快被人们遗忘了,就像马列主义被中国共产党发现前面也被人民遗忘了好久.(..貌似德国人现在还是对于马克思处于遗忘状态的.....)直到java和.net平台都推出了web service 这个产品,人们才想起来:噢,原来SOA这么伟大啊.所以大家都开始拼命的推荐和宣传SOA了,但是并不是说web service就是SOA的最佳实现产品了,它有着自己的缺陷,尤其是标准的缺失使它的通用性流通性和安全性有一些问题.人们仍然在摸索着能够实现SOA的,比web service更先进的产品,拿来卖钱,卖给那些企业,然后企业用SOA的产品来更好的加速自己的业务,拿来赚钱.

这种说法看到过某个专家有个比喻说,人们在发现原子能裂变后才明白了爱因斯坦的E=MC平方有着多么大的威力,但是能够更好的实现E=MC平方这个公式的却不是原子能裂变,人们后面又发现了更强大的原子能聚变,现在还在探索更有威力的东西.恩,看来典型的人类社会就是赚钱和杀戮,呵呵.

我也举一个我的比喻,不喜欢足球的同学请自动跳过下面的一段.有一种足球战术体系是4-2-3-1,这种体系的核心思想其实不是攻击也不是防守,而是控制,就是说我防守,其实我控制你来进攻,然后我拉开后打你的反击,而我的进攻是在控制局势不至于被人打反击的基础上进行的攻击.也就说说不管对方是进攻还是防守都在我的控制之下.但是这种早就存在的战术思想却是直到皇马在2000-2002年夺得2次冠军杯后才被大众说认知的,皇马的当时的四名后卫是萨尔加多,罗伯托卡洛斯,希耶罗和坎比,虽然防守一般但是都有不俗的脚下技术和传球能力,两名边后卫还能套上进攻,中场那个"2"是雷东多和埃尔格拉(或者是马克莱莱和坎比亚索),有不错的位置感和传球能力,前场的三名攻击手劳尔,费戈和齐达内自然不必再说,前场的1莫里恩特斯起一个塔的作用来牵制,当时这套战术被人认为是极为成功的的4-2-3-1,但是后来把这套战术推到另外一个层次的却是AC米兰,内斯塔,斯塔姆,马尔蒂尼,卡福那个时候都是颠峰期,比起皇马的战法,这四名后卫在技术不相上下的同时防守能力更强,而中场的皮尔洛控制能力低于雷东多,但是皮尔洛+加图索却真正体现了攻防一体化,比皇马的那个2的攻防不明,只能控球强很多,前场的米兰有西多夫,卡卡,舍夫琴科也许相对于皇马的三人组劳尔,费戈,齐达内控制能力弱一点但是突击能力无疑更强,在防守到攻击的一瞬间,那个时候米兰的攻击线的爆发力更强更快速,更能突破对方的防线,前场的因札吉在把握机会能力上又强于莫里恩特斯.所以说米兰的4-2-3-1在攻击防守两端都是比较明确的,解决方案都比皇马先进,尔皇马的4-2-3-2是攻击防守模糊,不平衡,单纯的控球强,刺杀能力弱.所以米兰才更能体现4-2-3-1的"控制"精髓,控制不单指控制球,而是控制对方的行为,让你防守就防守,让你进攻就进攻.

SOA其实就好比4-2-3-1的战术体系,2000-2002的博斯克的皇马就好比web service属于先发的产品,而2002-2006的米兰属于后发的产品,现在踢4-2-3-1的球队很多,连罗马这种都踢,所以说自由度很大,各个球队各个教练的4-2-3-1都是不同的,就象每个厂商每个架构师实现SOA的产品也是不同的一样.SOA是思想自由的.

要理解SOA必须从业务出发而不是我们通常的技术,具体该怎么理解呢,请待下回分解~

  评论这张
 
阅读(239)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018