如何优化Drools执行性能?

时间:2014-04-16 10:38:28

标签: drools

我们在单个规则流组下有1000条规则 执行时(约10-20秒)我们遇到严重的性能问题

我们认为不是单一规则流组,而是分成多个议程组将改善绩效。

或创建多个入口点会提高性能吗?

有人遇到过这个问题吗?

任何链接/文档也受到欢迎。

1 个答案:

答案 0 :(得分:2)

几个月前在Drools用户列表中出现了类似的问题,根据may提案,它通过不同的方法成功解决。它也可能适用于此。

假设有一些影响汽车保险费用的风险因素。属性包括:年龄,以前的事件,以前事件中的损害数量,性别,医疗分类。

这些值中的每一个都会通过几个学分影响溢价。

你可以写出大量的规则,比如

Application( age <= 32 && <=35, previous == 1, damage <= 1000,
             gender == 'F', medical == 0.25 )
then
setPremium( 421 );

建议的解决方案是为每个这样的参数集插入(常量)事实,并且有一个规则来确定匹配参数集并从参数集中的字段设置溢价。