SOA从中间件EAI发展而来,以业务为中心,拥有业务级的事务粒度。它不是技术标准,不依赖于具体的技术协议。是一种架构蓝图,有清楚的服务合约。
企业SOA的成功:包括架构、组织、实际经验(成败经验)。
架构:是技术方面的因素,是指策略和流程的变化。
组织:是指业务组织。
SOA层:组织服务。
扩展阶段分成三个成熟级别:基本SOA、网络SOA、流程化SOA。
目标:确保当前的短期收益与永久改善IT环境。
企业IT革新路线图:
企业软件:组织、业务模型、流程。算法简单,数据结构一般。
企业软件架构:简单性、灵活性和可维护性、可重用、功能和技术合并。
SOA是一种高级概念,要分步实现。
服务:是一个计算机程序在另一个计算机程序的请求下执行的有意义的活动。提供业务功能:公共需求、重用度。
面向对象的抽象粒度太小。
SOA中,功能和数据分离。直接映像到业务实体,在业务级集成。
SOA建立在现有中间件技术和分布式计算概念基础上。
通信中间件:
通信机制不同:通信模式:同步、异步。
产品多。
附加的运行时特性:安全、容错、负载平衡、日志、事务。
核心资产:参与者,接口描述。
与技术相关的适配器:中间件映射、XML编组、CORBA占位程序。
中间件总线:COM、CORB、Web Services
通信中间件:应用程序、中间件框架、网络协议。
中间件框架包括:App、Stub、RPC库(ORB)、Protocol
MOM(面向消息的中间件)。
事务监视器:TP、TPM、TX
消息队列:应用服务器的基本功能,存储组件、管理数据源的连接、支持不同类型的用户接口。
同步:RPC 异步:MOM
实现同步/异步的基本方法:队列技术/同步、单向异步:fire-forget RPC:不能大规模应用通知
回调和轮询:实现困难。
接口语义
荷载语义
业务关系互不影响,新的对旧的不影响。
松藕合增加了系统的复杂程度。