0

当前应用程序用作一个审核工具,其中在需要对门户中的用户可见的文档和产品中,根据已登录的用户在运行时根据某些规则检查。例如,检查包括是否拥有登录属于文档分配到的特定国家/地区。如果文档被指定为美国国家和语言英语,则登录用户的国家和语言将根据文档的这些属性进行检查。如果匹配,则文档将显示给用户。这里比较的是 2 个对象 - 通过会话传递的用户对象。当前从数据库中检索文档相关信息(国家、语言)并存储为缓存。

问题是 1. Drools 是否能够处理这种复杂的逻辑?2. 文档属性数据(有多少个文档属性)可以缓存在Drools中使用吗?3. 如何在 Drools 中传递一个用户会话对象?4. 处理大约1亿条记录性能会好吗?

4

1 回答 1

0

答案:

1) 是的。容易地。事实上,对于这样一组相对简单的(静态)规则(可以由查询语言处理),Drools 可能是矫枉过正。2)我不太清楚你在这里的意思。3)你不能(至少没有任何有意义的方式)。流口水不是魔术。4) Drools 不是数据库。它不处理记录。它处理规则。你给它一个或多个规则,以及一组用于测试这些规则的参数,Drools 会告诉你数据是否符合这些规则。

一般来说,您并不需要 Drools 来满足您的想法,任何设计正确的 RDBMS 都可以使用关系数据和查询来处理这些规则。您应该改用它。

于 2013-04-02T12:09:14.210 回答