Posted on 2010-05-09 16:35
默认为零 阅读(425)
评论(0) 编辑 收藏 所属分类:
技术 、
感悟
SOA
SOA是面向服务的体系结构(Service-Oriented Architecture)是一种方法论、一种组件模型。它将企业资源集中化治理,将应用程序的不同功能单元服务化,并通过服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它独立于实现服务的硬件平台、操作系统和具体实施语言,如:WEB服务接口定义中引入WS-I协议规范化不同平台、不同语言下的通讯标准。如果能从业务语义中剥离出低耦合、可高度重用的服务组件,那是更深一层次的SOA理论实践。此外,高度重用的服务组件出现势必服务流程化的通讯,因此,到这一层面的SOA实践应该已经涉及到服务流程的管理包括流程的事务方案等等。
一个标准而完美的SOA架构的实施是一个浩大又复杂的工程。(实际上SOA没有完美一说^_^)
愚以为,SOA的实施(从一穷二白开始)大致可以走这样一个过程:
第一阶段:初始框架
(建立企业元数据模型、建立服务间的通讯标准、分析各领域的对象模型、设计SOA路由和治理的底层模型、建立依托于统一通讯标准的企业总线等)
第二阶段:基本论证(小规模)
(抽取部分业务语义设计开发服务、基于基本路由架构的通讯、运行期路由各方角色和数据的实时监控、统计和维护等)
第三阶段:架构深化(大规模)
(服务开发周期与服务运行周期的治理细化、引入流程服务实施方案、深化服务重用性方案、细化运行期实时类监控和维护等)
每个阶段其实都有大量的分析、设计以及开发工作,涉及到平台搭建、业务分析、模型建模、开发语言、具体通讯标准的方法论和规范等等,真是面面俱到,不一而足。此外,SOA实施过程中的企业总线(ESB)并不是必须的,它和企业规模和实施细节等影响服务间耦合性的因素息息相关,比如 企业内部的业务依赖过于繁杂的情况则可以考虑建设企业总线来降低服务模块间的耦合度,加强服务重用性。架构者可视实际情况和企业业务需求而定。
SaaS
SaaS是软件即服务的简称(Software-as-a-Service),它随着互联网技术和应用软件的成熟而兴起的一种完全创新的软件应用模式。可以把它简单理解为一种软件和信息的托管,即 企业用户将自己企业信息化的进程建立于依托互联网服务厂商的系统资源上,企业用户可以省却硬件投入,减少软件投入,得到服务厂商的更好更专业的服务。在信息化时代进程中,这是一种崭新的思维和操作模式,可行性是很强的,特别针对中小企业来说。在中国这么庞大的企业规模量的前提下,市场前景是相当可观的。
但是,SaaS的发展过程中也有反面声音,比如,在中国一部分法律法规及相应实施准则不是很健全的前提下,对于大型企业来说,他们将自己核心的资源依托于外部厂商软硬件服务是相当有风险的。这类企业有足够的人力、物力、财力建立完全属于自己的一套体系。因此可以想象,SaaS要想发展壮大,她必须依托市场中广大中小企业的鼎力支持。