一种规则发布系统、方法及装置与流程

文档序号:11155150阅读:247来源:国知局
一种规则发布系统、方法及装置与制造工艺

本申请涉及计算机与网络技术领域,尤其涉及一种规则发布系统、方法及装置。



背景技术:

在风险监控领域,用于进行风险识别的规则具有非常重要的地位。一个完整的规则包含一组条件和触发动作,每个条件包含条件元素、比较符、比较值、参数等信息,这些信息存放在不同的规则数据表中。由于规则引擎在运行规则时需要读取完整的规则信息,所以规则发布时需要基于分散的各个规则数据表,构建完整的规则模型,以供规则引擎直接运行。

目前的规则发布过程,一般是通过广播消息通知系统各服务器执行加载,各服务器分别读取规则数据表执行规则模型的构建,然后将构建好的规则模型加载到内存中供规则引擎运行。

但是,上述规则发布过程会出现两个比较严重的问题:一是在规则发布过程中,系统服务器集群同时并发加载,导致数据库连接及网络资源成为瓶颈。随着规则量的增多和规则复杂度越来越高,整个加载过程需要查询的数据表也越来越多、规则构建和加载耗时越来越长,另外,随着服务器集群扩大,导致并发加载过程中数据库连接数不够,同时数据库网络带宽也会成为瓶颈,整个发布过程系统稳定性受到极大影响。二是在规则发布过程中,系统服务器集群同时加载相同的规则,但随着规则量的增多和规则复杂度越来越高,各服务器未必能将所有规则构建完整,特别是受数据库连接和网络瓶颈的限制,会出现个别服务器规则构建失败的情况,从而导致规则发布过程中集群服务器规则数据状态不一致的情况。

综上,在目前的规则发布过程中,存在数据库连接及网络资源成为瓶颈、及因个别服务器规则构建失败而导致集群服务器规则数据状态不一致的情况。



技术实现要素:

本申请实施例提供一种规则发布系统、方法及装置,用以解决在目前的规则发布过程中,存在数据库连接及网络资源成为瓶颈、及因个别服务器规则构建失败而导致集群服务器规则数据状态不一致的情况的问题。

本申请实施例提供一种规则发布系统,包括:

集群管理服务器,用于向集群中的指定服务器发送规则模型构建指示信息;在接收到所述指定服务器发送的规则模型构建成功指示信息后,向集群中除所述指定服务器外的其它服务器发送规则模型加载指示信息,用于指示其它服务器加载构建好的规则模型;

所述指定服务器,用于在接收到集群管理服务器发送的规则模型构建指示信息后,从数据库中获取用于构建规则模型的规则信息;基于获取的规则信息,构建所述规则模型;在成功构建所述规则模型后,将成功构建的规则模型存入指定存储中,并向所述集群管理服务器发送规则模型构建成功指示信息;

集群中除所述指定服务器外的其它服务器,用于在接收到规则模型加载指示信息后,从指定存储中加载所述规则模型加载指示信息所指示的规则模型;采用加载后的所述规则模型替换该规则模型对应的之前发布的规则模型。

可选地,所述集群管理服务器具体用于:从集群中随机选择一台服务器作为所述指定服务器,并通过点对点消息向所述指定服务器发送规则模型构建指示信息。

可选地,所述集群管理服务器具体用于:通过广播消息向集群中除所述指定服务器外的其它服务器发送规则模型加载指示信息。

可选地,所述集群中除所述指定服务器外的其它服务器具体用于:

当接收到规则模型加载指示信息时,从预设的等待时长区间中,随机选择 等待时长;在经过选择的所述等待时长后,从所述指定存储中加载所述规则模型。

本申请实施例提供一种规则发布方法,包括:

向集群中的指定服务器发送规则模型构建指示信息;

在接收到所述指定服务器发送的规则模型构建成功指示信息后,向集群中除所述指定服务器外的其它服务器发送规则模型加载指示信息,用于指示其它服务器加载构建好的规则模型。

