SOA是一种软件架构
SOA的核心概念
SOA架构的特点:1、松散耦合 2、分离关注点(业务和技术)
SOA的引入分为四个阶段,成熟度模型
1、第一个阶段:现有业务系统或新系统中服务的发现、设计和实现(服务化)
2、第二个阶段:引入ESB,对系统提供的服务进行集中管理
3、第三个阶段:使用BPEL流程,以快捷的交付业务功能
4、第四个阶段:SOA治理
总线的优点:解耦、标准化、灵活地扩展
ESB的主要职能:服务的路由、协议的切换、内容的转换
将来SOA的集成主要应用四大领域
1、应用集成(服务集成):面向应用系统的服务互操作(Web Services、IBM MQ、Active MQ)
2、界面集成:用统一的界面展示企业内多系统(Portal)
3、业务流程集成:使用BPEL技术将服务编排成流程(WPS,Oracle BPEL)
4、数据集成:面向海量数据异构数据库的汇集处理(数据交换:ETL产品)DataStage
开发SOA架构思路
1、设计整体系统总览图(分析待开发、待改造的业务系统的涵盖领域)
2、对IT系统进行系统内和系统间的服务的分析设计
思路:首先从系统间集成的要求来发现系统内的服务,然后进行分解成系统内的原子服务
3、根据业务要求进行设计制定流程,并指定流程中包含的活动和使用的服务。
4、定义使用外部服务,和进行新服务的开发
5、通过服务的组合和编排来推出新的流程
注:流程指的BPEL流程
基于SOA思想的技术架构
一、规范
SOA的规范:SCA、SDO、BPEL
流行的松散耦合技术规范:Web Service(WSDL、SOAP、UDDI)
Portal方面的规范:Portlet规范
二、技术框架
SCA、SDO的框架:apache-tuscany-sca,apache-tuscany-sdo
Web Service框架:Axis1/2;XFire;CXF;Spring WS
.NET平台:VS2005,需要安装Web Services Enhancements (WSE) 3.0 for Microsoft .NET
VS2008/VS2010,WCF(Windows Communication Foundation)
三、产品
ESB Server/Process Server/Portal Server/消息中间件
商业:
IBM系列:IBM WebSphere ESB Server/IBM Message Broker;IBM WebSphere Process Server;IBM WebSphere Portal Server;IBM WebSphere MQ
Oracle/BEA系列: Oracel Aqulogic Service Bus;Oracle BPEL Server;Oracle Portal Server
Microsoft系列:Microsoft BizTalk Server;Windows Workflow Foundation;SharePoint Portal Server ;Windows Communication Foundation
开源系列:
ESB:JBOSS ESB,Mule;apache-servicemix
Process: JBOSS JBPM,ActiveBPEL
Portal:Apache JETSPEED...
消息中间件:ActiveMQ
SOA案例
1、ESB
2、BPEL