軽量のルールエンジンが必要です。現在、約50のルールがありますが、ルールは頻繁に変更され続けます。
Droolsを使用することもできますが、それはやり過ぎだと思います。より軽量なF/OSS実装はありますか?
私は他の同様の質問を知っていますが、それは2年前のものであり、良い答えはありません。 (そして私はその質問にコメントするのに十分な担当者がいません)
nools もありますので、試してみてください。
私もずっと遅れていますが、もっと軽いオプションを求めているので、 json-rules-engine を検討してください。私は、このライブラリを作成して、ルールの永続化が簡単なシンプルでパフォーマンスの高いルールエンジンを作成しました(ルールはjsonで表現されています)。
これはエンタープライズソリューションではなく、 nools よりも野心的ではありません。ルールエンジンに関しては、ブールロジック、比較演算子、および(理想的には)人間が読めるルールなど、多くの企業が比較的基本的なニーズを持っています。
頻繁に変更される(つまり、高度に構成可能な)ルールが50個しかないというユースケースは、実際にこのライブラリの対象読者です。
私はnode-clipsという新しいノードパッケージを作成しました。これにより、人気のあるCLIPS(C言語統合プロダクションシステム)ルールエンジンをノードアプリケーションに統合できます。
https://github.com/atrniv/node-clips
CLIPSは生産的な開発と配信のエキスパートシステムツールであり、ルールやオブジェクトベースのエキスパートシステムを構築するための完全な環境を提供します。 1985年に作成されたCLIPSは現在、政府、産業界、学界で広く使用されています。
詳細については、公式のCLIPSドキュメントをご覧ください。 http://clipsrules.sourceforge.net/
私はゲームの後半にいますが、人々がまだ探しているなら、 durable_rules は私が使用してきた素晴らしいプロジェクトです。
durable_rulesは状態をredisに保存し、 Jesus Ruizが作成したReteアルゴリズム を使用して分散方法で推論を行います。プロジェクトは積極的にサポートされており、そのようなことに夢中になっている場合はTypeScriptもサポートされます。
私は明らかにここでゲームに非常に遅れていますが、 node-rules を使用して成功しています。
私はこれを開発します one 。あなたがあなたのニーズに興味を持って欲しいと願っています。
説明から:
Business Rules Engineは、リスク評価、テキスト分析、データマイニング、および意思決定用に設計されたその他のソフトウェアなど、規則が定期的に変化する環境をサポートするために開発された一種のソフトウェアです。