规则引擎的规则更新方法、装置、设备及介质制造方法及图纸

技术编号:27876410 阅读:12 留言:0更新日期:2021-03-31 00:52
本申请涉及人工智能技术领域,揭示了一种规则引擎的规则更新方法、装置、设备及介质,其中方法应用于采用动态解析脚本的规则引擎;通过在规则引擎运行的持续过程中,获取新规则添加请求,根据新规则添加请求获取目标规则Java语言脚本;在规则引擎运行的持续过程中,根据目标规则Java语言脚本更新引擎实例得到待调用规则解析器,待调用规则解析器携带有规则解析器标识;接收规则解析请求,规则解析请求携带有规则解析器标识及待解析数据;采用规则解析请求携带的规则解析器标识对应的待调用规则解析器对待解析数据进行解析得到待解析数据的解析结果。实现了在不需要停止规则解析服务的情况下添加新规则和对新规则进行编译及部署。

【技术实现步骤摘要】
规则引擎的规则更新方法、装置、设备及介质
本申请涉及到人工智能
,特别是涉及到一种规则引擎的规则更新方法、装置、设备及介质。
技术介绍
随着各种各样的应用系统的广泛应用,规则引擎得到大量应用。规则引擎由推理引擎发展而来,是一种嵌入在应用程序中的组件,实现了将业务决策从应用程序代码中分离出来,并使用预定义的语义模块编写业务决策。现有规则引擎在添加新规则时需要停止规则解析服务,而且添加新规则后需要进行重新编译和程序部署,导致规则引擎在更新期间无法提供规则解析服务,影响了应用系统提供服务的能力。
技术实现思路
本申请的主要目的为提供一种规则引擎的规则更新方法、装置、设备及介质,旨在解决现有技术的规则引擎在添加新规则时需要停止规则解析服务,而且添加新规则后需要进行重新编译和程序部署,导致规则引擎在更新期间无法提供规则解析服务的技术问题。为了实现上述专利技术目的,本申请提出一种规则引擎的规则更新方法,所述方法应用于采用动态解析脚本的规则引擎;所述方法包括:在所述规则引擎运行的过程中,获取新规则添加请求,根据所述新规则添加请求获取目标规则Java语言脚本;在所述规则引擎运行的过程中,根据所述目标规则Java语言脚本更新引擎实例,得到待调用规则解析器,所述待调用规则解析器携带有规则解析器标识;接收规则解析请求,所述规则解析请求携带有规则解析器标识及待解析数据;采用所述规则解析请求携带的规则解析器标识对应的所述待调用规则解析器对所述待解析数据进行解析,得到所述待解析数据的解析结果。进一步的,所述根据所述新规则添加请求获取目标规则Java语言脚本的步骤,包括:响应所述新规则添加请求,获取新规则配置结果;对所述新规则配置结果进行Java语言转换,得到所述目标规则Java语言脚本。进一步的,所述响应所述新规则添加请求,获取新规则配置结果的步骤,包括:响应所述新规则添加请求,展示规则配置界面;获取所述规则配置界面发送的所述新规则配置结果。进一步的,所述获取所述规则配置界面发送的所述新规则配置结果的步骤,包括:获取规则配置提交请求;根据所述规则配置提交请求,从所述规则配置界面获取所述新规则配置结果。进一步的,所述根据所述目标规则Java语言脚本更新引擎实例,得到待调用规则解析器的步骤,包括:将所述目标规则Java语言脚本添加到所述规则引擎存放规则脚本的引擎实例中;对所述目标规则Java语言脚本进行编译,得到所述待调用规则解析器;获取所述目标规则Java语言脚本的脚本标识;将所述目标规则Java语言脚本的脚本标识作为所述待调用规则解析器的规则解析器标识。进一步的,所述根据所述目标规则Java语言脚本更新引擎实例,得到待调用规则解析器的步骤之后,还包括:在所述规则引擎运行的过程中,获取待调用规则解析器删除请求,所述待调用规则解析器删除请求携带有规则解析器标识;在所述规则引擎运行的过程中,判断所述待调用规则解析器删除请求携带的规则解析器标识对应的所述待调用规则解析器是否被占用;在所述规则引擎运行的过程中,当所述待调用规则解析器删除请求携带的规则解析器标识对应的待调用规则解析器没有被占用时,从所述引擎实例中将所述待调用规则解析器删除请求携带的规则解析器标识对应的所述待调用规则解析器进行删除;在所述规则引擎运行的过程中,当所述待调用规则解析器删除请求携带的规则解析器标识对应的待调用规则解析器被占用时,按预设时长执行所述判断所述待调用规则解析器删除请求携带的规则解析器标识对应的所述待调用规则解析器是否被占用的步骤直至所述待调用规则解析器删除请求携带的规则解析器标识对应的待调用规则解析器没有被占用。进一步的,所述根据所述目标规则Java语言脚本更新引擎实例,得到待调用规则解析器的步骤之后,还包括:在所述规则引擎运行的过程中,获取待调用规则解析器暂停服务请求,所述待调用规则解析器暂停服务请求携带有规则解析器标识;在所述规则引擎运行的过程中,判断所述待调用规则解析器暂停服务请求携带的规则解析器标识对应的所述待调用规则解析器是否被占用;在所述规则引擎运行的过程中,当所述待调用规则解析器暂停服务请求携带的规则解析器标识对应的待调用规则解析器没有被占用时,从所述引擎实例中将所述待调用规则解析器暂停服务请求携带的规则解析器标识对应的所述待调用规则解析器进行暂停服务;在所述规则引擎运行的过程中,当所述待调用规则解析器暂停服务请求携带的规则解析器标识对应的待调用规则解析器被占用时,按预设时长执行所述判断所述待调用规则解析器暂停服务请求携带的规则解析器标识对应的所述待调用规则解析器是否被占用的步骤直至所述待调用规则解析器暂停服务请求携带的规则解析器标识对应的待调用规则解析器没有被占用。本申请还提出了一种规则引擎的规则更新装置,所述装置应用于采用动态解析脚本的规则引擎;所述装置包括:获取新规则模块,用于在所述规则引擎运行的过程中,获取新规则添加请求,根据所述新规则添加请求获取目标规则Java语言脚本;引擎实例更新模块,用于在所述规则引擎运行的过程中,根据所述目标规则Java语言脚本更新引擎实例,得到待调用规则解析器,所述待调用规则解析器携带有规则解析器标识;解析请求获取模块,用于接收规则解析请求,所述规则解析请求携带有规则解析器标识及待解析数据;解析模块,用于采用所述规则解析请求携带的规则解析器标识对应的所述待调用规则解析器对所述待解析数据进行解析,得到所述待解析数据的解析结果。本申请还提出了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述方法的步骤。本申请还提出了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的方法的步骤。本申请的规则引擎的规则更新方法、装置、设备及介质,通过采用动态解析脚本的规则引擎,在所述规则引擎运行的过程中根据所述新规则添加请求获取目标规则Java语言脚本,根据所述目标规则Java语言脚本更新引擎实例,得到待调用规则解析器,从而实现了在不需要停止规则解析服务的情况下添加新规则和对新规则进行编译及部署,使新规则即插即用,实现了新规则的热部署,提高了规则引擎提供规则解析服务的能力,也提高了应用系统提供服务的能力。附图说明图1为本申请一实施例的规则引擎的规则更新方法的流程示意图;图2为本申请一实施例的规则引擎的规则更新装置的结构示意框图;图3为本申请一实施例的计算机设备的结构示意框图。本申请目的实现、功能特点及优点将结合实施例,参照附图做进一步说明。具体实施方式为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述本文档来自技高网...

