Слюни против JBPM? различия, плюсы и минусы
Я ищу хороший двигатель правил.
Я видел, что существует два хороших проекта: JBPM и Drools.
Я действительно не понимаю различий между ними, и я не знаю, какой идеальный инструмент для использования.
Пожалуйста, не могли бы вы предоставить мне больше информации и вашего опыта с тем или иным, и что, по вашему мнению, лучше всего использовать для управления бизнес-правилами.
4 ответа
jBPM - это не механизм правил, а механизм рабочих процессов. Слюни - это двигатель правил. Итак, Drools - это то, что вы ищете.
Drools и jBPM являются сопутствующими проектами: они очень хорошо интегрируются, если вам нужны рабочие процессы с правилами.
Drools - это механизм правил Rete, который выполняет индукцию вперед и назад. Вы можете использовать его в небольших условиях для локальных решений, которые требуют лишь небольшого количества правил ИЛИ чего-то большего, чем механизм принятия страховых решений в страховании.
jBPM - это корпоративный синглтон, который помогает объединить взаимодействия между людьми и службами в конечный автомат, который выполняет четко определенный, сложный бизнес-процесс. Подумайте о модели Mediator в GoF.
Я вижу, где jBPM может использовать механизм правил Rete для принятия сложных решений в бизнес-процессе. Ничто не мешает мне встраивать Drools в jBPM.
Я бы сказал, что они бесплатные, а не выбор.
jBPM - это механизм рабочих процессов, а Drools - механизм правил. Drools Flow будет объединен в проекте, который мы называем jBPM 5.
Неправильно говорить, что слюни следует использовать только для нескольких правил. Он способен очень хорошо масштабироваться, по крайней мере, на момент написания этого комментария (версия 7.5/6)
Смысл слюни и любого другого движка в правилах заключается в реализации алгоритмов, которые оптимизируют выполнение правил. Управляемость правил пропорциональна (если такая вещь существует) дизайну правил.
Как уже говорили другие, JBPM - это не механизм правил, а система рабочих процессов, которая естественным образом взаимодействует со слюнями.