2、ESB-企业服务总线,是SOA技术架构落地的一个基本部件,现在我们说的SOA集成平台基本都需要有ESB组件,ESB最基本功能即是实现点对点集成到总线式集成的转换,在这个过程中实现了消息协议的转换和适配,数据传输,数据转换和映射,路由等基本功能。ESB发展从原有的EAI以消息中间件为核心转化到现在的以服务为核心,但是仍然支持消息转换和接入。
3、Web-Service是一种技术方面的标准,真正的跨语言,跨平台,提供了标准的服务定义,服务注册,服务接入和访问的方式。在讲SOA时候我们会谈到需要实现操作方法和操作数据的解耦,web service可以比较好的做到这一点,包括我们用wsdl进行方法层面的定义,用xsd进行传输数据的定义。但是Web-Service和SOA架构风格没有直接关系,Web-Service只是一种实现方法,不用Web-Service也可以实现SOA架构风格,这一点必须明确。否则一谈到SOA就简单理解为web service就犯大错误了。
Axis2框架和CXF框架,不管是服务提供方还是服务消费方,都建议选择CXF框架,axis框架不管是老版本,还是最新的版本,总是存在兼容性方面的各种问题,这个我们在实践中遇到过很多,现在已经只推荐使用CXF框架。
1、REST风格下的,只有一种协议,那就是HTTP。webservice就和多种协议了。如:TCP、HTTP、MSMQ等多种协议
2、使用方式上的不同。REST只要客户端能够模拟HTTP请求,通过标准的HTTP动作,都可以进行访问。它使用的 是HTTPChannel管道,而webservice使用的管道有HTTPChannel、TcpChannel、RPC等多种。
3、REST寄宿时,虽然可以选择多种寄宿方式,但必须有应用服务器的支持。
soa是服务对服务的,web service是服务对客户端的.
服务接口都是基于开发的。
服务接口和服务的具体实现都是分离的。
Web Service服务接口需要绑定具体实现服务的服务组件来实现服务,它对具体的服务实现完成了封装,实现了服务的透明化,客户端不需要知道服务是如何实现的,但是Web Service组件本身是知道服务是如何实现的,
另外客户端调用Web Service组件时,需要知道Web Service的具体位置和传输协议,这些都会造成一定的不灵活性,它只是实现了一定程度上的抽象。
SOA架构只和服务接口进行绑定,对服务接口实现了封装,实现了服务接口的透明化,服务位置的透明化,服务传输协议的透明化。SOA本身也不知道服务具体是如何实现的。当客户端通过SOA调用服务时,不需要知道真正的服务提供者是谁,具体的服务位置在哪里和具体的传输协议是什么。SOA实现了最高程度上的抽象化,为实现具有最高灵活性的服务建立了架构基础。
SOA架构的要点:
SOA架构所提供的服务之间是松散耦合的。
SOA架构应该按更接近于实际业务本身的粗粒度的角度来对服务进行划分,发布服务接口方法。这就要求设计和开发人员直接从业务的角度来构建SOA所提供的服务,而不仅仅从模块和技术的角度来构建SOA服务。
SOA架构中的所有服务的具体实现、位置和传输协议对调用者来说都是透明的。
先给出一个概念 SOA ,即Service Oriented Architecture ,中文一般理解为面向服务的架构,既然说是一种架构的话,所以一般认为 SOA 是包含了运行环境,编程模型,架构风格和相关方法论等在内的一整套新的分布式软件系统构造方法和环境,涵盖服务的整个生命周期。而在 SOA 的架构风格中,服务是最核心的抽象手段。SOA 中的服务是构建在一些列基于开放标准的基础之上的,
Web 服务定义了如何在异构系统之间实现通信的标准化方法,从而就使得 Web 服务可以跨越运行平台和实现语言,同时也使得 Web 服务成为了实现 SOA 中服务的主要技术。
基于SOA的解决方案,努力使经营目标而建立企业的质量体系。SOA架构是五层水平:
维基百科解释:SOA:面向服务的软件架构(Service Oriented Architecture),是一种计算机软件的设计模式,主要应用于不通应用组件中通过某种协议来互操作,例如典型的通过网络协议。因此SOA是独立于任何厂商、产品与技术的。
SOA作为一种架构依赖于服务的方向,它的基本设计原理是:服务提供了一个简单的接口,抽象了底层的复杂性,然后用户可以访问独立的服务,而不需要去了解服务底层平台实现。
正因为SOA架构实现不依赖于技术,因此能够被各种不同的技术实现。
427

被折叠的 条评论
为什么被折叠?



