規則引擎框架設計實現方案


規則引擎框架集成了多款第三方開源規則引擎產品的、封裝了規則計算常用接口的,具有靈活擴展性、可靠性、高可用的規則引擎框架。配合前端規則定義的UI,可以靈活實現各種復雜邏輯的規則計算。

  • 擴展性
    引擎產品可擴展,可集成多種第三方規則引擎產品,來使用各個引擎的不同特性,適應復雜的應用場景。目前已集成jexl和groovy。
    規則腳本適配器可擴展,由於第三方規則引擎的腳本語言不一致,需要擴展不用引擎所需的規則腳本適配器。規則腳本在前端頁面一次定義,會被存儲成結構化的腳本(json格式,基於二叉樹),再根據當前使用的引擎不同,引擎調度器會調用相應的規則腳本適配器,將結構化規則腳本轉化為具體第三方引擎可執行的腳本語言。
    數據適配器可擴展,同規則腳本適配器,不同引擎接收數據的格式和方式不一致,需要自己擴展。
  • 高可用性
    框架內封裝了同步和異步引擎接口;
    支持單個和批量任務的執行;
    異步調用支持回調方式,並由內置線程池來多線程並發執行;
    內部規則執行器對同一腳本會自動緩存,不會重復創建消耗資源和性能,提高執行效率。
  • 可靠性
    規則引擎框架設計依據開源J2EE框架成熟的設計模式,采用典型的控制器+適配器模式來驅動,內置可調參數線程池,內置緩存,支持同步異步和批量執行。框架各模塊職責分明,具有可追溯、可靈活調整的特性。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM