[发明专利]一种规则引擎的执行方法、存储介质和服务器在审
申请号: | 201811181899.6 | 申请日: | 2018-10-11 |
公开(公告)号: | CN109542935A | 公开(公告)日: | 2019-03-29 |
发明(设计)人: | 黄心官;张晶莹;吴思楠;梅晗 | 申请(专利权)人: | 平安科技(深圳)有限公司 |
主分类号: | G06F16/2455 | 分类号: | G06F16/2455 |
代理公司: | 深圳中一专利商标事务所 44237 | 代理人: | 官建红 |
地址: | 518000 广东省深圳市福田区福*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 业务逻辑 引擎 规则库 事件触发 事件规则 触发 业务逻辑执行 存储介质 调用接口 规则引擎 服务器 查询结果返回 查询操作 查询结果 监控业务 开发效率 调用 重构 查询 查找 监测 | ||
1.一种规则引擎的执行方法,其特征在于,包括:
监控业务逻辑的调用接口;
若监测到所述调用接口被调用,触发所述业务逻辑的第一事件触发点,所述第一事件触发点用于在所述业务逻辑执行之前触发在第一引擎规则库中事件规则的查询操作;
基于所述第一事件触发点,在第一引擎规则库中查询所述业务逻辑是否存在对应的事件规则;
根据所述在第一引擎规则库中的查询结果执行所述业务逻辑;
若所述业务逻辑执行完毕,触发所述业务逻辑的第二事件触发点,所述第二事件触发点用于在所述业务逻辑执行完毕之后触发在第二引擎规则库中事件规则的查询操作;
基于所述第二事件触发点,在第二引擎规则库中查找所述业务逻辑是否存在对应的事件规则;
根据所述在第二引擎规则库中的查询结果返回所述业务逻辑的执行结果。
2.根据权利要求1所述的执行方法,其特征在于,所述若监测到所述调用接口被调用,触发所述业务逻辑的第一事件触发点,包括:
获取所述业务逻辑的业务标识;
判断预设的事件触发集合中是否存在所述业务逻辑的业务标识;
若所述事件触发集合中存在所述业务标识,则触发所述业务标识对应的第一事件触发点。
3.根据权利要求1所述的执行方法,其特征在于,所述根据所述在第一引擎规则库中的查询结果执行所述业务逻辑,包括:
若在所述第一引擎规则库中查找到所述业务逻辑对应的事件规则,则执行所述事件规则定义的处理逻辑;
在执行完所述事件规则定义的处理逻辑后,执行所述业务逻辑;
若在所述第一引擎规则库中未查询到所述业务逻辑对应的事件规则,则直接执行所述业务逻辑。
4.根据权利要求3所述的执行方法,其特征在于,所述若在所述第一引擎规则库中查找到所述业务逻辑对应的事件规则,则执行所述事件规则定义的处理逻辑,包括:
若所述第一引擎规则库中所述业务逻辑对应的事件规则有多个,获取所述业务逻辑对应的事件规则的优先指数;
按所述优先指数从高到低依次执行所述业务逻辑对应的事件规则定义的处理逻辑。
5.根据权利要求4所述的执行方法,其特征在于,所述若所述第一引擎规则库中所述业务逻辑对应的事件规则有多个,获取所述业务逻辑对应的事件规则的优先指数,包括:
获取所述业务逻辑对应的多个事件规则之间的依赖关系,所述依赖关系是指一事件规则的执行触发依赖于另一事件规则的执行;
根据如下公式计算事件规则的优先指数PriDegi:
其中,ωi表示所述事件规则i对应的预设权值,L为整数,表示所述事件规则i被依赖的事件规则的数量,L≥0,rely_λl表示所述事件规则i被依赖的事件规则的数量为l时对应的依赖权值,0≤l≤L,N为所述业务逻辑对应的事件规则数,N为正整数,Func为任意一个实现从[0,+∞)到[0,1)映射的单调递增函数。
6.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5中任一项所述规则引擎的执行方法的步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于平安科技(深圳)有限公司,未经平安科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811181899.6/1.html,转载请声明来源钻瓜专利网。