[rules-users] drools in a SOA environment

Swindells, Thomas TSwindells at nds.com
Tue Aug 10 04:41:34 EDT 2010


Here's how I understand it.

Guvnor is one way to define rules, however it is an external system and you don't have to use it (we don't in our company). All guvnor basically does is provide a nice interface to define and generate the appropriate DRL and other source files.  If you want to run as a service then the easiest thing to do is to use a KnowledgeAgent to load the rules from wherever you have defined them (eg guvnor).

Apache camel supports many ways to talk to it, one of which is SOAP (http://camel.apache.org/soap.html) this would probably work in exactly the same way as Rest as all they are is transport layers to carry the facts that you want to process and return.

Thomas

From: rules-users-bounces at lists.jboss.org [mailto:rules-users-bounces at lists.jboss.org] On Behalf Of Dieter D'haeyere
Sent: 10 August 2010 01:17
To: Rules Users List
Subject: [rules-users] drools in a SOA environment

I have some questions regarding the overall view of what is happening where when using Drools in a service oriented environment.

This is the idea:
Some applications are making use of rules for some calculations.  The idea is to be able to call the rule engine as a service.  Meaning: passing all facts to the rule base and based on that, rules will be fired and the facts will be updated.  Rules will be called a lot so scalability is important.  Next to that: the conclusion part should be able to call other services, eg. to do some calculations.  An ESB is available so communication could go over that bus.

Now: this is how I see it:

Drools Guvnor is the place where the rules are stored and managed. (war)
Drools Server is where the actual calculations take place. (war but... when more load must be handled, multiple instance could be deployed).
The application does a SOAP call to Drools Server (passes facts and commandos) and all is ok...

Well .. now the problem starts... I don't get it :)
I mean: how does Drools Server talk to the rule base ?  I haven't found a clear article (but probably it does exist, just didn't find it yet) where this cooperation is demonstrated.

Also: I read about Camel / Spring / Rest which would be the new way to call a service... So SOAP is no longer supported (or will be deprecated as of Drools v5.x ?)

An overview and / or some best practices on how to design the architecture would be welcome.

Btw, as I understand it now, Drools - grid will be the way to go.  But that will probably will be for version > 5.2.
And then again, I am confused about the split between the rule 'engine' (I have been told that there is not such a thing as a big calculating engine) and the rule repository.
I kind of would expect that those two could be coupled tightly together (ok, there is probably a good reason why choices are made as they are, I am way too newbie to interfere in any such discussion).

Sincerely,
Dieter D'haeyere.

________________________________

**************************************************************************************
This message is confidential and intended only for the addressee. If you have received this message in error, please immediately notify the postmaster at nds.com and delete it from your system as well as any copies. The content of e-mails as well as traffic data may be monitored by NDS for employment and security purposes. To protect the environment please do not print this e-mail unless necessary.

NDS Limited. Registered Office: One London Road, Staines, Middlesex, TW18 4EX, United Kingdom. A company registered in England and Wales. Registered no. 3080780. VAT no. GB 603 8808 40-00
**************************************************************************************
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20100810/4aec5c68/attachment.html 


More information about the rules-users mailing list