可选地,所述向集群中的指定服务器发送规则模型构建指示信息,包括:

从集群中随机选择一台服务器作为所述指定服务器,并通过点对点消息向所述指定服务器发送规则模型构建指示信息。

可选地,向集群中除所述指定服务器外的其它服务器发送规则模型加载指示信息,包括:

通过广播消息向集群中除所述指定服务器外的其它服务器发送规则模型加载指示信息。

本申请另一实施例提供一种规则发布方法,包括:

在接收到集群管理服务器发送的规则模型构建指示信息后,从数据库中获取用于构建规则模型的规则信息;

基于获取的规则信息,构建所述规则模型;

在成功构建所述规则模型后,将成功构建的规则模型存入指定存储中,并向所述集群管理服务器发送规则模型构建成功指示信息。

本申请又一实施例提供一种规则发布方法,包括:

在接收到规则模型加载指示信息后,从指定存储中加载所述规则模型加载指示信息所指示的规则模型;

采用加载后的所述规则模型替换该规则模型对应的之前发布的规则模型。

可选地,在接收到规则模型加载指示信息后,从指定存储中加载所述规则模型加载指示信息所指示的规则模型,包括:

当接收到规则模型加载指示信息时,从预设的等待时长区间中,随机选择等待时长;

在经过选择的所述等待时长后,从所述指定存储中加载所述规则模型。

本申请实施例提供一种规则发布装置,包括:

第一发送模块,用于向集群中的指定服务器发送规则模型构建指示信息;

第二发送模块,用于在所述指定服务器构建好规则模型后,向集群中除所述指定服务器外的其它服务器发送规则模型加载指示信息,用于指示其它服务器加载构建好的规则模型。

本申请另一实施例提供一种规则发布装置,包括:

获取模块,用于在接收到集群管理服务器发送的规则模型构建指示信息后,从数据库中获取用于构建规则模型的规则信息;

构建模块,用于基于所述获取模块获取的规则信息,构建所述规则模型;

发送模块,在所述构建模块成功构建所述规则模型后,将成功构建的规则模型存入指定存储中,并向所述集群管理服务器发送规则模型构建成功指示信息。

本申请又一实施例提供一种规则发布装置,包括:

加载模块,用于在接收到规则模型加载指示信息后,从指定存储中加载所述规则模型加载指示信息所指示的规则模型;

替换模块,用于采用加载后的所述规则模型替换该规则模型对应的之前发布的规则模型。

本申请实施例采用集群中的指定服务器完成规则模型的构建,其它服务器直接加载构建好的规则模型,减少了规则构建中对网络资源和数据库连接数的需求,并且避免了因个别服务器规则构建失败而导致集群服务器规则数据状态不一致的情况。

附图说明

图1为本申请实施例一提供的规则发布方法流程图;

图2为本申请实施例二提供的规则发布方法流程图;

图3为本申请实施例三提供的规则发布系统结构示意图;

图4为本申请实施例四提供的规则发布装置结构示意图;

图5为本申请实施例五提供的规则发布装置结构示意图。

具体实施方式

本申请实施例采用集群中的指定服务器完成规则模型的构建,其它服务器直接加载构建好的规则模型,减少了规则构建中对网络资源和数据库连接数的需求,并且避免了因个别服务器规则构建失败而导致集群服务器规则数据状态不一致的情况。

下面结合说明书附图对本申请实施例作进一步详细描述。

实施例一

如图1所示,为本申请实施例一提供的规则发布方法流程图,包括以下步骤:

S101:集群管理服务器向集群中的指定服务器发送规则模型构建指示信息。

由于在规则发布过程中,复杂度最高和加载耗时最大的环节是规则构建过程,为了节省数据库连接数及网络资源,本申请实施例由指定服务器单独完成规则模型的构建。

S102:所述指定服务器在接收到规则模型构建指示信息后,从数据库中获取用于构建规则模型的规则信息。

