ilog jrules中RetePlus和Sequential执行模式之间的区别

时间:2012-03-20 13:10:26

标签: java rule-engine business-rules ilog

当我在ilog jrules,reteplus算法,顺序模式执行等中使用规则流时,我遇到了不同的执行模式。这些模式之间的区别是什么。请不要让我参考IBM文档。我已经做了。其他一些简单的语言解释表示赞赏。

2 个答案:

答案 0 :(得分:1)

“非常”简单的解释:

RetePlus简单地允许插入/删除/更新工作存储器(WM)中的对象,然后评估并与规则上的条件匹配。任何匹配的规则都会被放入议程然后被解雇。如果这些规则更改工作内存中的数据,则可能会触发更多条件与更改的对象匹配的规则。循环继续,直到没有更多规则与WM中的对象匹配。

顺序几乎以指定顺序运行规则,触发条件与对象匹配的规则然后退出。对数据的任何更改都不会被重新评估,也不会触发进一步的规则。

还有Fastpath,介于两者之间。它使用RetePlus的条件匹配功能(出于性能原因),但不重新评估已更改的数据(因此不是循环的)。

答案 1 :(得分:1)

RetePlus 是一种基于Rete算法的扩展,是默认的执行模式。 其优化技术用于提高性能:减少规则和条件的数量,计算要执行的规则,以及规则顺序的优先级。

在RetePlus模式中,规则引擎最小化要评估的规则和条件的数量,计算必须执行的规则,并确定必须执行这些规则的顺序。

在RetePlus 中,规则引擎使用工作内存和日程来存储和操作 应用对象。工作内存包含对应用程序对象的引用。议程列出并命令有资格执行的规则实例。

顺序模式按顺序执行给定规则任务的所有符合条件的规则,这提供了特定的性能优势。

我希望有所帮助。