天天看点

CEP之于Drools规则引擎

什么是CEP

  • CEP(Complex Event Processing)是复杂事件处理系统;
  • 可以将一个或多个的事实映射到一个或多个规则上;
  • 接受大量的数据输入,解释业务规则,并根据业务规则做出业务决策;

复杂系统开发面临的现状

_ _ _

CEP之于Drools规则引擎

引入CEP的好处

_ _ _

CEP之于Drools规则引擎
CEP之于Drools规则引擎

对于CEP使用人员:

  • 把业务规则的创建、修改和维护的权利交给业务人员;
  • 提高业务灵活性;
  • 加强业务处理的透明度,业务规则可以被管理;
  • 减少对IT人员的依赖程度;
  • 避免将来升级的风险;

对于CEP开发人员:

  • 简化系统架构,优化应用;
  • 提高系统的可维护性和维护成本;
  • 方便系统的整合;
  • 减少编写“硬代码”业务规则的成本和风险;

CEP特性

  • 从应用逻辑和数据中将业务逻辑分离;
  • 简单! -规则有一个非常简单的结构;
  • 让业务用户开发和维护规则以降低成本;
  • 声明式编程;
  • 性能和可伸缩性;
  • 解决复杂的和复合的问题,其中有大量细粒度的规则和事实互动;

CEP微服务设计

_ _ _

CEP之于Drools规则引擎

1.规则包管理服务

功能:

  • 支持规则文件的增删查改;
  • 支持事件类型文件的增删查改;
  • 支持规则包信息的增删查改;
  • 生成规则包;
  • 支持规则包向规则库的推送、删除、修改、查询;

2.CEP引擎服务

功能:

  • 动态扫描规则库,加载规则包;
  • 接收普通事件;
  • 解析业务规则;
  • 生成告警事件;

CEP的逻辑结构图

_ _ _

CEP之于Drools规则引擎

规则支持场景

CEP之于Drools规则引擎

workbench工作流程

事件类型编辑

CEP之于Drools规则引擎

规则文件编辑

CEP之于Drools规则引擎

规则检验

CEP之于Drools规则引擎

检验结果

CEP之于Drools规则引擎

版本控制

CEP之于Drools规则引擎

构建规则包

CEP之于Drools规则引擎

继续阅读