ルールエンジンソリューションに

まず、ルールエンジンの使用シナリオ:

  1. ページ、プロセス、選択ポイントの実装を拡張する;出力:器具の位置。
  2. 組織の多数の条件とビジネスロジックの計算チケット在庫削減の目的を達成するための行動ビルディングブロックビルディングブロック;出力:後、商品の価格を再計算します。
  3. (アフターアプリケーション、または作業順序応答応答/マーケティング勧告、または、特定のフォームを完了するために、ステップバイステップ:出力、多因子決定が最良の答えを与える効果にするため、アフター受注、および情報や判断の他の会員組織によって提出);
  4. 出力;注文メッセージを介して、プロトコル、および商業用メタデータ入力、充電レコードの構造トリガー:会計伝票を、

サービス構成 - 建物の条件、および承認ロジックアプリケーションは、原因ビジネス需要速いイテレーションの大きな変化に、非常に多くのルールの管理があり、必要性は常にルール、ハードコード開発を入れ子にします。ビジネスニーズに基づいて、ルール・エンジンを確立することを望んで、コードは、コードの他に、ネストされた、強化された保守性と再利用性ならば、ルールを減らすよう、反復ルールのコストを削減し、ビジネスルールから引き出されます。開発者たちは、ロジックに集中することができ、ロジックにあまり関心を持っていません。

他のロジックは、ハードコーディングされたかどうかをチェックすることにより行われているようなルールの多くは、ありますが、製品は現在、電気、小売、その他の事業部門をサポートし、二つの状況でしかありません。一つは、商品のドメインモデルを変更することで、ルールの変更があります。私たちは、上側のサポート・サービス、ビジネス・ルールは、空のニーズの半分を占めると言うことができます。

一般的なビジネスルールエンジン、および共通のルールエンジンを提供し、彼らのビジネスを結合しないことは可能です。

ファイル

第二に、ルールエンジンは何ですか

ルール・エンジンは、アプリケーションに埋め込まれたアセンブリ、アプリケーションコードからビジネス上の意思決定の分離を達成し、ビジネス上の意思決定に書き込まれた事前定義されたセマンティック・モジュールを使用することです。ビジネスルールを説明する、データ入力を受け入れ、ビジネスルールに基づいてビジネス上の意思決定を行います。

規則は、Y = F(X1、X2、...、XN)として、基本的機能であります

ルールエンジンは、3つの部分で構成されてい

  • 事実(ファクト):ユーザが入力した、それは推論の前に既知の物体として理解することができるという事実です。
  • LHS(左手側):ルールの実装は条件が満たされる必要があると理解することができます。
  • RHS(右手サイケは):オブジェクトが実行した後、原則として理解することができる返します。

二つの重要なモジュール:

  • ルール管理:事実とルール、ルールに主に関連し、論理的には3つのエンティティを設定した管理ルールを理解することができます。それは、ルールを変更するために来るとき、ルールは、好ましくはバージョン、ルールによるバージョン管理に追加され、滑らかな階調が規則的な実施形態を変更するだけでなく、テストルールの正確でより信頼性を容易にすることができます。

  • ルール実行:ルールベースデータは、ルールによってエンジンルールを解析する、ルール・コンパイラの実行可能コードがキャッシュされ、その後、各時間は、アクチュエータを支配するようにしてもZKまたはDCCリアルタイム通知によりルールを変更、すべてのDBの相互作用を回避します。アクチュエータのルールの実装は、必要に応じて、ストレージ・ルール・ベースに依存しない、Droolsの、飛行士ともANTLRに基づいてカスタマイズすることができ、他のサードパーティのエンジンの選択を変えることができます。

ファイル

第三に、練習の概要

真実を練習。Javaのルールエンジンフレームワークの研究いくつか:

  • 金融リスク管理、不正防止のための重いdroolsが。検索と他のルーティングシナリオには適していませんAvator、フェル、QLExpress
  • インプリメンテーション・エンジンを使用すると、スクリプトやアポロアポロまたはgrovvyスクリプトに基づいて行うことができるルールをルーティングを設定。

シーンは、シンプルである限り、我々は重要な条件のキーを定義すると、キーを押した場合は、返却キー対応する結果をすることができます。

複雑な金融シナリオ場合は、より適切なdroolsが。

例えば、シーンの検索、上から下へ優先順位に従って。

  1. あなたは、店舗ID、店舗検索インデックスの断片化へのルートを取った場合
  2. もしIDと買い手、検索インデックスの買い手スライスへのルート
  3. 状態は熱い状態ルートインデックスに熱い状態であれば
  4. もし...

この単純な、良いアポロはキー条件JSONを定義し使用し、一致させることができます。

おすすめ

転載: www.cnblogs.com/Alandre/p/11491221.html