跳到主要内容

规则引擎设计概览

核心概念:文档中心 | 规则引擎设计概览 | 概览

规则引擎模块旨在为系统提供灵活的业务规则配置与匹配能力。它能够根据设备的硬件信息(如MAC、CPU、内存)、软件信息(如版本、SDK)以及归属信息(如渠道、地区)进行精确的条件匹配,从而筛选出符合特定业务场景的设备。

本系统规则引擎的底层实现采用了 LiteFlow 组件,利用其轻量级、高性能和编排式的特性来处理复杂的规则链。


核心概念:文档中心 | 规则引擎设计概览 | 1. 概述 (规则引擎)

1. 概述 (规则引擎)

在规则引擎设计中,系统的核心目标是实现灵活的业务匹配。

规则引擎模块旨在为系统提供灵活的业务规则配置与匹配能力。它能够根据设备的硬件信息(如MAC、CPU、内存)、软件信息(如版本、SDK)以及归属信息(如渠道、地区)进行精确的条件匹配,从而筛选出符合特定业务场景的设备。

本系统规则引擎的底层实现采用了 LiteFlow 组件,利用其轻量级、高性能和编排式的特性来处理复杂的规则链。


核心概念:文档中心 | 规则引擎设计概览 | 2. 核心能力 (规则引擎)

2. 核心能力 (规则引擎)

规则引擎具备以下核心技术能力:

  • 多维匹配:支持数十种设备属性的组合判断(AND/OR逻辑)。
  • 可视化编排:提供前端图形化/树形编辑器,降低运营配置门槛。
  • 高性能:基于 Redis 多级缓存架构,支持高并发设备请求(毫秒级响应)。
  • 业务隔离:支持多业务线复用同一套规则引擎,通过 BusinessType 进行隔离。

核心概念:文档中心 | 规则引擎设计概览 | 3. 支持的业务场景 (规则引擎)

3. 支持的业务场景 (规则引擎)

目前规则引擎已接入以下核心业务模块:

业务模块业务类型 (Enum)说明审批要求
任务推送TASK_PUSH (0)向特定设备推送定时任务、消息通知需要审批
Launcher广告LAUNCHER_PUSH (1)控制开机广告、贴片广告的精准投放需要审批
黑名单管理BLACK_LIST (2)智能拦截、卸载违规应用需要审批
UOTA升级UOTA_UPDATE (3)定向推送固件或应用升级包无需审批
域名分发DOMAIN_DISPATCH (4)动态下发服务节点域名(灰度发布、地域调度)无需审批

核心概念:文档中心 | 规则引擎设计概览 | 4. 技术架构简述 (规则引擎)

4. 技术架构简述 (规则引擎)

规则引擎的技术架构主要由以下部分组成:

  • 后端

    • 核心引擎:LiteFlow (EL表达式执行)
    • 缓存层:Redis (Set/Hash结构,缓存规则关系与详情)
    • 存储层:MySQL (规则定义、绑定关系)
    • 交互层:Feign Client (内部RPC), Kafka (异步事件/审批状态同步)
  • 前端

    • 管理组件RuleBusinessTabs (Vue3通用组件,集成在各业务页面)
    • 编辑器:基于 LiteFlow 语法的可视化设计器
AI 问答