一种整合规则引擎的企业服务总线的制作方法

文档序号:7775026阅读:256来源:国知局
一种整合规则引擎的企业服务总线的制作方法
【专利摘要】一种整合规则引擎的企业服务总线,包括服务总线模块,服务总线模块包括:服务接入单元,消息容器单元,服务接出单元,服务调解单元,消息路由单元,数据转换单元;企业服务总线还包括:平台管理模块,与所述服务总线模块相连,用于对企业服务总线的相关配置进行管理;企业服务总线还包括:规则服务模块,与所述服务总线模块相连,用于对企业服务总线进行业务规则和业务流程能力扩展;规则服务模块包括:业务规则单元,策略规则单元和规则引擎单元;本发明进行了基于ESB技术规范的功能研发和扩展,已是完整概念上的企业服务总线。有助于打破其它大型企业的市场垄断。
【专利说明】一种整合规则引擎的企业服务总线
一、【技术领域】
[0001]本发明涉及网络通信【技术领域】,尤其涉及多通信协议服务总线和业务规则和业务流程处理。
二、【背景技术】
[0002]ESB (Enterprise Service Bus,企业服务总线)为分散服务提供了交互、组合和治理的基础架构,是SOA (Service Oriented Architecture,面向服务架构)的核心技术。
[0003]规则引擎是用以管理和自动实现业务规则的软件系统,其主要实现的功能是存储、分类和管理规则,验证规则的一致性,通过规则推断其它规则、联系规则和执行这些规则的应用程序,其中的规则主要是指企业内部(系统内部)业务逻辑、企业与企业间(系统与系统间)信息交互与处理的业务逻辑等。规则引擎概念的思想是从软件的应用逻辑中分离出业务规则,以实现各种业务的灵活处理。在传统的ESB下,业务逻辑被直接固定在ESB业务处理程序代码中,这使得应用程序维护复杂并且代价昂贵,变化的业务规则和业务流程总是引起对应用程序的频繁修改,尤其面临动态业务模型和业务流程的挑战时,传统ESB模式下开发的应用程序往往面临全面和代价高昂的修改,甚至设计变化。解决这个问题就需要采用新的开发模式,将业务逻辑从ESB业务处理代码层剥离。使用规则引擎恰恰提供了一个将业务处理和业务规则处理分离、共用和统一管理维护业务规则的系统开发构架。
三、
【发明内容】

