今天在ibm的网站上看了这篇文章,觉得概念介绍的比较好,有几点一直很模糊,看了之后明白了许多。
原文的链接为:http://www-128.ibm.com/developerworks/webservices/newto/
它还提供了很多比较有用的参考文档。
我看了之后摘要了几点:
1,面向服务的体系结构(service-oriented architecture,SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互。
2,如果要形成一个soa体系架构的模型,不但要有服务的描述(service description),还需要定义整个应用系统如何去执行它的的服务的一个工作流程。另外还要寻求业务操作和业务中使用软件的操作的一个转换点。因此,一个soa应该将业务的商业流程和业务流程联系起来。所以说工作流在soa的设计过程中也扮演着一个重要的角色。
3,soa services与web services的区别在于设计方式。soa并不详细的定义services通过什么特定的方式交互的,它只定义服务之间如何相互理解以及他们可以通过怎么的方式进行交互。soa services与web services的区别就像是战略(strategy)与战术(tactics)之间的区别一样。也就是说web services是soa模型的一个"战术"上的实现。web services是soa实现方式的一个子集。当然实现soa的方式还有很多中,除了web services外,还有CORBA,Message-Oriented Middleware(IBM的MQ)等。
4,为了对各种消息进行控制以及处于对安全、策略、可靠性等的需要,又提出了一种新的软件对象,即ESB。
今天还拿到了IBM的SEK(2005 Release 1),发现其工具实在是多,简直让人眼花缭乱,这里再说一下各个工具在开发中的作用:
Model:WebSphere Business Modeler,Rational Software Architect
Manage:WebSphere Business Monitor,Tivoli Composite Application Manager,Tivoli Identity&Access Manager
Deploy:
Process:WebShere Process Server,WebShere ESB&Message Broker, WebShere Partner Gateway&Adapter
People:WebShpere Portal,WebShere Everyplace Deployment,Workplace collaboration services
Information:WebSphere Information Integrator
Application Infrastructure:WebSpere Application Server&XD
Assemble:WebSphere Integration Developer,Rational Application Developer.
由于是Release 1,里面不包括WebShere ESB,希望能够早日拿到Release2。