(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202211055432.3 (22)申请日 2022.08.31 (71)申请人 沈阳数融科技有限公司 地址 110000 辽宁省沈阳市和平区天津南 街46号2503房间 (72)发明人 马奥博 成少飞 王帅  (74)专利代理 机构 长春市盈创中成知识产权代 理事务所(普通 合伙) 22215 专利代理师 乔晓光 (51)Int.Cl. G06F 9/54(2006.01) G06F 9/50(2006.01) G06F 11/14(2006.01) (54)发明名称 一种使规则引擎实例进行水平扩展的控制 系统 (57)摘要 本发明公开了一种使规则引擎实例进行水 平扩展的控制系统, 包括上游事件来源、 下游业 务系统、 事件序列总线组、 时间同步模块、 规则引 擎集群以及规则输出总线组, 本发 明的有益效果 是, 一、 通过使用基于请求/应答的消息传输模 式, 实现对 单点部署和集群扩展中的因宕机而错 误的情况进行检查; 二、 通过使用基于轮换的传 输控制机制, 实现将事件序列中包含的多个有重 叠的业务负载, 分散到集群内多个节点当中; 三、 通过使用基于时间窗口的滚动机制, 实现对因其 他异常导致的处理结果错误进行纠错; 四、 提出 三种不同的方案, 分别满足了规则引擎集群扩展 过程中对高性能、 均衡、 和强一致性三个方面的 不同要求。 权利要求书1页 说明书18页 附图5页 CN 115357413 A 2022.11.18 CN 115357413 A 1.一种使规则引擎实例进行水平扩展的控制系统, 其特征在于, 包括上游事件来源、 下 游业务系统、 事 件序列总线组、 时间同步模块、 规则引擎 集群以及规则输出总线组; 所述上游事件来源是指其业务处理结果与这个处理结果对应的限定条件一起得到的 任何业务系统, 为 规则引擎系统的所有业 务提供业务处理的事件; 所述下游业 务系统是指使用规则引擎处 理结果进行 下一步的业务处理的系统; 所述时间同步模块, 所述时间同步模块将所有的总线、 模块、 实例的本地时间进行同 步, 保证系统内时间一 致。 2.根据权利要求1所述的一种 使规则引擎实例进行水平扩展的控制系统, 其特征在于, 所述规则引擎集群单元由若干个规则引擎实例组成, 各个实例可以以单独进程模式或者镜 像模式进行部署, 各个实例之间无状态。 3.根据权利要求1所述的一种 使规则引擎实例进行水平扩展的控制系统, 其特征在于, 所述事件序列总线组由多个事件序列总线组成, 共同负责为规则引擎集群中实例集群内的 各个节点或者节点组提供事件序列, 每个事件序列总线由事件接 收模块、 事件消息编码模 块、 规则配置与分析模块、 分散负载模块 (分散负载模块中包含多个分散负载实例) 和事件 发送模块构成。 4.根据权利要求1所述的一种 使规则引擎实例进行水平扩展的控制系统, 其特征在于, 所述规则引擎集群内包含实例编码模块和实例集群, 其中实例集群可以选择两种 策略: 当 选择互为主 备策略时, 实例集群内包含多个规则引擎节点; 当选择组内冗余策略时, 实例集 群内包含多个规则引擎节点组。 5.根据权利要求1所述的一种 使规则引擎实例进行水平扩展的控制系统, 其特征在于, 所述规则输出总线组由多个规则输出总线组成, 共同负责将规则引擎集群得到的处理结果 进行去重合并与发送; 每个规则输出总线当中包含重复触发合并模块与处理结果发送模 块; 重复触发合并模块中包含多个去重任务, 每个任务负责对一个规则进 行去重; 处理结果 发送模块负责将去重合并后的处 理结果发送到下游业 务系统当中。 6.根据权利要求4所述的一种 使规则引擎实例进行水平扩展的控制系统, 其特征在于, 所述互为主备 的集群部署策略: 所有规则引擎实例之间构成互为主备关系, 即如果一个实 例失效, 由集群内另外一个实例接替失效实例进行一次业 务处理。 7.根据权利要求1所述的一种 使规则引擎实例进行水平扩展的控制系统, 其特征在于, 所述组内冗余的集群部署策略: 所有的实例从逻辑上分为若干个组, 每个组内的实例数量 为奇数个, 组内各个实例都执行完全相同的业务, 若某个节点失效, 不会影响组内其他节 点, 最终一个业 务的处理结果以组内节点的大多数节点达成一 致为原则。 8.根据权利要求7所述的一种 使规则引擎实例进行水平扩展的控制系统, 其特征在于, 所述规则引擎集群当选择互为主备策略时, 每个实例都是集群内的一个节点, 而在选择组 内冗余策略时, 若干个实例一 起构成了集群内的一个节点组。 9.根据权利要求7所述的一种 使规则引擎实例进行水平扩展的控制系统, 其特征在于, 所述实例编码模块负责对上节中所说的规则引擎 实例集群中的实例进 行编码, 在系统当中 通过这个编码来代 表某个实例, 实例的当前的工作状态、 业 务处理情况, 及处 理结果。权 利 要 求 书 1/1 页 2 CN 115357413 A 2一种使规则引擎实例进行水 平扩展的控制系统 技术领域 [0001]本发明涉及 规则引擎水平扩展领域, 特别是一种使规则引擎实例进行水平扩展的 控制系统。 背景技术 [0002]对于一段完整的业务, 当前的传统水平扩展方案一般的通用做法是 “强制无状 态”, 即: 将这段完整的业务中可以进行分为几个可以切割的阶段, 每一阶段进行水平扩展 的方式部署, 当有新业务流程开始 时, 依次调用不同的业务阶段, 每个阶段处理完成后, 都 序列化一个形态数据, 并交由下一个阶段进 行处理。 但是这个方案的关键点在于, 要能够找 到可以进 行序列化的业务数据, 并且每个业务阶段对业务数据的修改不依赖于其他同类业 务的不同业 务阶段的处 理结果。 [0003]而在规则引擎的典型业务场景当中, 这样却不可以, 比如: 在A地的温度传感器 (T1)上报温度过高后 (此时上报的温度为t1) , 同在A地的3个烟雾报警器 (分别记为S1、 S2、 S3) 中的2个或以上报告了发现烟雾, 之后的1分钟内, T1再次上报的温度 t2高于t1, 则认 为A 处发生了火灾。 此时如果在T1上报t2时, 如果没有获取到T1上报 的t1或者没有获取到S1、 S2、 S3当中的任意2个以上, 都无法进行正确处理, 这样会使平台的业务处理能力和处理难 度有很大的提升 。 发明内容 [0004]本发明的目的是为了解决上述问题, 设计了一种使规则引擎实例进行水平扩展的 控制系统。 [0005]实现上述目的本发明的技术方案为, 一种使规则引擎实例进行水平扩展的控制系 统, 包括上游事件来源、 下游业务系统、 事件序列总线组、 时间同步模块、 规则引擎集群以及 规则输出总线组; 所述上游事件来源是指其业务处理结果与这个处理结果对应的限定条件一起得 到的任何业 务系统, 为 规则引擎系统的所有业 务提供业务处理的事件; 所述下游业 务系统是指使用规则引擎处 理结果进行 下一步的业务处理的系统; 所述时间同步模块, 所述时间同步模块将所有的总线、 模块、 实例的本地时间进行 同步, 保证系统内时间一 致。 [0006]所述事件序列总线组由多个事件序列总线组成, 共同负责为规则引擎集群中实例 集群内的各个节点或者节点组提供事件序列, 每个事件序列总线由事件接 收模块、 事件消 息编码模块、 规则配置与分析模块、 分散负载模块 (分散负载模块中包含多个分散负载实 例) 和事件发送模块构成。 [0007]所述规则引擎集群内包含 实例编码模块和实例集群, 其中实例集群可以选择两种 策略: 当选择互为主备策略时, 实例集群内包含多个规则引擎节点; 当选择组内冗余策略 时, 实例集群内包 含多个规则引擎节点组。说 明 书 1/18 页 3 CN 115357413 A 3

.PDF文档 专利 一种使规则引擎实例进行水平扩展的控制系统

文档预览
中文文档 25 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共25页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 一种使规则引擎实例进行水平扩展的控制系统 第 1 页 专利 一种使规则引擎实例进行水平扩展的控制系统 第 2 页 专利 一种使规则引擎实例进行水平扩展的控制系统 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 13:07:36上传分享
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。