这里,指定服务器可以根据规则模型构建指示信息所指示的用于构建规则模型的各个规则数据表的标识信息,从数据库中获取各个规则数据表中的规则信息,并基于预设的规则模型架构,将获取的规则信息构建成规则模型。规则数据表中的规则信息可以包含规则名称、数据更新时间、组成规则的各个条件 名称、每个条件的参数信息等。

S103:所述指定服务器基于获取的规则数据表,构建所述规则模型;在成功构建所述规则模型后,将成功构建的规则模型存入指定存储中,并向所述集群管理服务器发送规则模型构建成功指示信息。

该步骤中,指定服务器将构建好的规则模型存入指定存储中,该指定存储可以是所述数据库,也可以是其它预设的存储。

S104:在接收到所述指定服务器发送的规则模型构建成功指示信息后,集群管理服务器向集群中除所述指定服务器外的其它服务器发送规则模型加载指示信息,用于指示其它服务器加载构建好的规则模型。

在具体实施中,指定服务器在完成规则模型的构建后,可以通知集群管理服务器规则模型构建成功,此时,集群管理服务器向集群中除所述指定服务器外的其它服务器发送规则模型加载指示信息。

S105:所述其它服务器在接收到规则模型加载指示信息后,从指定存储中加载所述规则模型加载指示信息所指示的规则模型。

在具体实施过程中,其它各个服务器可以分批从所述指定存储中加载所述规则模型。具体地,可以为每个加载规则模型的服务器设置加载等待时长,在当前时间距离接收到所述规则模型加载指示信息的时长达到该服务器的加载等待时长后,加载所述规则模型。或者,服务器可以随机选择加载所述规则模型的等待时长。

采用这种各服务器分批加载规则模型的方式,可以避免受网络资源和数据库连接数的限制而导致规则模型加载失败的情况发生。

S106:所述其它服务器采用加载后的所述规则模型替换该规则模型对应的之前发布的规则模型。

下面通过另一个实施例对本申请实施例的思想作进一步描述。

实施例二

如图2所示,为本申请实施例二提供的规则发布方法流程图,包括以下步 骤:

S201:集群管理服务器从集群中随机选择一台服务器作为所述指定服务器,并通过点对点消息向所述指定服务器发送规则模型构建指示信息。

这里,规则模型构建指示信息中可以包含用于构建规则模型的各个规则数据表的标识信息,这里的标识信息可以包括规则更新的时间信息、规则名称等信息。比如,规则模型构建指示信息中指示了用于构建规则模型的各个规则数据表所对应的更新时间范围及规则名称,则指定服务器可以从数据库中获取与该更新时间范围及规则名称匹配的规则数据表。

S202:指定服务器在接收到规则模型构建指示信息后,从数据库中获取用于构建规则模型的规则信息。

S203:指定服务器基于获取的规则信息,构建所述规则模型,在成功构建所述规则模型后,将成功构建的规则模型存入指定存储中,并向所述集群管理服务器发送规则模型构建成功指示信息。

S204:集群管理服务器通过广播消息向集群中除指定服务器外的其它服务器发送规则模型加载指示信息。

这里,该广播消息中具体可以包括规则模型的标识信息,比如规则模型的名称、更新时间等。

S205:所述其它服务器在接收到规则模型加载指示信息后,当接收到规则模型加载指示信息时,从预设的等待时长区间中,随机选择等待时长;在经过选择的所述等待时长后,从所述指定存储中加载所述规则模型。

该步骤中,其它各个服务器在接收到规则模型加载指示信息后,各自计算一个随机等待时间,比如,某台服务器计算出需要等待20ms,则该服务器在等待20ms后,从数据库中加载所述规则模型。

具体地,服务器随机选择等待时长的方式可以是从有限个离散的随机数中进行选择,比如,预设的等待时长区间为[0ms,100ms],服务器从0~100中随机选取一个整数,如选择了20,则随机等待时间为20ms。

S206:所述其它服务器采用加载后的所述规则模型替换该规则模型对应的之前发布的规则模型。

