很久没有写过博客了,看到SOA这个圈子现在这么多活动,也来凑凑热闹,谈谈自己对SOA这个东东的一些不成熟的看法。现在大家宣传看多了、这个词也听腻了,大家都说,拿点真东西出来看看吧,这一问还真把很多人问倒了,基于SOA的解决方案,你真的见过吗?我想,问10个人估计有九个摇头,包括那些个谈起SOA头头是道的人。这有点像行骗,得先忽悠,大家认同了,才可能乖乖地掏腰包买单。不过即便是行骗,也得让掏腰包的人有实实在在的好处,毕竟做IT不是行骗,得培养长期客户,但客户,尤其是中国的客户是很实际的,喜欢的是一分钱一分货,哪怕是战略投资,短期看不到收益,也要抓狂,但SOA偏偏这样,急不得,那追求快速投资回报的客户就不大乐意实施这样的项目,再者,咱们中国人喜欢观望,喜欢跟风,大家说SOA俺也说,大家都说不上项目俺也只说不上项目。一来二去的,就听到大家在那里嚷嚷了,真正行动起来的,没有多少。再者,SOA的项目初听起来,很大,大的吓人,相应的决策者觉得风险也大,不敢轻易上马,项目做到一半流产了,谁来买单,谁来承担责任?
    SOA的概念的提出,也并非空穴来风,其概念的提出,有证可查的是96年由IT咨询分析公司Gartner提出的,时至今日,已经足足12个年头,期间几经技术变迁,而真正进入SOA时代,依然是路漫漫其修远。软件厂商们,尤其是大的软件厂商们在做其SOA解决方案宣传的时候,都把对现有应用和基础架构的集成放在首位,甚至说,先要完善IT基础设施,这听来就有些假了,我现在什么都没有,上什么样的技术不是完善基础设施啊,为什么非要套上一个高深的词叫什么SOA呢?而事实是,对于中国的很多企业而言,IT基础设施处于相对一穷二白的层面上,拿这样高深的词来忽悠这部分客户,显然是不现实的。
    我们做系统架构设计的时候,最最基本的原则就是“设计正确的系统,系统设计是正确的”,当SOA这样的理念遇到中国客户的时候,如何落地,更应该切入实际了,毕竟想在有限的预算内折腾出高技术含量的解决方案并成功实施是不容易的。历数这么多的痛点,归根结底,SOA在中国的实施,最大的问题就在于:能否在有限的时间和预算内折腾出满足企业需求的解决方案来。换句话说,就是解决方案能否满足企业的业务需求,推动企业的业务发展。
    这就有点象股票,我们可以把一个概念炒的看起来很值钱,但如果失去了其内在的依附,就很容易出现问题,我们能够把实际上仅值10元的东西炒到市值100元甚至更多,但总归有一天要回归理性,那么我们费了很大的力气炒起来的很值钱的东西就会缩水,而所做的投入则会在一夜之间打了水漂。IT本质上是一个工具,一个帮助客户节省成本,提高收益的工具。再花哨的概念都应该在这样的原则下展开,记得很久之前在SAP芮祥麟先生的博客上看到的一句话,他说只要是能够满足客户需要的东西,就是SOA。按照我的理解,就是不管怎样的解决方案,客户的需求总是第一位的。相应地,SOA解决方案最重要的一点就是要切合中国客户的需求。
    那么,在当前甚至将来十年内,中国的企业客户们,都存在有怎样的需求呢?
    具体说来,需求不尽而同,而且是不断变化的,尤其是随着中国的企业越来越紧密地融合到世界大的经济体当中,中国企业需要应对的业务环境更是一个瞬息万变的业务环境,因而IT系统在对业务灵活性的支持上,是需求最大的。而另一面,我们清楚地看到对于中国庞大的中小企业而言,IT基础设施的构建,依然十分薄弱,甚至处于空白的状态,相当多的流程和业务开展依然通过手工的方式得以实现,如何自动化这些流程、最大程度加快企业运转的效率,无疑是对于成本的最大节省,并带来更为实质的收益。对于很多大型的企业而言,如国字号的企业们,以及银行、金融、垄断资源领域的企业们,从现有IT资产到能够提供的IT预算,都比较充裕充足,具备实施大型IT解决方案的能力。
    因此笔者认为,如果真的要以SOA的尺度来衡量中国企业IT解决方案需求的话,那么可以非常粗略地归结为以下两类:
    1、应对大型企业的解决方案
    大型企业现有IT系统复杂、资金充足,如果SOA的厂商能够以SOA的理念说服这些企业的话,将能够沿用对国外大型客户实施相应解决方案的经验,从对基础架构的整合开始,逐步实现基于SOA的业务流程的重新定义和服务开发与部署,把整个解决方案迁移到SOA架构大的框架中来,然后再实施后续的解决方案:新流程部署、安全监控、新服务开发等等。应对这类企业的解决方案,我们所熟知的有IBM、SAP、Oracle等大型软件厂商在争夺。而微软新的操作系统和应用软件架构,则彰显了这个巨头在应对来基于互联网的解决方案的雄心壮志。
    2、应对中小企业的解决方案
    对于很多中小企业而言,起步部署ERP、CRM或许是更为迫切的问题,很久之前就看到国内某ERP厂商宣称将研发基于SOA的ERP解决方案,然而时至今日,ERP解决方案呢?或许依然在靠旧的系统来维护营收吧?而国外软件厂商则在应对中小企业SOA解决方案的实施上,动作频频,先是有IONA收购了logic blaze,一家针对中小企业SOA实施的开源软件供应商,而风水轮流,IONA现在又被Progress公司收购,目的也是加强中小企业SOA解决方案的实施。而这类企业能够有足够的精力和预算经的起折腾,花费很大的精力才奔到主题,满足当前的一点业务需求,还是一个非常大的未知数。
    概括前文,对于当前中国企业现有的IT应用情况下,笔者对于基于SOA的解决方案的实施,仍抱有观望的态度,尽管这一领域看起来充满了诱惑,但能够满足客户需求的才是最好的。毕竟,设计一个基于J2EE的解决方案能够给大多数厂商马上带来最为现实的收益,而受益正是客户所迫切需要的。