<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><blockquote type="cite"><blockquote type="cite">According to my requirement I have to keep rule for each book separately.<br></blockquote><br>That's the weirdest thing I ever heard. What's the point?<br></blockquote></div><br><div><br></div><div>It sounds to me like one of the following:</div><div><br></div><div><ol class="MailOutline"><li>A poor requirement from someone who doesn't understand the technology.</li><li>An overly literal interpretation of a requirement which was not intended to be technical.</li></ol><div><br></div></div><div>I suspect that you may well need to go back to whoever provided these requirements and work out which are hard technical requirements and which are not. And *why*. You may need to renegotiate with them with respect to what you are building. If they are any good, I would expect them to appreciate being told there are problems with their requirements now, rather than discovering in a couple of months time that the application needs to be re-written.</div><div><br></div><div>A rules engine based application can be very fast at providing responses, but as you have found, a poor design can ensure that it seems like the slowest thing in the world. And it seems that a lot of developers go down a wrong path which requires a complete re-write of an application. With what you seem to have, there are no simple performance tweaks that will speed it up enough. It seems that it needs a fundamental rethink.</div><div><br></div><div>One of the most important aspects of rules engine development is understanding the business intent and being able to work out how to achieve the goal effectively. As Wolfgang mentions, I reckon you would be better off providing some details of the problem so that we might be able to help you find a sensible solution. Otherwise it's looking to me like we would be helping you waste time on an inappropriate solution.</div><div><br></div><div>Steve</div></body></html>