概述篇
規則引擎是一種嵌套在應用程序中的組件,它實現了將業務規則從應用程序代碼中分離出來。規則引擎使用特定的語法編寫業務規則,規則引擎可以接受數據輸入、解釋業務規則、並根據業務規則做出相應的決策。
通俗來說,規則引擎就是負責執行系統中規則的插件,亦可以作爲一個遠程系統供業務系統調用。
什麼是規則:所有的業務邏輯都可以看做是規則。
引入規則引擎後帶來的好處:
1 實現業務邏輯與業務規則的分離,實現業務規則的集中管理
2 可以動態修改業務規則,從而快速響應需求變更
3 使業務分析人員也可以參與編輯、維護系統的業務規則
4 使用規則引擎提供的規則編輯工具,使複雜的業務規則實現變得的簡單
其實:參數化就是一種讓客戶自己維護系統的業務規則的方法。
目前最好的商用規則管理系統BRMS是ILOG JRules,最普遍使用的開源規則引擎是Drools。
Ilog Jrules是完整的業務規則管理系統(BRMS),它提供了對整個企業業務規則進行建模、編寫、測試、部署和維護所必需的所有工具。
Ilog Jrules主要包括以下4個組件:
Rule Studio(RS) 基於Eclipse的開發環境,面向開發人員使用,用於規則的建模和編寫。
Rule Scenario Manager 規則測試工具。
Rule Team Server(RTS) 基於Web的管理環境,面向業務人員使用,用於規則發佈、管理、存儲。
Rule Execution Server(RES) 面向運維人員使用,用於規則執行、監控。