KIE(Knowledge Is Everything)
概述
Drools 自 6.0 版本开始,推出了基于 KIE 的全新 API,其目的是为了更简单地操作规则引擎。
KIE(Knowledge Is Everything)知识即一切,是 jBoss 一系列项目共享的一个核心项目,主要目的就是将相关技术整合在一起。其中 KIE-API 定义了接口规范,这些接口可以在不同的项目中进行使用,由不同的项目来实现这些对应的接口的方法。KIE 主要模块如图所示:
OptaPlanner:一款轻量级、可嵌入的规划调度引擎,一个本地搜索和优化工具,可对商业资源规划问题进行优化
Drools:业务规则管理系统,可对业务规则和复杂事件处理进行快速可靠的评估
UberFire:一个基于 Web 的基础工作台项目,功能类似 Eclipse
jBPM:业务流管理组件,用于实现自动化业务流程和决策的工具包
生命周期
创建(Author):通过 KIE-WB 创建知识库,如 DRL、决策表、决策树等。
构建(Build):生成一个包含知识库的 jar,通过 Java 代码或 KIE-WB 提供的服务器(KIE-SERVER)来操作业务规则。
测试(Test):对整体知识库进行测试。
部署(Deploy):通过 Maven 将其组件部署到应用程序上。
使用(Utilize):通过 KieContainer 创建 KieSession,为执行提供前提条件。
执行(Run):通过 KieSession 与 Drools 系统进行交互,执行规则、流程、决策表等。
交互(Work):用户通过代码或页面与 KieSession 交互。
管理(Manager):管理 KieContainer、KieSession 对象。
评论