Rule Execution Server のパフォーマンスの向上

Rule Execution Serverのパフォーマンスを向上させることができます。

効果的なルール・セットを設計および作成することによって、パフォーマンスが向上します。 効果的なルール・セットは、ビジネス・ルール・アプリケーションの開発時に作成できます。 パフォーマンス・チューニングでは、要求を処理するために、アプリケーション・サーバーが必要とする時間およびリソースを減少することが目的となります。 パフォーマンス・チューニングにより、アプリケーション・サーバーは、より短い時間でより多くのタスクを完了することができます。

開発時におけるパフォーマンスの向上

アプリケーションの開発フェーズで、効果的なアーティファクトを作成し、そのアーティファクトの実行モードを選択することで、ルール・セット実行のパフォーマンスを向上させることができます。

次の表では、より効果的なアーティファクトを作成することによってパフォーマンスを最適化する方法について説明します。

開発アーティファクト 推奨事項

ルール・セットのサイズ

ルール・セットのサイズは、合計実行時間に影響を与えます。

RuleApp アーカイブの生成時におけるリソース使用の主な原因として、RuleApp の一部として配布されるルール・アーティファクトの数とサイズがあげられます。 実行環境に配布されるリソースのサイズを制限すると、ビジネス・ルール・アプリケーションの動作がより良くなります。

ルール・セットのリソース

ビジネス・ルール・アプリケーションのリソース使用コストを削減するには、次の手順に従います。
  • 各大規模ルール・プロジェクトを複数の小さいルール・プロジェクトに変換する。
  • 各ルール・プロジェクトから、複数の小さいルール・セットを生成する。
  • ルール・セットごとにルール・セット・エクストラクターを使用し、 ルール・プロジェクトの一部を抽出する。 この場合は、ルール・セットを実行するアプリケーションを変更しなければならないことがあります。

ルール・フロー

ルール・フロー内の意思決定の流れを改善するには、ルール・フローを単純にします。 ルール・フローを複雑にすると、パフォーマンスが低下します。

XML XOM

複数の同時処理を行うために XML XOM を使用するルール・セットを構成します。 ruleset.xmlDocumentDriverPool.maxSize ルール・セット・プロパティーを設定して、XML ドキュメント・ドライバーの実行プールを構成します。 デフォルト値は 1 です。

ルール・タスク

ルール・タスクに動的フィルターを使用しないようにします。 可能な場合は、 ルールの固定リストを使用します。

意思決定表

「Rule Designer」 テクニカル・ビューで意思決定表のサイズを確認します。 意思決定表を複数の小さい表に分割すると、ルール・セットのサイズを大幅に小さくすることができます。

パフォーマンスに影響を与える可能性のある成果物について詳しくは、 Rule Execution Server 管理成果物を参照してください。

適切な実行モードを選択することにより、特定の環境でのパフォーマンスを最適化することができます。 実行モードについて詳しくは、 実行モードの選択を参照してください。