規則引擎描述 轉

使用規則引擎可以通過降低實現複雜業務邏輯的組件的複雜性,降低應用程序的維護和可擴展性成本。
現在市面上比較流行幾個規則引擎又Drools、easy rule、QlExpress等。規則引擎的思想就是Condition->Action,一個規則定義多個condition,每個condition都對應一個action,多個規則操作公共的上下文context。
現在以電商優惠系統爲例,展開說明規則引擎在其中的應用。
電商優惠類型分爲以下幾個:
1.滿減促銷
2.單品促銷
3.套裝促銷
4.多買優惠
5.贈品促銷
6.定金促銷
7.優惠券促銷

每一個優惠類型都對應一種規則
以滿減促銷爲例

rule "滿減促銷"
when 訂單金額 > 600
then 優惠金額=50;
when 訂單金額 > 200
then 優惠金額=10;
end

規則與規則之間如何執行,這個涉及到規則屬性的定義,用於修改和增強標準的規則行爲。
優先級(salience):可以設置規則執行順序,優先級高的優先執行
同步分組(agenda-group): 同一個分組的規則要麼都執行要麼都不執行
互斥分組(activation-group):同一個分組只有一條被執行,其他不執行



作者:M問道
鏈接:https://www.jianshu.com/p/3a4e83fdc6c7
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯繫作者獲得授權並註明出處。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章