【技术保护点】
1.一种规则引擎的规则更新方法,其特征在于,所述方法应用于采用动态解析脚本的规则引擎;/n所述方法包括:/n在所述规则引擎运行的过程中,获取新规则添加请求,根据所述新规则添加请求获取目标规则Java语言脚本;/n在所述规则引擎运行的过程中,根据所述目标规则Java语言脚本更新引擎实例,得到待调用规则解析器,所述待调用规则解析器携带有规则解析器标识;/n接收规则解析请求,所述规则解析请求携带有规则解析器标识及待解析数据;/n采用所述规则解析请求携带的规则解析器标识对应的所述待调用规则解析器对所述待解析数据进行解析,得到所述待解析数据的解析结果。/n

【技术特征摘要】
1.一种规则引擎的规则更新方法,其特征在于,所述方法应用于采用动态解析脚本的规则引擎;
所述方法包括:
在所述规则引擎运行的过程中,获取新规则添加请求,根据所述新规则添加请求获取目标规则Java语言脚本;
在所述规则引擎运行的过程中,根据所述目标规则Java语言脚本更新引擎实例,得到待调用规则解析器,所述待调用规则解析器携带有规则解析器标识;
接收规则解析请求,所述规则解析请求携带有规则解析器标识及待解析数据;
采用所述规则解析请求携带的规则解析器标识对应的所述待调用规则解析器对所述待解析数据进行解析,得到所述待解析数据的解析结果。


2.根据权利要求1所述的规则引擎的规则更新方法,其特征在于,所述根据所述新规则添加请求获取目标规则Java语言脚本的步骤,包括:
响应所述新规则添加请求,获取新规则配置结果;
对所述新规则配置结果进行Java语言转换,得到所述目标规则Java语言脚本。


3.根据权利要求2所述的规则引擎的规则更新方法,其特征在于,所述响应所述新规则添加请求,获取新规则配置结果的步骤,包括:
响应所述新规则添加请求,展示规则配置界面;
获取所述规则配置界面发送的所述新规则配置结果。


4.根据权利要求3所述的规则引擎的规则更新方法,其特征在于,所述获取所述规则配置界面发送的所述新规则配置结果的步骤,包括:
获取规则配置提交请求;
根据所述规则配置提交请求,从所述规则配置界面获取所述新规则配置结果。


5.根据权利要求1所述的规则引擎的规则更新方法,其特征在于,所述根据所述目标规则Java语言脚本更新引擎实例,得到待调用规则解析器的步骤,包括:
将所述目标规则Java语言脚本添加到所述规则引擎存放规则脚本的引擎实例中;
对所述目标规则Java语言脚本进行编译,得到所述待调用规则解析器;
获取所述目标规则Java语言脚本的脚本标识;
将所述目标规则Java语言脚本的脚本标识作为所述待调用规则解析器的规则解析器标识。


6.根据权利要求1所述的规则引擎的规则更新方法,其特征在于,所述根据所述目标规则Java语言脚本更新引擎实例,得到待调用规则解析器的步骤之后,还包括:
在所述规则引擎运行的过程中,获取待调用规则解析器删除请求,所述待调用规则解析器删除请求携带有规则解析器标识;
在所述规则引擎运行的过程中,判断所述待调用规则解析器删除请求携带的规则解析器标识对应的所述待调用规则解析器是否被占用;
在所述规则引擎运行的过程中,当所述待调用规则解析器删除请求携带的规则解析器标识对应的待调用规则解析器没有被占用时,从所述引擎实例中将所述待调用...

【专利技术属性】
技术研发人员:刘汉衢
申请(专利权)人:平安普惠企业管理有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1