【技术实现步骤摘要】
一种规则引擎的执行方法、存储介质和服务器
本专利技术涉及计算机应用
,尤其涉及一种规则引擎的执行方法、存储介质和服务器。
技术介绍
复杂企业级项目的开发和维护面临着软件必须“随需而变”的问题。由于随外部条件和需求经常变动的商业决策和业务逻辑被固化在代码中,这使得软件的开发和维护变得异常困难,耗费大量的时间和成本,因此迫切需要分离企业决策者的决策逻辑和应用开发者的技术决策,将这些企业决策者的决策逻辑放在中心数据库或者其他的地方,让他们能在运行时可以动态地被管理和被修改,从而提高软件系统的柔性和适应性。在这样的动态环境中,规则引擎应运而生,规则引擎能够增加软件的可维护性,为软件提供可供用户直接修改业务逻辑的功能,使得软件项目不会因为维护成本太高而难以运行。过去在规则引擎的使用上,很多时候都是在代码中显式的调用规则引擎,并执行规则,每个点需要调用什么规则都是写死在代码中的,这样的弊端在于:调用规则引擎的逻辑比较分散,重构风险大,从而导致开发效率不高。
技术实现思路
本专利技术实施例提供了一种规则引擎的执行方法、存储介质和服务器,以解决现有技术中,调用规则引擎的逻辑比较 ...
【技术保护点】
1.一种规则引擎的执行方法,其特征在于,包括:监控业务逻辑的调用接口;若监测到所述调用接口被调用,触发所述业务逻辑的第一事件触发点,所述第一事件触发点用于在所述业务逻辑执行之前触发在第一引擎规则库中事件规则的查询操作;基于所述第一事件触发点,在第一引擎规则库中查询所述业务逻辑是否存在对应的事件规则;根据所述在第一引擎规则库中的查询结果执行所述业务逻辑;若所述业务逻辑执行完毕,触发所述业务逻辑的第二事件触发点,所述第二事件触发点用于在所述业务逻辑执行完毕之后触发在第二引擎规则库中事件规则的查询操作;基于所述第二事件触发点,在第二引擎规则库中查找所述业务逻辑是否存在对应的事件规 ...
【技术特征摘要】
1.一种规则引擎的执行方法,其特征在于,包括:监控业务逻辑的调用接口;若监测到所述调用接口被调用,触发所述业务逻辑的第一事件触发点,所述第一事件触发点用于在所述业务逻辑执行之前触发在第一引擎规则库中事件规则的查询操作;基于所述第一事件触发点,在第一引擎规则库中查询所述业务逻辑是否存在对应的事件规则;根据所述在第一引擎规则库中的查询结果执行所述业务逻辑;若所述业务逻辑执行完毕,触发所述业务逻辑的第二事件触发点,所述第二事件触发点用于在所述业务逻辑执行完毕之后触发在第二引擎规则库中事件规则的查询操作;基于所述第二事件触发点,在第二引擎规则库中查找所述业务逻辑是否存在对应的事件规则;根据所述在第二引擎规则库中的查询结果返回所述业务逻辑的执行结果。2.根据权利要求1所述的执行方法,其特征在于,所述若监测到所述调用接口被调用,触发所述业务逻辑的第一事件触发点,包括:获取所述业务逻辑的业务标识;判断预设的事件触发集合中是否存在所述业务逻辑的业务标识;若所述事件触发集合中存在所述业务标识,则触发所述业务标识对应的第一事件触发点。3.根据权利要求1所述的执行方法,其特征在于,所述根据所述在第一引擎规则库中的查询结果执行所述业务逻辑,包括:若在所述第一引擎规则库中查找到所述业务逻辑对应的事件规则,则执行所述事件规则定义的处理逻辑;在执行完所述事件规则定义的处理逻辑后,执行所述业务逻辑;若在所述第一引擎规则库中未查询到所述业务逻辑对应的事件规则,则直接执行所述业务逻辑。4.根据权利要求3所述的执行方法,其特征在于,所述若在所述第一引擎规则库中查找到所述业务逻辑对应的事件规则,则执行所述事件规则定义的处理逻辑,包括:若所述第一引擎规则库中所述业务逻辑对应的事件规则有多个,获取所述业务逻辑对应的事件规则的优先指数;按所述优先指数从高到低依次执行所述业务逻辑对应的事件规则定义的处理逻辑。5.根据权利要求4所述的执行方法,其特征在于,所述若所述第一引擎规则库中所述业务逻辑对应的事件规则有多个,获取所述业务逻辑对应的事件规则的优先指数,包括:获取所述业务逻辑对应的多个事件规则之间的依赖关系,所述依赖关系是指一事件规则的执行触发依赖于另一事件规则的执行;根据如下公式计算事件规则的优先指数PriDegi:其中,ωi表示所述事件规则i对应的预设权值,L为整数,表示所述事件规则i被依赖的事件规则的数量,L≥0,rely_λl表示所述...
【专利技术属性】
技术研发人员:黄心官,张晶莹,吴思楠,梅晗,
申请(专利权)人:平安科技深圳有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。