软件架构---SOA体系
SOA体系-三大核心部件
1、ESB(Enterprise Service Bus)企业服务总线
ESB是传统中间件技术与XML、Web服务等技术结合的产物。ESB提供了网络中最基本的连接中枢,是构筑企业神经系统的必要元素。从功能上看,ESB提供了事件驱动和文档导向的处理模式,以及分布式的运行管理机制,它支持基于内容的路由和过滤,具备了复杂数据的传输能力,并可以提供一系列的标准接口。
ESB的五个基本功能:
1)服务的MetaData管理:在总线范畴内对服务的注册命名及寻址管理功能。
2)传输服务: 必须确保通过企业总线互连的业务流程间的消息的正确交付,传输还包括基于内容的路由功能。
3)中介:提供位置透明性的服务路由和定位服务;多种消息传递形式;支持广泛使用的传输协议。
4)多种服务集成方式: 如JCA,Web服务,Messaging ,Adaptor等。
5)服务和事件管理支持: 如服务调用的记录、测量和监控数据;提供事件检测、触发和分布功能;
2、BPM(Business Process Management)业务流程管理
所谓业务流程管理是指根据业务环境的变化,推进人与人之间、人与系统之间的整合及调整经营方法与解决方案的IT工具。BPM可以使系统更为强壮,通过BPM组件,SOA能够更好地监控它连接的系统。
3、Portal 门户
门户是一个基于WEB的应用程序,它提供个性化、单点登录、不同来源内容整合及存放信息系统的表示层。 Portal是低成本的集成技术。如果企业已经有了很多信息系统,Portal可以很容易的将这些系统集成到一起,并以统一界面方式提供给用户。
在基础设施和已有资源都已具备的基础上,开发和构建一个SOA系统要包括以下几方面的工作:
首先需要设计开发出符合标准的服务,这是整个SOA系统最核心的要素。
基于标准服务,借助流程编排工具和建模工具,组织构造流程,生成流程模型,更好地满足业务需求。
实际构建和开发SOA系统,具体包括服务和应用程序的开发,数据的访问、处理和管理,及对服务各种形式的展现等。
SOA的具体实现有很多:sessionbean,webservice,JINI等,但是随着webservice逐渐被重视,它已成为构建SOA的主要技术
用web service实SOA的好处是:可以实现一个中立平台,来获取服务,获取更好的通用性。