Как улучшить производительность слюни? - PullRequest
3 голосов
/ 12 октября 2011

Есть ли способ регистрировать / отслеживать время, необходимое для правила в наборе правил Drools?

Есть ли способ убедиться, что одно правило не выполняется более одного раза (в моем случае это происходит)

Каковы общие рекомендации по улучшению производительности Drools?

В настоящее время я использую один файл DRL со 100 нечетными правилами.

Будет предоставлена ​​любая необходимая дополнительная информация.

1 Ответ

4 голосов
/ 17 октября 2011

Если ваша цель состоит в том, чтобы регистрировать / отслеживать выполнение правил, вы можете использовать прослушиватели событий, такие как AgendaEventListener (http://docs.jboss.org/drools/release/5.3.0.CR1/drools-expert-docs/html_single/index.html#d0e2003)) или активировать Drools MBeans для мониторинга приложения Drools с помощью любой консоли JMX по вашему выбору. MBeans даст вам застатистика правил и обобщенная статистика.

Как улучшить производительность - это очень широкий вопрос, и ответ на него будет гораздо длиннее, чем я могу ответить здесь, но короткая версия такова: механизм правил, такой как Drools, аналогичен реляционному.к реляционным базам данных, но с разными целями и оптимизациями. Тем не менее, применяются многие из тех же принципов, и вы можете повысить производительность, написав сначала правила с более жесткими ограничениями, разделяя ограничения между несколькими правилами и правильно используя логический вывод / цепочку.

Только к вашему сведению, если вы находитесь в районе Сан-Франциско, у нас будет бесплатный загрузочный лагерь Drools (но вам все равно придется зарегистрироваться) на следующей неделе во время фестиваля правил (http://rulesfest.org/html/home.html), где мы представим множество смежных тем.

...