面向服务的体系结构(Service-Oriented Architecture,SOA)是指在Internet环境下为了解决业务集成的需要,通过连接能完成特定任务的独立功能实体实现的一种软件体系结构。SOA采用面向服务的软件封装技术,它以服务接口和服务实现的方式呈现,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义的接口和契约联系起来。
SOA-SSH分层架构设计
结合上面对SOA和J2EE开发中基于SSH的分层架构的分析,提出了SOA-SSH分层架构。这个架构是基于SOA的,也是基于J2EE的,所以这个架构同时含有了二者的特征。J2EE体系中,通常采用EJB组件或Spring来实现业务逻辑层,而在SOA系统中业务是基于服务的,于是这个架构中采用把业务逻辑层的组件包装成Web Service的方式,使用Web Service作为SOA的服务提供者,Spring作为服务的实现,同时使用企业服务总线(ESB)技术来实现SOA中的服务中介,并且在J2EE体系的业务层之下添加了一个服务代理层,用来封装对服务的具体调用代码。架构采用ESB担当SOA服务注册中心的角色,使用ESB能够实现异构系统的集成。SOA-SSH分层架构如图3所示。
