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

 

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

相對(duì)于業(yè)務(wù)系統(tǒng),規(guī)則引擎可以認(rèn)為是一個(gè)獨(dú)立于業(yè)務(wù)系統(tǒng)的模塊,負(fù)責(zé)一些規(guī)則的計(jì)算等。
一般來(lái)說(shuō),規(guī)則引擎主要應(yīng)用在下面的場(chǎng)景中:

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

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

  • 簡(jiǎn)單的離線計(jì)算,各類(lèi)數(shù)據(jù)量比較小的統(tǒng)計(jì)等

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

Drools

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

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

  • Drools Guvnor (BRMS/BPMS)

  • Drools Expert (rule engine)

  • Drools Flow (process/workflow)

  • Drools Fusion (cep/temporal reasoning)

drools代碼地址

drools應(yīng)用文檔

Ilog JRules

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

Ilog Jrules主要包括以下4個(gè)組件:

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

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

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

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

Ilog Jrules主頁(yè)

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開(kāi)發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式