BlogJava 联系 聚合 管理  

Blog Stats

随笔分类(196)

随笔档案(209)

文章档案(4)

相册

CRM&ERP

Google

SOA


BlackStone SOA Group

在螺旋上升的过程中升华

--初涉SOA学习心得

参加IBM大赛两月余,我从一个完全的SOA门外汉走入了五光十色、繁华似锦的SOA世界。虽然璀璨的皇冠对我来说依然是遥不可及,但是,一路走来,旖旎的风光和自己的心得还是颇值得记录下来与大家分享的。于是,不敢藏私专美,撰文共享之。

一、SOA论道

"SOA既不是一种语言,也不是一种具体的技术,它是一种新的软件系统架构模型,它主要应用于解决在Internet环境下的不同商业应用之间的业务集成问题。"企业应用集成的问题由来已久,历经技术的变迁,其核心的问题依然是以下的两点:一是如何解决不同企业应用系统的数据一致性问题,二是如何实现不同企业应用系统之间的互操作;而最为重要的约束也依然保持为要求在集成的过程中尽可能的保持原有的企业应用系统不变。于是,针对这一需求各种EIA技术日新月异、层出不穷。SOA之所以能够成为眼下最为流行的解决方案有着种种原因,可是最为关键的原因在下认为在于其抽象层次更高,封装的粒度更大。在软件设计的领域中,有着一个颠扑不破的设计原则,那就是Dependency Inverse Principle,当我们的设计所依赖的类或者接口越是抽象,设计的可扩展性和可维护性就越好,能够被复用的能力也就越强。更进一步,我们的抽象层次越高,对于问题的描述和认识也就越远离机器的范畴而更加接近人类日常思维的范畴;这有利于我们更好的设计、实现、调整、维护和升级系统。

SOA的应用当中,基于Web Service的解决方案得天独厚。SOA架构是一种分布式架构,如同任何分布式架构一样,其实现的核心在于对于接口的描述语言和系统之间的通信协议。Web Service的WSDL、SOAP以及UDDI为SOA的实现提供了一种完美的契合,基于Web Service实现SOA不仅易于实现SOA的松耦合性和位置透明性,更为重要的是,Web Service是基于HTTP协议的,这对于在Internet环境下顺利地穿越防火墙实现远程调用格外关键。

"复用和自动化是软件的生存之道"。SOA的开发是CBD的延续,SOA的粗粒度服务组件代表着软件开发粒度不断增大的趋势,而SOA中集成架构和基础架构部分更是应用服务器的一种分布式扩展。通过这样的架构分层,使得应用程序设计开发人员和系统集成设计开发人员能够把精力集中在对业务逻辑的分析、建模和处理上,使得大家无需重新发明轮子。"术业有专攻",通过这样的复用,SOA事实上实现了软件设计开发的分工。(待续

王青

2006-7-05

posted on 2006-07-05 16:44 BlackStone SOA 阅读(253) 评论(0)  编辑  收藏 所属分类: SOA Learning

只有注册用户登录后才能发表评论。


网站导航: