一种Oracle企业服务总线与业务活动监控集成方法及装置的制作方法

文档序号:6383505阅读:265来源:国知局
专利名称:一种Oracle企业服务总线与业务活动监控集成方法及装置的制作方法
技术领域
本发明涉及计算机领域,特别是涉及一种面向服务架构(Service-OrientedArchitecture, SOA)中Oracle企业服务总线OSB与业务活动监控BAM集成方法及装置。
背景技术
Oracle企业服务总线(Oracle Service Bus, 0SB)是传统中间件技术与XML、Web服务等技术结合的产物。OSB提供了网络中最基本的连接中枢,是构筑企业神经系统的必要元素。OSB的出现改变了传统的软件架构,可以提供比传统中间件产品更为廉价的解决方案,同时它还可以消除不同应用之间的技术差异,让不同的应用服务器协调运作,实现了不同服务之间的通信与整合。从功能上看,OSB提供了事件驱动和文档导向的处理模式,以及分布式的运行管理机制,它支持基于内容的路由和过滤,具备了复杂数据的传输能力,并可以提供一系列的标准接口。业务活动监控(Business Activity Monitoring, BAM)提供对业务绩效指标的实时访问,以改进业务运作的速度和效率。目前OSB与BAM集成一般采取的都是使用JCA绑定技术方案,先是利用OracleJDeveloper根据要求创建JCA Adpter,在创建完JCA Adpter后,会生成三个文件,然后再将这三个文件导入到OSB中,导入完后会生成一个WSDL,接着根据这个WSDL创建相对应的业务服务、代理服务,同时还需要手工编写一个XLST,这个XLST是用来在代理服务消息流里将需要展示的信息分配给BAM。现有的OSB与BAM集成技术方案存在如下缺陷创建导入JCA Adpter到OSB存在繁琐操作,每次编写XLST存在难度并且重用性不高。每次创建JCA Adpter都需要进行一系列操作,并且创建完以后还需要将生成的三个文件上传到OSB所在的服务器上,这样的操作实在太繁琐,同时每次根据XSD手工编写XLST也存在相当大的难度,重用性太低。所以,有必要提供一种新的方法,以实现在OSB与BAM集成方案里去除繁琐操作,提高接口消息流配置步骤重用性。

发明内容
本发明的目的在于提供一种OSB与BAM集成方法及装置,可以在OSB与BAM集成技术中去除导入JCA Adpter到OSB的繁琐操作,减少编写XLST的难度,提高其重用性;且客户端利用基础服务返回调用信息的关键字段查询所需要的信息,方便客户端排错。为解决以上技术问题,本发明提供一种Oracle企业服务总线OSB与业务活动监控BAM集成方法,包括步骤1、OSB接收客户端简单对象访问协议SOAP请求,通过管道使用Xquery和Xpath语言获取SOAP请求的服务调用信息;步骤2、OSB调用基础服务将获取到的所述服务调用信息保存到数据库表;
步骤3、BAM根据所述数据库表创建数据对象,利用所述数据对象创建展现需求的
展现报告。优选地,所述步骤I中,具体包括1.1、OSB的代理服务接收客户端SOAP请求,通过请求管道将SOAP请求路由到业务服务;1. 2、业务服务通过服务端URL将SOAP请求发送到服务端;1. 3、服务端接收到SOAP请求,处理SOAP请求,将结果通过响应管道经业务服务、代理服务返回给客户端。优选地,在请求管道的路由中,使用Xquery和Xpath语言通过各种函数获取SOAP请求中的服务调用信息,同时获取到这些信息后并将他们赋给变量,进行信息数据保存。优选地,所述步骤2中,还进一步包括基础服务还返回调用信息的关键字段。优选地,所述步骤3具体包括3.1、BAM根据所述数据库表创建数据对象;3. 2、根据展现需求,BAM利用所述数据对象创建展现需求的展现报告。为解决以上技术问题,本发明还提供一种Oracle企业服务总线OSB与业务活动监控BAM装置,包括接收模块,获取模块,调用模块,创建模块,所述接收模块,用于OSB接收客户端SOAP请求;所述获取模块,用于OSB通过管道使用Xquery和Xpath语言获取SOAP请求的服
务调用信息;所述调用模块,用于OSB调用基础服务将获取到的所述服务调用信息保存到数据库表;所述创建模块,用于BAM根据所述数据库表创建数据对象,利用所述数据对象创建展现需求的展现报告。与现有技术相比,本发明提供的一种OSB与BAM集成方法及装置,通过在请求管道的路由中,使用Xquery和Xpath语言通过各种函数获取SOAP请求中的服务调用信息并给获取到这些信息赋给变量进行信息数据保存,可以在响应管道中使用这些信息数据;同时基础服务返回调用信息的关键字段,客户端通过关键字段事后去bam中查询所需要的信息,方便客户端排错端,以基础服务插入数据的那些表建立数据对象,然后根据展现的需求,创建各式各样的展现图形,以及创建各种查询条件,缩小查询范围。通过本发明的方法,可以在OSB与BAM集成技术中去除导入JCA Adpter到OSB繁琐操作,减少手工编写XLST难度,提高其重用性。


