SCA 软 件 架 构 一 、 SCA(Service Component Architecture)软 件 架 构 的 概 述 SCA 是一个开发SOA(Service-Oriented Architecture)面向服务应用的简单模型规范,它描述用于使用SOA 构建应用程序和系统的模型。它可简化使用SOA 进行的应用程序开发和实现工作。SCA 仅仅是个规范,各个涉及SOA 技术的公司的实现也各不相同。 SCA 是由Open Service Oriented Architecture collaboration 提出的一种组件化的面向服务编程模型,并于2007 年正式捐献给OASIS 组织。 SCA 提供了服务组件模型、装配模型和策略框架来支持各种异构应用的封装和集成。同SCA 并列提出的SDO 规范,定义了SOA 应用程序中访问各种异构数据源的方法。组件可以以各种不同的协议发布服务,包括SOAP、RMI、REST、JMS,甚至可以是虚拟机内的对象直接调用。组件可以使用多种技术实现, 包括EJBs, Java POJOs ,Spring Beans,BPEL process , COBOL ,C++, PHP … SCA 中,最重要的一个概念是Service----服务,它的内涵是独立于具体的技术。因此,SCA 不会称之为 Java 组件架构,或 Web Service 组件架构。所谓的具体技术,主要有两层含义:一是程序语言,而是传输协议。 现有的组件是和传输协议紧密耦合的。比如 EJB 组件采用的是RMI传输协议,Web Service 组件采用的是SOAP 传输协议。SCA 组件则能 自由地绑定各种传输协议。 SCA 是对目前组件编程的进一步升华,其目标是让服务组件能自由绑定各种传输协议,集成其他的组件与服务。 SCA 与传统的业务组件最大区别在于 SCA 实现了两个功能:一是组件和传输协议的分离,二是接口和实现语言的分离。 二 、 SCA 规 范 基 础 知 识 SCA 编程模型是高扩展性和语言中立的,它易于被扩展为多种实现语言技术 JAVA,C++,BPEL,PHP, Spring 等,多种远程访问bindings 包括 Web Service,JMS, EJB,JSON RPC 等,多种主机环境例如 Tomcat,Jetty,Geronimo,OSGI 等。SCA 分隔式架构可以使开发者更注重业务逻辑,而不必要关注诸如可靠性,安全,事务等系统属性,这些属性都配置到配置文件中。SCA 的组成部分如下图所示: (1)Component 深蓝色方框(Component A 和Component B)表示是Component。Component 是SCA 原子(最基层的组织单元),其封装了实际的业务逻辑。Component 可以采用运行环境支持的任何编程技术实现。例如,Apac...