規則引擎用于管理和執行業務規則。它提供了一個中央化的機制來定義、管理和執行業務規則,以便根據特定條件自動化決策和行為。規則引擎的核心概念是規則。規則由條件和動作組成。條件定義了規則适用的特定情況或規則觸發的條件,而動作定義了規則滿足時要執行的操作或行為。
jvs-rules的核心特點:
- 資料-變量-規則-決策的 四級構架,精簡高效
- 熱加載模式,所見即所得,所配即所用
- 支援函數式(資料映射)、流程式資料加工(多資料+算子加工),滿足一切所需的變量處理
- 便捷的界面化調試,便捷的配置操作,極簡配置互動門檻
功能清單如下:
功能點 | 描述 | 備注 |
多資料源管理 | 支援多種資料庫、API、低代碼等多種資料源的接入管理 | 更新 |
資料庫接入配置 | 提供資料庫接入的界面化配置 | 更新 |
API接入管理 | 提供api 接入的界面化配置 | 新增 |
API jar包管理 | api接入時,對特定接口提供jar包方式 進行定制擴充 | 新增 |
業務變量 | 變量是用于決策過程中的可變資料的承載,用于決策過程中對資料的引用、判斷等場景,表達一個類型的變動資料 | |
變量管理 | 提供可視化的界面對變量進管理,支援變量的增删改查 | |
變量類型 | 系統提供基礎變量與複合變量的類型支援 | 更新 |
基礎變量加工 | 通過可視化界面+函數式加工的方式,實作将源資料映射為單一 目标資料,支援嵌套加工 | |
複合變量加工 | 通過可視化界面+流程化算子編排處理的方式,實作将源資料映射為 目标資料,可以是一條資料,也支援多行資料 | 新增 |
變量作用範圍 | 系統提供全局變量與局部變量兩種模式,全局變量是每個決策都可以選擇的變量,局部變量是進在目前決策流中可是使用的變量 | |
變量選擇器 | 全局一體化的變量選擇器,用于對變量的選擇與引用 | |
變量指派 | 在決策流執行的過程中,提供變量指派的處理節點 | |
決策管理 | 支援決策流的增删改查,并提供決策流基本資訊、配置資訊的預覽與設計 | |
入參配置 | 支援決策流程的可視化入參配置(json模式) | 優化 |
執行日志 | 決策流執行日志,并且支援圖形化的方式對執行過程進行回顯 | 優化 |
調用說明 | 對決策流提供調用的界面化的操作說明 | |
決策流設計器 | 可視化的決策設計配置器通過拖拽化 的流程式編輯器,實作決策的可視化配置 | |
決策流狀态管理 | 系統提供決策流的狀态管理 | |
決策設計畫布 | 支援拖拽、支援動态建立的方式,采用流成畫布的模式對多個業務節點進行編排,形成決策流 | |
節點配置 | 提供節點的配置面闆,實作各個節點的具體業務功能 | |
執行模式 | 支援漏鬥型與覆寫型的決策執行,漏鬥型式一旦遇到“退出”即可完成決策執行,覆寫性會将該通路一直執行到結束節點 才完成決策的執行 | |
判斷節點 | 用于決策過程中的不同路由的選擇,通過變量引入,對變量的結果進行對比選擇執行的路徑 | |
規則節點 | 用于決策過程中的規則判斷,通過對變量的拼裝,組成規則表達式進行業務邏輯判斷 | |
計算節點 | 用于對變量的最終結果計算 | |
評分卡節點 | 通過引用變量,在變量基礎上結合集合映射、線性、集合等方式進行數字轉換 | |
指派節點 | 使用者對變量進行加工取值 | 新增 |
結束節點 | 對規則決策輸出決策結果 | |
定義輸出 | 通過界面化的配置,提供輸出結果的定義 | 新增 |
服務開放 | 将設定決策的調用方式,可配置秘鑰、IP白名單等設定 | |
1、新增資料源管理,接入jvs-datasource,支援資料庫、API、低代碼模型、離線檔案等多種方式的資料接入
同時增加資料庫支援的類型。
2、增加變量類型
複合變量是對于多資料加工處理。
3、複合變量加工
自定義入參配置
自定義結果輸出
線上Demo:http://rules.bctools.cn
開源位址:https://gitee.com/software-minister/jvs