Hello Harshit / Mark,<br><br>My reasoning behind the yes, is that:<br><br>- If you have 10 rules that won't necessarily always match, it's better to use Rete, than sequentially match one-by-one. The tree structure with the sharing of nodes for different rules seems to always be a better approach for me, than sequentially testing one-by-one and, in some cases, retesting the same condition on different rules (if that happens);<br>
<br>- You can write if-then-elses in a imperative language and perform better than Rete, but if your rules are complicated and you have many of them, it's likely that rete can do a better job; Also, if you need to change your rules or add new ones, it will be easier to do that declaratively;<br>
<br>I first put the links, because you can use that to judge yourself whether or not you might gain in performance in your own scenarios, with that material.<br><br><br>@Mark: <br><div><br><blockquote style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;" class="gmail_quote">
In general a stateless session is just a convenience api for
stateful, it just wraps. So no performance gain at all.</blockquote><div><br>I think here you're saying that there will be no performance gain compared to a stateful session, but I believe that the question was more on the lines of "I know that with a stateful it's efficient, how about stateless". I tried to say that, yes, it's also worth using Rete in stateless scenarios.<br>
<br>Cheers,<br>Leo.<br></div> </div><div class="gmail_quote">2010/9/24 Mark Proctor <span dir="ltr"><<a href="mailto:mproctor@codehaus.org">mproctor@codehaus.org</a>></span><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<div bgcolor="#ffffff" text="#000000"><div class="im">
On 24/09/2010 16:18, Leonardo Gomes wrote:
<blockquote type="cite">Have a look here: <a href="http://www.drdobbs.com/184405218" target="_blank">http://www.drdobbs.com/184405218</a><br>
<br>
here: <a href="http://blog.athico.com/2007/07/sequential-rete.html" target="_blank">http://blog.athico.com/2007/07/sequential-rete.html</a><br>
<br>
and here: <a href="http://herzberg.ca.sandia.gov/guidelines.shtml" target="_blank">http://herzberg.ca.sandia.gov/guidelines.shtml</a><br>
<br>
The easy answer for your question is "Yes" ;-)<br>
</blockquote></div>
It depends :)<br>
<br>
In general a stateless session is just a convenience api for
stateful, it just wraps. So no performance gain at all.<br>
<br>
There is a "sequential" mode, but in all honest you won't get any
measurable perf gain. So I wouldn't use sequential mode for
performance, the only reason to use it is if you want your rules to
execute sequentially.<br><font color="#888888">
<br>
Mark</font><div class="im"><br>
<blockquote type="cite"><br>
Cheers,<br>
Leo.<br>
<br>
<div class="gmail_quote">
2010/9/24 Harshit Bapna <span dir="ltr"><<a href="mailto:hrbapna@gmail.com" target="_blank">hrbapna@gmail.com</a>></span><br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
Hi All,<br>
<br>
In a scenario where lets say 10 rule are to be fired (in any
order) in a stateless session than will I get the benefits of
RETE algorithm (i.e increased performance).<br>
i.e Whether the engine will fire all the ten results in a
parallel fashion or Whether the engine will file each rule one
by one.<br>
<br>
How RETE algorithm will improve the performance of the engine
for rules fired in stateless session ?<br>
<br>
<br>
_______________________________________________<br>
rules-users mailing list<br>
<a href="mailto:rules-users@lists.jboss.org" target="_blank">rules-users@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/rules-users" target="_blank">https://lists.jboss.org/mailman/listinfo/rules-users</a><br>
<br>
</blockquote>
</div>
<br>
<pre><fieldset></fieldset>
_______________________________________________
rules-users mailing list
<a href="mailto:rules-users@lists.jboss.org" target="_blank">rules-users@lists.jboss.org</a>
<a href="https://lists.jboss.org/mailman/listinfo/rules-users" target="_blank">https://lists.jboss.org/mailman/listinfo/rules-users</a>
</pre>
</blockquote>
<br>
</div></div>
<br>_______________________________________________<br>
rules-users mailing list<br>
<a href="mailto:rules-users@lists.jboss.org">rules-users@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/rules-users" target="_blank">https://lists.jboss.org/mailman/listinfo/rules-users</a><br>
<br></blockquote></div><br>