Слюни вопросы повторного использования - PullRequest
1 голос
/ 13 января 2011

Я оцениваю JBoss Drools в настоящее время и хотел бы обратиться за помощью к сообществу в отношении проблем повторного использования, которые я уже определил:

  1. Чтобы создать базу знаний, нужно импортировать.drl file / s, но если я только хочу использовать подмножество правил из файла .drl, кроме формирования групп правил (с использованием повестки дня-группы или RuleFlowGroup), есть ли другие способы сделать это?Использование групп правил может легко сделать определение правила беспорядочным, представьте, что у вас есть 10 различных поднаборов правил с перекрытием, то есть 10 групп правил ...

  2. Есть ли способ вставить факты вПравить владением знаниями динамически?Мне кажется, что все необходимые факты / данные должны быть вставлены в сеанс до запуска механизма правил, создавая узкие места производительности ... Например, если один из фактов находится в базе данных, механизм не может быть запущен, если только факт из базы данныхнарисован.Было бы лучше, если бы механизм мог сначала обработать другие факты, и когда факт из базы данных будет готов, динамически вставьте его в сеанс.

1 Ответ

1 голос
/ 13 января 2011
  1. Хороший способ сделать это - использовать повестку дня.Другой способ заключается в том, чтобы отделить ваш пакет правил в разумных пределах.

  2. Поскольку я понимаю ваш вопрос, вы можете использовать Fact Handles.

    Используйте StatefullKnowledgeSession здесь.

    FactHandle objHandle = ksession.insert (fact);

Через некоторое время, когда ваши факты будут готовы из базы данныхВы можете изменить факты в текущем сеансе.

ksession.update(objHandle, newFactObject(of same class))

Для получения более подробной информации перейдите к http://downloads.jboss.com/drools/docs/5.1.1.34858.FINAL/drools-expert/html_single/index.html главе 2.1.2.Сессия Stateful Knowledge.

...