阅读以下关于企业应用集成的叙述,在回答问题1至问题3。
某软件公司承担了某大型企业应用系统集成任务,该企业随着信息化的进展,积累了许多异构的遗产信息系统,这些系统分别采用J2EE、.NET等技术进行开发,分布在不同的地理位置,采用不同的协议进行数据传输。企业要求集成后的系统能够实现功能整合,并在组织现有功能的基础上提供增值服务。为了按时完成任务,选择合适的企业应用集成方法和架构非常重要。项目组在讨论方案时,提出了两种集成思路。
(1)刘工建议采用传统的应用集成方法,将应用集成分为多个层次,并采用消息代理中间件连接遗产系统。
(2)王工建议采用基于SOA的方法进行应用集成,将现有遗产系统采用Web Service的方式进行包装,暴露统一格式的接口,并采用企业服务总线(ESB)进行连接。
项目组仔细分析比较了两种方案的优点和不足后,认为刘工和王工的建议都合理,但是结合当前项目的实际情况,最后决定采用王工的建议。
【问题3】
王工的方案拟采用Web Service作为基于SOA集成方法的实现技术。请根据该系统的实际情况,用300字以内的文字说明系统应该分为哪几个层次,并简要说明每个层次的功能和相关标准。
参考答案:
在采用Web Service作为SOA的实现技术日才,该系统应该至少分为6个层次:底层传输层、服务通信协议层、服务描述层、服务层、业务流程层和服务注册层。
(1)底层传输层主要负责消息的传输机制,HTTP、JMS和SMTP都可以作为Web Service的消息传输协议,其中HTTP使用最广。
(2)服务通信协议层的主要功能是描述并定义服务之间进行消息传递所需的技术标准,常用的标准是SOAP协议,还有新出现的REST协议。
(3)服务描述层主要以一种统一的方式描述服务的接口与消息交换方式,相关的标准是WSDL。
(4)服务层的主要功能是将遗产系统进行包装,并通过发布的WSDL接口描述被定位和调用。
(5)业务流程层的主要功能是支持服务发现、服务调用和点到点的服务调用,并将业务流程从Web Service的底层调用抽象出来。相关的标准是WS-BPEL (BPEL4WS)。
(6)服务注册层的主要功能是使服务提供者能够通过WSDL发布服务定义,并支持服务请求者查找所需的服务信息。相关的标准是UDD1。
解析:
[分析]: 该问题比较简单,主要考查当采用Web Services作为实现SOA思想的具体技术时,目前比较主流的分层方式,如图1-1所示。
从图中可以看出,从功能角度考虑,整个服务栈可以分为6个部分,分别是: (1)底层传输层(Transport)。主要负责消息的传输机制,HTTP、JMS和SMTP都可以作为Web Service的消息传输协议,其中HTTP使用最广。
(2)服务通信协议层(Service Communication Protocol)。主要功能是描述并定义服务之间进行消息传递所需的技术标准,常用的标准是SOAP协议,还有新出现的REST协议。 (3)服务描述层(Service Description)。主要以一种统一的方式描述服务的接口与消息交换方式,相关的标准是WSDL。 (4)服务层(Service)。主要功能是将遗产系统进行包装,并通过发布的WSDL接口描述被定位和调用。 (5)业务流程层(Business Process)。主要功能是支持服务发现、服务调用和点到点的服务凋用,并将业务流程从Web Service的底层调用抽象出来。相关的标准是WS-BPEL (BPEL4WS)。 (6)服务注册层(Service Registry)。主要功能是使服务提供者能够通过WSDL发布服务定义,并支持服务请求者查找所需的服务信息。相关的标准是UDDI。