Drools vs JBPM ? differences, pros and cons

微笑、不失礼 提交于 2019-12-02 19:09:05

jBPM is not a rule engine, it's a workflow engine. Drools is a rule engine. So Drools is what you're looking for.

Drools and jBPM are companion projects: they integrate really nicely if you need workflows with rules.

Drools is a Rete rules engine that does forward and back induction. You can use it in a small setting for local decisions that only require a handful of rules OR something as large as an underwriting decision engine in insurance.

jBPM is an enterprise singleton that helps you to wire together interactions between humans and services into a state machine that fulfills a well-defined, complex business process. Think of the Mediator pattern in GoF.

I can see where jBPM might use a Rete rules engine to help with complex decisions in a business flow. There's nothing to stop me from embedding Drools in jBPM.

I would say they are complimentary, not an either/or choice.

jBPM is a workflow engine whereas Drools is a rule engine. Drools Flow will be merged in the project we call jBPM 5.

It is not correct to say that Drools should only be used for a handful of rules. It is able to scale really well, at least at the time of this comment (version 7.5/6)

The whole point of drools and any other rules engine is the implementation of algorithms that optimize the execution of rules. Manageability of rules is proportional (if such a thing exists) to the design of the rules.

As the others have said, JBPM is not a rules engine but a workflow system that interops with drools naturally.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!