規(guī)則引擎實現(xiàn)了將業(yè)務決策從應用程序代碼中分離出來,并使用預定義的語義模塊編寫業(yè)務決策。
規(guī)則引擎具體執(zhí)行可以分為接受數(shù)據(jù)輸入,解釋業(yè)務規(guī)則,根據(jù)業(yè)務規(guī)則做出業(yè)務決策幾個過程,使用規(guī)則引擎可以把復雜、
冗余的業(yè)務規(guī)則同整個支撐系統(tǒng)分離開,做到架構的可復用移植。

 

規(guī)則引擎的選型應用

相對于業(yè)務系統(tǒng),規(guī)則引擎可以認為是一個獨立于業(yè)務系統(tǒng)的模塊,負責一些規(guī)則的計算等。
一般來說,規(guī)則引擎主要應用在下面的場景中:

  • 風控模型配置,風控是規(guī)則引擎

  • 用戶積分等配置,如日常操作引起積分變化等

  • 簡單的離線計算,各類數(shù)據(jù)量比較小的統(tǒng)計等

目前的規(guī)則引擎系統(tǒng)中,使用較多的開源規(guī)則引擎是Drools,另外還有商用的規(guī)則管理系統(tǒng)BRMS是ILOG JRules。

Drools

Drools是一個基于Java的開源規(guī)則引擎,可以將復雜多變的規(guī)則從硬編碼中解放出來,以規(guī)則腳本的形式存放在文件中,使得規(guī)則的變更不需要修正代碼重啟機器就可以立即在線上環(huán)境生效。

目前版本是5.0.1,Drools從5.0后分為四個模塊:

  • Drools Guvnor (BRMS/BPMS)

  • Drools Expert (rule engine)

  • Drools Flow (process/workflow)

  • Drools Fusion (cep/temporal reasoning)

drools代碼地址

drools應用文檔

Ilog JRules

Ilog Jrules是完整的業(yè)務規(guī)則管理系統(tǒng)(BRMS),它提供了對整個企業(yè)業(yè)務規(guī)則進行建模、編寫、測試、部署和維護所必需的所有工具。

Ilog Jrules主要包括以下4個組件:

  • Rule Studio(RS) 面向開發(fā)人員使用的開發(fā)環(huán)境,用于規(guī)則的建模和編寫

  • Rule Scenario Manager 規(guī)則測試工具

  • Rule Team Server(RTS) 基于Web的管理環(huán)境,面向業(yè)務人員使用,用于規(guī)則發(fā)布、管理、存儲

  • Rule Execution Server(RES) 面向運維人員使用,用于規(guī)則執(zhí)行、監(jiān)控

Ilog Jrules主頁

網(wǎng)友評論