Drools引擎存储、处理和评估数据,以执行您定义的业务规则或决策模型。Drools引擎的基本功能是将传入的数据或事实与规则的条件相匹配,并确定是否以及如何执行这些规则。
Drools基本组件
Rules: 您定义的业务规则或DMN决策。所有规则必须至少包含触发规则的条件和规则指示的操作。
Facts: 输入到Drools引擎或与Drools引擎匹配的Drools引擎中的数据会更改为规则条件,以执行适用的规则。
Production memory: 规则存储在Drools引擎中的位置。
Working memory: Facts存储在Drools引擎中的位置
Agenda:已激活规则被注册和排序(如果适用)以准备执行的位置。
当业务用户或自动化系统在Drools中添加或更新与规则相关的信息时,这些信息将以一个或多个Facts的形式插入到Drools引擎的工作内存中。Drools引擎将这些Facts与Production memory中的规则的条件进行匹配,以确定符合条件的规则执行。(将事实与规则相匹配的过程
什么是规则?
规则是常被表示为“当某些情况发生时,然后执行一些任务”的知识。规则引擎允许您定义“做什么”而不是“如何做”。
When
<Condition is true>
Then
<Take desired Action>
规则最重要的部分是其When部分。如果满足when部分,则触发then部分
rule <rule_name>
<attribute> <value>
when
<conditions>
then
<actions>
end
模式匹配
将新事实或现有事实与生产规则进行匹配的过程称为模式匹配,由推理引擎执行。有很多用于模式匹配的算法,包括
Linear
Rete
Treat
Lea






