Ответ 1
Там также nools, попробуйте.
Мне нужен легкий механизм правил. Сейчас у нас около 50 правил, но правила часто меняются.
Мы могли бы использовать Drools, но я полагаю, что это будет излишним. Есть ли более легкие реализации F/OSS?
Я знаю другой подобный вопрос, но ему 2 года, и у меня нет хорошего ответа. (и у меня недостаточно комментариев, чтобы прокомментировать этот вопрос)
Там также nools, попробуйте.
Я создал новый пакет node с именем node -clips, который позволяет интегрировать популярный механизм правил CLIPS (C Language Integrated Production System) в ваши приложения node.
https://github.com/atrniv/node-clips
CLIPS - это эффективный инструмент экспертной системы разработки и доставки, который обеспечивает полную среду для построения экспертных систем на основе правил и/или объектов. CLIPS, созданный в 1985 году, широко используется на всей территории правительства, промышленности и научных кругов.
Оформить официальную документацию CLIPS для получения дополнительной информации: http://clipsrules.sourceforge.net/
Я, очевидно, очень опаздываю к игре здесь, но я использовал node-rules с некоторым успехом.
Я разработал этот один. Надеюсь, вы нашли для вас интересными.
Из описания:
Бизнес-правила Engine - это своего рода программное обеспечение, разработанное для поддержки сред, в которых правила изменяются на регулярной основе, такие как оценка риска, анализ текста, интеллектуальный анализ данных и другие программные средства, предназначенные для принятия решений.
Я даже позже играю, но если люди все еще ищут, durable_rules - отличный проект, который я использовал.
durable_rules хранит состояние в redis и использует алгоритм Rete, который приготовил Иисус Руис, чтобы сделать вывод в распределенном виде. Проект активно поддерживается и даже поддерживает TypeScript, если вы занимаетесь этим.
Я тоже много позже, но, поскольку вы запрашиваете более легкий вариант, рассмотрите json-rules-engine. Я создал эту библиотеку, пытаясь создать простой, эффективный движок правил с простой устойчивостью правил (правила выражаются в json).
Это не означает как корпоративное решение, а менее амбициозное, чем nools. Многие компании имеют относительно базовые потребности, когда дело доходит до двигателей правил: логическая логика, операторы сравнения и (в идеале) читаемые пользователем правила.
В вашем случае использования только 50 правил, которые часто меняются (т.е. очень настраиваемых), на самом деле является целевой аудиторией для этой библиотеки.