ilog jrules и подключение к базе данных

Я использую пробную версию IBM ilog jrules 7.1 для выполнения POC. Я использую таблицы решений для проверки данных регистрации клиентов.

мое правило таблицы решений ilog: если состояние клиента является любым из CA, IL, AL, тогда установите статус как «подходящий», иначе сделайте клиента «неподходящим» для предложения.

На счастливом пути я могу добавить коды состояний в качестве литералов домена, и правило будет работать нормально. Но мне нужно динамически загружать значения этого домена из базы данных ( mysql ), используя некоторый код IRL. Выполнял ли кто-нибудь подобное требование, как у меня, было бы очень полезно, если бы кто-нибудь мог указать мне правильное направление.


person teon    schedule 27.02.2012    source источник


Ответы (1)


Один из общих принципов JRules заключается в том, что вы должны вызывать обработчик правил со всей необходимой информацией, если это возможно. С точки зрения производительности доступ к базе данных во время выполнения правила не является хорошей идеей. Вы также можете потерять возможность использовать приложение правил в кластерной среде. Кроме того, решения менее прослеживаемы и воспроизводимы, потому что сложнее узнать, что находится в вашей базе данных в любой момент времени.

В зависимости от того, как часто меняются ваши данные, я предлагаю вам добавить эти значения в качестве второго входного параметра и получить данные перед вызовом механизма правил. Второй вариант — использовать плагин динамического домена для загрузки этих значений из базы данных перед развертыванием. Но вам придется повторно развертывать ruleApp каждый раз, когда данные изменяются. С помощью подключаемого модуля динамического домена вы можете указать поставщика данных (например, Excel, MySQL и т. д.) и заполнить свою спецификацию атрибутами, содержащимися в базе данных. Эти значения динамического домена отображаются в виде атрибутов и могут быть синхронизированы из представления спецификации в студии правил, а также из командного сервера:

Пример динамического домена

В WODM (преемнике JRules 7.1) эта функциональность встроена, возможно, этот плагин не является частью демо и должен быть добавлен в 7.1 отдельно.

person sdfx    schedule 28.02.2012
comment
спасибо, не могли бы вы рассказать об использовании плагина динамического домена? мы скоро купим лицензию, как только мы оценим пробную версию. - person teon; 29.02.2012
comment
Я расширил ответ, добавив немного больше информации о плагине. Дайте мне знать, если что-то еще неясно. - person sdfx; 07.03.2012