規(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)
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)控
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動(dòng)安全 [無(wú)線安全]玩轉(zhuǎn)無(wú)線電——不安全的藍(lán)牙鎖 2017-07-26
- 消息隊(duì)列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標(biāo)分割】 2017-07-26
- 詞向量-LRWE模型-更好地識(shí)別反義詞同義詞 2017-07-26
- 從棧不平衡問(wèn)題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實(shí)現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動(dòng)安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來(lái)看看(二) 2017-07-26