[0004]本发明所要解决的技术问题是,提供一种融合规则引擎的企业服务总线,推动技术创新。为解决上述技术问题,本发明提出了通过平台管理模块和规则服务模块对传统服务总线模块进行扩展,实现一个实用、易管理、易扩展的新型企业服务总线。
[0005]本发明的技术方案是:一种整合规则引擎的企业服务总线,上述企业服务总线包括服务总线模块,包括:
[0006]服务接入单元,接入单元基于OSGI组件技术实现的组态设计,把各种不同的接入格式(二进制、二进制数组、object、json、xml等)以及各种不同的通信协议(TCP/IP、UDP、HTTP、Web Service、SOAP、JMS等)封装成组态化组件,提供多种接入格式和协议适配;
[0007]消息容器单元,用于进行消息路由、服务组合、提供二进制转object、二进制数组转json、json转xml、xml转json等多种不同格式消息的数据映射和数据转换;
[0008]服务接出单元,用于向其它应用系统发送消息以及对消息格式和协议进行适配,关键技术和实现与服务接入单元相同;
[0009]服务调解单元,用于隐藏消息格式和协议,将业务逻辑从消息中独立出来,并可以实现本地独立的服务调用;
[0010]消息路由单元,用于对消息进行路由、过滤、合并和重新排序;
[0011]数据转换单元,用于对不同格式和传输协议的数据进行转换数据;
[0012]企业服务总线还包括:平台管理模块,与所述服务总线模块相连,用于对企业服务总线的相关配置进行管理;
[0013]企业服务总线还包括:规则服务模块,与所述服务总线模块相连,用于对企业服务总线进行业务规则和业务流程能力扩展;
[0014]规则服务模块包括:
[0015]业务规则单元,存放一组准确凝练的规则语句,用于描述、约束及控制业务的结构、运作等,是应用程序中的一段业务逻辑。是一组封装好的根据不同业务需求预先用XML的〈Conditons〉、〈Consequence〉节点写好的If—Then句式,而里面嵌入java代码作为一种业务逻辑判断语句和执行语句;
[0016]策略规则单元,存放一组业务决策和战略,是一段具体的业务执行指令。这是预先设定好的控制指令对象,包括各种符合服务总线模块100的格式化消息指令,包括报警信息指令、短信信息指令、发布信息指令、设备控制信息指令等。
[0017]规则引擎单元,是一种嵌入在应用程序中的组件,实现了将业务决策从应用程序代码中分离出来,并使用预定义的语义模块编写业务决策。接受数据输入,解释业务规则,并根据业务规则做出业务决策。本发明采用了 drools实现规则引擎单元,通过服务总线模块100传递过来的消息的分类会在drools中调用不同的存储在业务规则单元中的规则语句进行逻辑判断,从而在策略规则单元中找到符合逻辑判断结果的业务执行指令进行最终的业务决策——向服务总线模块100发送具体的格式化消息指令,服务总线模块100会依据不同的格式化消息指令最终通过服务接出单元130向指定的目的地(其他应用系统或实际的输出设备)发送消息。
[0018]在本发明中,对传统企业服务总线(服务总线模块)进行规则服务模块扩展至关重要的原则是:(I)业务规则单元描述与业务相关的操作规范、管理章程、规章制度、行业标准等;(2)通过策略规则单元形式化地描述业务规则相应的决策和战略;(2)通过规则引擎单元分离工作流程和业务规则,匹配策略规则进行业务执行指令下发。在这个过程中,这三个原则贯穿始终。分离工作流程和业务规则的目的在于将关键的业务判断规则和业务事件响应提取出来,置于系统的公共部位(业务服务),供不同的应用程序工作流程使用,并且便于维护和管理。这是本发明得以顺利进行的前提。形式化地描述业务规则的目的则是将业务规则以一种能够被规则引擎处理的形式描述和表示,使业务规则可被运算化,使应用程序可以按照即定的策略规则也就是既定的决策和战略进行相应的处理。
[0019]本发明依托以下三个步骤通过规则服务模块对传统企业服务总线(服务总线模块)进行扩展:
[0020](I)使用决策表提取规则(业务规则单元中的提取规则语句)
[0021]在本发明中首先要解决的问题是明确企业服务总线(服务总线模块)中有哪些规则以及对应的业务判定。商业事务中条件元素的集合构成规则,规则决定判定和反馈,在散乱的企业业务中初步提取规则和对应的判定可以使用决策表的方法。
[0022]
【权利要求】
1.一种整合规则引擎的企业服务总线,其特征是包括服务总线模块,服务总线模块包括: 服务接入单元,接入单元基于OSGI组件技术实现的组态设计,把各种不同的接入格式以及各种不同的通信协议、包括TCP/IP、UDP、HTTP、Web Service、SOAP、JMS封装成组态化组件,提供多种接入格式和协议适配; 消息容器单元,用于进行消息路由、服务组合、提供二进制转object、二进制数组转json、json转xml、xml转json等多种不同格式消息的数据映射和数据转换; 服务接出单元,用于向其它应用系统发送消息以及对消息格式和协议进行适配,关键技术和实现与服务接入单元相同; 服务调解单元,用于隐藏消息格式和协议,将业务逻辑从消息中独立出来,并可以实现本地独立的服务调用; 消息路由单元,用于对消息进行路由、过滤、合并和重新排序; 数据转换单元,用于对不同格式和传输协议的数据进行转换数据; 企业服务总线还包括:平台管理模块,与所述服务总线模块相连,用于对企业服务总线的相关配置进行管理; 企业服务总线还包括:规则服务模块,与所述服务总线模块相连,用于对企业服务总线进行业务规则和业务流程能力扩展; 规则服务模块包括:· 业务规则单元,存放一组准确凝练的规则语句,用于描述、约束及控制业务的结构、运作等,是应用程序中的一段业务逻辑;这是一组封装好的根据不同业务需求预先用XML的〈Conditons〉、〈Consequence〉节点写好的If—Then句式,而里面嵌入java代码作为一种业务逻辑判断语句和执行语句; 策略规则单元,存放一组业务决策和战略,是一段具体的业务执行指令;这是预先设定好的控制指令对象,包括各种符合服务总线模块100的格式化消息指令,包括报警信息指令、短信信息指令、发布信息指令、设备控制信息指令; 规则引擎单元,是一种嵌入在应用程序中的组件,实现了将业务决策从应用程序代码中分离出来,并使用预定义的语义模块编写业务决策。接受数据输入,解释业务规则,并根据业务规则做出业务决策。
2.根据权利要求1所述的整合规则引擎的企业服务总线,其特征是以下述三个步骤通过规则服务模块对传统企业服务总线即服务总线模块进行扩展: (O使用决策表提取规则,即业务规则单元中的提取规则语句: 明确服务总线模块中有哪些规则以及对应的业务判定:商业事务中条件元素的集合构成规则,规则决定判定和反馈,在散乱的企业业务中初步提取规则和对应的判定可以使用决策表的方法;表1I 规则 I [Mj~[2
3.根据权利要求1所述的整合规则引擎的企业服务总线,其特征是企业服务总线即服务总线模块进行规则服务模块扩展:(I)业务规则单元描述与业务相关的操作规范、管理章程、规章制度、行业标准;(2)通过策略规则单元形式化地描述业务规则相应的决策和战略;(3)通过规则引擎单元分离工作流程和业务规则,匹配策略规则进行业务执行指令下;在这个过程中,这三个原则贯穿始终。
4.根据权利要求3所述的整合规则引擎的企业服务总线,其特征是分离工作流程和业务规则的目的在于将关键的业务判断规则和业务事件响应提取出来,置于系统的公共部位的业务服务,供不同的应用程序工作流程使用,并且便于维护和管理;形式化地描述业务规则的目的则是将业务规则以一种能够被规则引擎处理的形式描述和表示,使业务规则可被运算化,使应用程序按照即定的策略规则也就是既定的决策和战略进行相应的处理。
5.根据权利要求1所述的整合规则引擎的企业服务总线,其特征是所述规则引擎单元采用了 drools实现规则引擎单元,通过服务总线模块传递过来的消息的分类会在drools中调用不同的存储在业务规则单元中的规则语句进行逻辑判断,从而在策略规则单元中找到符合逻辑判断结果的业务执行指令进行最终的业务决策——向服务总线模块发送具体的格式化消息指令,服务总线模块会依据不同的格式化消息指令最终通过服务接出单元向指定的目的地、包括其他应·用系统或实际的输出设备发送消息。
【文档编号】H04L12/40GK103532808SQ201310525905
【公开日】2014年1月22日 申请日期:2013年10月30日 优先权日:2013年10月30日
【发明者】陶湧 申请人:江苏万全科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1