This application discloses a method, system and server for implementing distributed business rules, including: distributing business requirement data to distributed server according to rule service table when receiving business requirement data; distributing business requirement data to rule engine of microservice encapsulation according to rule scheme grouping table in distributed server; and guiding rules in microservice encapsulation. In the engine, the received business requirement data is processed according to the rule table. Applying the embodiment of this application, the business rules are no longer implemented by a single computer, but distributed to a distributed server, so as to adapt to the current situation of large data and multi-service.
【技术实现步骤摘要】
一种实现分布式业务规则的方法、系统和服务器
本申请涉及软件
,特别涉及一种实现分布式业务规则的方法、系统和服务器。
技术介绍
在软件开发过程中,频繁的需求变更是一件令人头痛的事情,比如由于工程前期对需求理解不到位,或者企业管理者的决策发生变化等情况,都会导致对软件的需求发生变化。因此,为了对应复杂多变的需求变更,出现了规则引擎技术。规则引擎主要是将软件工程中的业务逻辑抽离出来,当需求发生变化时,通过简单地修改规则文件即可,无需涉及具体业务代码。这样的框架技术越来越受到软件开发人员的关注。现有的应用规则引擎的框架技术通常是单机版,主要适用小型应用场景。随着目前大数据多业务的发展趋势,该方案则越来越难以发挥其作用。
技术实现思路
本申请提供了一种实现分布式业务规则的方法,可以扩展到分布式规则引擎技术框架中实施,从而适应大数据多业务的发展趋势。本申请提出的一种实现分布式业务规则的方法具体为:在接收到业务需求数据时,根据事先设置的规则服务表将所述业务需求数据分发给分布式服务器,所述规则服务表包含规则服务ID号,所述规则服务ID号与执行业务规则的分布式服务器存在关联关系;在所述分布式服务器中,根据事先设置的规则方案分组表将所述业务需求数据分发给微服务封装的规则引擎,所述规则方案分组表包含规则分组ID号,所述规则分组ID号表示执行业务规则的微服务封装的规则引擎序号;在所述微服务封装的规则引擎中,根据事先设置的规则表对接收到的业务需求数据进行处理,所述规则表包含规则可执行域,所述规则可执行域表示启动业务规则执行的条件。进一步地,在接收业务需求数据之前,该方法进一步包括 ...
【技术保护点】
1.一种实现分布式业务规则的方法,其特征在于,该方法包括:在接收到业务需求数据时,根据事先设置的规则服务表将所述业务需求数据分发给分布式服务器,所述规则服务表包含规则服务ID号,所述规则服务ID号与执行业务规则的分布式服务器存在关联关系;在所述分布式服务器中,根据事先设置的规则方案分组表将所述业务需求数据分发给微服务封装的规则引擎,所述规则方案分组表包含规则分组ID号,所述规则分组ID号表示执行业务规则的微服务封装的规则引擎序号;在所述微服务封装的规则引擎中,根据事先设置的规则表对接收到的业务需求数据进行处理,所述规则表包含规则可执行域,所述规则可执行域表示启动业务规则执行的条件。
【技术特征摘要】
1.一种实现分布式业务规则的方法,其特征在于,该方法包括:在接收到业务需求数据时,根据事先设置的规则服务表将所述业务需求数据分发给分布式服务器,所述规则服务表包含规则服务ID号,所述规则服务ID号与执行业务规则的分布式服务器存在关联关系;在所述分布式服务器中,根据事先设置的规则方案分组表将所述业务需求数据分发给微服务封装的规则引擎,所述规则方案分组表包含规则分组ID号,所述规则分组ID号表示执行业务规则的微服务封装的规则引擎序号;在所述微服务封装的规则引擎中,根据事先设置的规则表对接收到的业务需求数据进行处理,所述规则表包含规则可执行域,所述规则可执行域表示启动业务规则执行的条件。2.根据权利要求1所述的方法,其特征在于,在接收业务需求数据之前,该方法进一步包括:生成对业务需求数据处理的规则引擎,并生成所述规则表;将所述规则引擎进行微服务封装生成所述微服务封装的规则引擎,并生成所述规则方案分组表;通过远程过程调用RPC方法将所述微服务封装的规则引擎部署到所述分布式服务器中,并生成所述规则服务表。3.根据权利要求2所述的方法,其特征在于,所述根据事先设置的规则服务表将所述业务需求数据分发给分布式服务器的方法包括:查询所述规则服务表,获取所述规则服务表中所有分布式服务器,将所述业务需求数据分发到所有的分布式服务器中。4.根据权利要求3所述的方法,其特征在于,所述根据事先设置的规则方案分组表将所述业务需求数据分发给微服务封装的规则引擎的方法包括:查询所述规则方案分组表,获取所述规则方案分组表中所有微服务封装的规则引擎,将所述业务需求数据分发到所有的微服务封装的规则引擎中。5.根据权利要求4所述的方法,其特征在于,所述根据事先设置的规则表对接收到的业务需求数据进行处理的方法包括:根据规则引擎执行方法将接收到的业务需求数据拆解为事实对象和业务规则文件;判断所述事实对象是否属于所述可执行域,如果是,则根据业务规则文件执行对事实对象的业务逻辑,并返回执行结果;否则,返回空结果。6.根据权利要求2所述的方法,其特征在于,在接收业务需求数据之前,该方法进一步包括:设置规则分组映射表,所述规则分组映射表包含所述规则分组ID号和所述规则可执行域的对应关系;设置规则服务映射表,所述规则服务映射表包含所述规则服务ID号和所述规则可执行域的对应关系。7.根据权利要求6所述的方法,其特征在于,所述根据事先设置的规则服务表将所述业务需求数据分发给分布式服务器的方法包括:从所述业务需求数据中获取所述规则可执行域;根据所述规则可执行域查询所述规则服务映射表,确定与所述规则可执行域对应的规则服务ID号;将所述业务需求数据发送给确定出来的规则服务ID号所对应的分布式服务器。8.根据权利要求7所述的方法,其特征在于,所述根据事先设置的规则方案分组表将所述业务需求数据分发给微服务封装的规则引擎的方法包括:从所述业务需求数据中获取所述规则可执行域;根据所述规则可执行域查询所述规则分组映射表,确定与所述规则可执行域对应的规则分组ID号;将所述业务需求数据发送给确定出来的规则分组ID号所对应的微服务封装的规则引擎。9.根据权利要求8所述的方法,其特征在于,所述根据事先设置的规则表对接收到的业务需求数据进行处理的方法包括:根据规则引擎执行方法将接收到的业务需求数据拆解为事实对象和业务规则文件;根据业务规则文件执行对事实对象的业务逻辑,并返回执行结果。10.根据权利要求9所述的方法,其特征在于,在到达映射表维护时机时,该方法进一步包括:通过监听...
【专利技术属性】
技术研发人员:于思禹,邓崇鑫,
申请(专利权)人:北京京东金融科技控股有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。