这里,服务器在规则模型加载完成后,可以更新规则模型的规则发布状态及发布时间。

这里,规则发布状态,也即指标识是否发布成功的信息。各服务器可以将规则发布状态和发布时间存入本服务器内存中,也可以存入分布式缓存中,用于前台服务器页面显示时供规则发布人员查看。

基于同一发明构思,本申请实施例中还提供了一种与规则发布方法对应的规则发布系统及规则发布装置,由于该规则发布系统及规则发布装置解决问题的原理与本申请实施例的规则发布方法相似,因此该规则发布系统及规则发布装置的实施可以参见方法的实施,重复之处不再赘述。

实施例三

如图3所示,为本申请实施例三提供的规则发布系统30结构示意图,包括:

集群管理服务器31,用于向集群中的指定服务器发送规则模型构建指示信息;在接收到所述指定服务器发送的规则模型构建成功指示信息后,向集群中除所述指定服务器外的其它服务器发送规则模型加载指示信息,用于指示其它服务器加载构建好的规则模型;

所述指定服务器32,用于在接收到集群管理服务器31发送的规则模型构建指示信息后,从数据库中获取用于构建规则模型的规则信息;基于获取的规则信息,构建所述规则模型;在成功构建所述规则模型后,将成功构建的规则模型存入指定存储中,并向所述集群管理服务器发送规则模型构建成功指示信息;

集群中除指定服务器外的其它服务器33,用于在接收到规则模型加载指示信息后,从指定存储中加载所述规则模型加载指示信息所指示的规则模型;采用加载后的所述规则模型替换该规则模型对应的之前发布的规则模型。

可选地,所述集群管理服务器31具体用于:从集群中随机选择一台服务器作为所述指定服务器,并通过点对点消息向所述指定服务器发送规则模型构建指示信息。

可选地,所述集群管理服务器31具体用于:通过广播消息向集群中除指定服务器32外的其它服务器发送规则模型加载指示信息。

可选地,所述集群中除指定服务器32外的其它服务器33具体用于:

当接收到规则模型加载指示信息时,从预设的等待时长区间中,随机选择等待时长;在经过选择的所述等待时长后,从所述指定存储中加载所述规则模型。

实施例四

如图4所示,为本申请实施例四提供的规则发布装置结构示意图,包括:

第一发送模块41,用于向集群中的指定服务器发送规则模型构建指示信息;

第二发送模块42,用于在接收到所述指定服务器发送的规则模型构建成功指示信息后,向集群中除所述指定服务器外的其它服务器发送规则模型加载指示信息,用于指示其它服务器加载构建好的规则模型。

可选地,所述第一发送模块41具体用于:

从集群中随机选择一台服务器作为所述指定服务器,并通过点对点消息向所述指定服务器发送规则模型构建指示信息。

可选地,所述第一发送模块41具体用于:

通过广播消息向集群中除所述指定服务器外的其它服务器发送规则模型加载指示信息。

实施例五

如图5所示,为本申请实施例四提供的规则发布装置结构示意图,包括:

获取模块51,用于在接收到集群管理服务器发送的规则模型构建指示信息后,从数据库中获取用于构建规则模型的规则信息;

构建模块52,用于基于所述获取模块51获取的规则信息,构建所述规则模型;

发送模块53,在所述构建模块52成功构建所述规则模型后,将成功构建的规则模型存入指定存储中,并向所述集群管理服务器发送规则模型构建成功指示信息。

实施例六

如图6所示,为本申请实施例五提供的规则发布装置结构示意图,包括:

加载模块61,用于在接收到规则模型加载指示信息后,从指定存储中加载所述规则模型加载指示信息所指示的规则模型;

替换模块62,用于采用加载后的所述规则模型替换该规则模型对应的之前发布的规则模型。

可选地,所述加载模块61具体用于:

当接收到规则模型加载指示信息时,从预设的等待时长区间中,随机选择等待时长;在经过选择的所述等待时长后,从所述指定存储中加载所述规则模型。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、装置(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一 个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。

显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1