3. 企业应用平台软件运行时的配合
以上介绍的这些产品,在运行时的实例如下图所示
企业应用平台软件运行时实例示意图
说明:
(a) 服务总线的传输层通常使用消息中间件实现。服务总线上运行多种类型多个数目的容器,容器里包含各种服务的实例。服务之间的数据交互通过接口调用进行。规则引擎,业务流程管理引擎,部署管理平台等软件和平台虽然不属于服务总线,但也可以与服务总线上的容器或者服务交互。
(b) 服务容器,容器里的服务可以是多个,引擎和引擎里运行的流程也可以是多个,都可以分散在总线上不同的机器节点上,彼此通过总线互联。应用门户,管理监控平台,策略控制平台在一个应用系统里一般只需要一个,来管理监控整个系统。 这是一种分散处理,集中控制的设计思路。把业务处理和通用处理分离,通过总线上的远程调用编织成完整的处理过程,对比AOP的程序编织技术,这里是分布式系统级别的编织技术。
(c) 在总线上的数据流包括业务数据流和监测控制流。
总结:描述了企业应用平台软件的层次结构,运行时彼此的配合关系。可以看到
(a) 平台软件帮应用开发者做了数据传输交互,数据格式转换,连接已有系统,数据展现等技术层面的通用工作;而应用开发者需要做数据的计算处理,规则定义,逻辑流程编排等业务逻辑层面的实现。
(b) EAI平台强调互联不同的组件技术和软件产品,它使用与SOA类似的技术方式实现,即制定统一的数据和接口定义;SOA提供了一种开放的标准的异构接口互联互通技术,应用这种技术,SOA平台可以提供连接已有组件技术和软件产品的适配性基础服务。