2013-04-01 3 views
0

Текущее приложение служит инструментом для прослушивания, где в документах и ​​продуктах, которые должны быть видимыми для пользователей портала, проверяется на соответствие определенным правилам во время выполнения на основе пользователя, который подписал Например, проверки включают, если пользователь, который вошел в систему, принадлежит определенной стране, для которой назначен документ. Если документ присваивается стране США и языку на английском языке, то страна и язык входа пользователя проверяется на эти атрибуты документа. Если он совпадает, документ будет показан пользователю. Здесь сравнение находится между двумя объектами - объект пользователя, прошедший через сеанс. Информация о документе (страна, язык) извлекается из базы данных и хранится как кеш в настоящее время.Должен ли я использовать Drools для обработки этой сложной логики

Вопрос 1. Смогут ли Drools справиться с этой сложной логикой? 2. Может ли документ атрибутировать данные (иметь атрибуты документа amy), которые хранятся в кеше и использоваться в Drools? 3. Как передать пользовательский объект сеанса в Drools? 4. Будет ли производительность хорошей обрабатывать 100 миллионов записей примерно?

ответ

0

Ответы:

1) Да. Без труда. На самом деле Drools, вероятно, слишком переполнен, для такого сравнительно простого набора (статических) правил (которые могут обрабатываться языком запросов). 2) Я не совсем уверен, что вы имеете в виду здесь. 3) Вы не можете (по крайней мере, не осмысленно). Дролз не волшебство. 4) Drools не является базой данных. Он не обрабатывает записи. Он управляет правилами. Вы даете ему набор или правила и набор параметров для проверки этих правил, а Drools сообщает вам, соответствуют ли данные этим правилам или нет.

Вообще говоря, вам не нужны Drools для того, что вы имеете в виду, любая правильно спроектированная RDBMS может обрабатывать эти правила, используя реляционные данные и запросы. Вы должны использовать это вместо этого.

Смежные вопросы