此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中图1是本发明提供的一种OSB与BAM集成方法的流程图;图2是本发明提供的一种OSB与BAM集成装置的结构示意图。
具体实施方式
为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。代理服务是OSB架构的一个核心概念。服务使用者经由这个接口与托管的后端服务连接。代理服务是“服务总线”在本地实现的中介Web服务的定义。使用OSB控制台,可按照WSDL和使用的传输类型定义接口,配置代理服务;并在消息流定义和配置策略中指定消息处理逻辑。由于代理服务可将消息路由给多个业务服务,故可以独立于与代理通信的业务服务,配置代理服务的接口。在这种情况下,代理将被配置为消息流定义,它根据路由逻辑,将消息路由给相应的业务服务,然后将消息数据映射为业务服务接口需要的格式。代理服务的核心是“上下文”,上下文是一组XML变 量,由请求流和响应流共享。可将新变量动态地添加到上下文,也可从上下文删除变量。预定义上下文变量包含有关消息、传输头、安全原理的信息,当前代理服务的元数据,以及代理服务调用的主要路由服务和发布服务的元数据。上下文可由Xquery表达式读取和更改,并通过转换和适当更新操作进行更新。本发明是在代理服务的消息流路由封装中,在路由中使用Xquery和Xpath语言对简单对象访问协议(Simple Object Access Protocol , SOAP)消息进行各种函数处理汇集,最后将这些信息插入到数据库表中。这个过程分为以下阶段> stage_ValidateMsgHeader 阶段该阶段是对客户端SOAP请求在系统入口端进行初级验证,以避免无效的请求,减轻服务器端的压力,合理利用服务器端资源。验证时获取Msgheader的S0URCE_SYSTEM_ID、SOURCE_SYSTEM_NAME、USER_ID、USER_NAME等几个参数,并判断以上参数值是否存在或者是否为空,如果不存在或者为空,收添加引发错误操作中断请求直接返回给客户端,同时可以返回错误提示给客户端。> stage_InputForReport 阶段该阶段是收集BAM需要展不的请求彳目息。通过Xquery和Xpath语目,使用各种函数获取服务调用信息并保存到变量中,否则这些信息在响应管道中将丢失,获取的服务调用信息包括服务调用时间、服务调用IP、服务调用的地址等。stage_0utputForReport 阶段该阶段是将服务方返回的服务调用信息保存到变量中,例如返回的服务调用成功标识符、服务调用成功信息、调用实例ID等信息,并通过基础服务将这些信息存储到数据库表中。> stage_baminfo 阶段该阶段除了要将展示信息汇集后调用基础服务将信息存储到数据库中,同时还接收基础服务返回的信息。stage_RepIaceOutput 阶段
该阶段将记录存储到数据库中的服务信息的关键ID,通过使用替换方法将关键ID返回给客户端,以便客户端在服务调用出错时,使用这些关键ID去BAM中查询调用时的详细信息,方便服务排错。如图1所示。本发明提供一种OSB与BAM集成方法,包括以下步骤步骤1、0SB接收客户端SOAP请求,通过管道使用Xquery和Xpath语言获取SOAP请求的服务调用信息。具体包括1.1、OSB的代理服务接收客户端SOAP请求,通过请求管道将SOAP请求路由到业务服务;1. 2、业务服务通过服务端URL将SOAP请求发送到服务端;1. 3、服务端接收到SOAP请求,处理SOAP请求,将结果通过响应管道经业务服务、代理服务返回给客户端。其中,在请求管道的路由中,使用Xquery和Xpath语言通过各种函数获取SOAP请求中的服务调用信息,例如调用端IP、调用端时间、调用目标地址等信息;同时获取到这些信息后并将他们赋给变量,进行信息数据保存,以便在响应管道中使用这些信息数据,否则这些信息数据在响应管道中丢失。步骤2、0SB调用基础服务将获取到的所述服务调用信息保存到数据库表。具体包括2. UOSB在响应管道中调用基础服务将获取到的所述服务调用信息存储到预设的数据库表中。2. 2、基础服务返回调用信息的关键字段,方便客户端通过关键字段事后去bam中查询所需要的信息,以及方便客户端排错。步骤3、BAM根据所述数据库表创建数据对象,利用所述数据对象创建展现需求的展现报告。具体包括3.1、BAM根据所述数据库表创建数据对象;3. 2、根据展现需求,BAM利用所述数据对象创建展现需求的展现报告,例如创建3D条形图、折线图、组合图、计量表、Excel等各式各样的展现图形。同时创建各种查询条件,例如调用端IP、调用时间、服务名等,通过这些查询条件缩小查询范围。如图2所示。本发明提供一种OSB与BAM集成装置,包括接收模块10,获取模块20,调用模块30,创建模块40。其中,接收模块10,用于OSB接收客户端SOAP请求。获取模块20,用于OSB通过管道使用Xquery和Xpath语言获取SOAP请求的服务
调用信息。调用模块30,用于OSB调用基础服务将获取到的所述服务调用信息保存到数据库表。创建模块40,用于BAM根据所述数据库表创建数据对象,利用所述数据对象创建展现需求的展现报告。本发明提供的一种OSB与BAM集成方法及装置,OSB在接收到客户端请求后,通过在请求管道的路由封装中,使用Xquery和Xpath语言通过各种函数获取SOAP请求中的服务调用信息并给获取到这些信息赋给变量进行信息数据保存,再通过调用基础服务将这些信息写到数据库表中;然后BAM以此数据库表为基础创建数据对象,然后建立展现报告将调用信息以各种图形展现出来。通过本发明的方法,可以在OSB与BAM集成技术中去除导入JCA Adpter到OSB的繁琐操作,减少手工编写XLST的难度,提高其重用性。上述说明示出并描述了本发明的一个优选实施例,但如前所述,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述发明构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。
权利要求
1.一种Oracle企业服务总线OSB与业务活动监控BAM集成方法,其特征在于,包括 步骤1、OSB接收客户端简单对象访问协议SOAP请求,通过管道使用Xquery和Xpath语言获取SOAP请求的服务调用信息; 步骤2、OSB调用基础服务将获取到的所述服务调用信息保存到数据库表; 步骤3、BAM根据所述数据库表创建数据对象,利用所述数据对象创建展现需求的展现 艮告。
2.如权利要求1所述的方法,其特征在于,所述步骤I中,具体包括1.1、OSB的代理服务接收客户端SOAP请求,通过请求管道将SOAP请求路由到业务服务;1. 2、业务服务通过服务端URL将SOAP请求发送到服务端;1.3、服务端接收到SOAP请求,处理SOAP请求,将结果通过响应管道经业务服务、代理服务返回给客户端。
3.如权利要求1或2所述的方法,其特征在于,在请求管道的路由中,使用Xquery和Xpath语言通过各种函数获取SOAP请求中的服务调用信息,同时获取到这些信息后并将他们赋给变量,进行信息数据保存。
4.如权利要求1所述的方法,其特征在于,所述步骤2中,还进一步包括基础服务还返回调用信息的关键字段。
5.如权利要求1所述的方法,其特征在于,所述步骤3具体包括 3.1、BAM根据所述数据库表创建数据对象; 3.2、根据展现需求,BAM利用所述数据对象创建展现需求的展现报告。
6.一种Oracle企业服务总线OSB与业务活动监控BAM装置,其特征在于,包括接收模块,获取模块,调用模块,创建模块, 所述接收模块,用于OSB接收客户端SOAP请求; 所述获取模块,用于OSB通过管道使用Xquery和Xpath语言获取SOAP请求的服务调用/[目息; 所述调用模块,用于OSB调用基础服务将获取到的所述服务调用信息保存到数据库表; 所述创建模块,用于BAM根据所述数据库表创建数据对象,利用所述数据对象创建展现需求的展现报告。
全文摘要
一种Oracle企业服务总线OSB与业务活动监控BAM集成方法,包括步骤1、OSB接收客户端简单对象访问协议SOAP请求,通过管道使用Xquery和Xpath语言获取SOAP请求的服务调用信息;步骤2、OSB调用基础服务将获取到的所述服务调用信息保存到数据库表;步骤3、BAM根据所述数据库表创建数据对象,利用所述数据对象创建展现需求的展现报告。本发明还提供一种OSB与BAM集成装置。通过本发明提供的方法及装置,在OSB与BAM集成技术中去除导入JCA Adpter到OSB的繁琐操作,减少编写XLST难度,提高其重用性;且客户端利用基础服务返回的关键字段查询所需要的信息,方便客户端排错。
文档编号G06F17/30GK103020210SQ20121052383
公开日2013年4月3日 申请日期2012年12月7日 优先权日2012年12月7日
发明者张鹏, 张园 申请人:深圳市远行科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1