我正在制定大規則引擎項目。部署規則和xom規則執行後,服務器不響應或其響應時間變長,有時會凍結。(ILOG)IBM ODM 8.5如何提高Rule Execution Server性能?
我這樣設置WebSphere服務器上heapsizes:-XX:MaxPermSize參數:1024米-Xms2048m -Xmx2048m
有沒有對其進行配置,以更好地執行任何其他方式?因爲有時我必須重新啓動相關計算機才能安全地工作。
謝謝。
我正在制定大規則引擎項目。部署規則和xom規則執行後,服務器不響應或其響應時間變長,有時會凍結。(ILOG)IBM ODM 8.5如何提高Rule Execution Server性能?
我這樣設置WebSphere服務器上heapsizes:-XX:MaxPermSize參數:1024米-Xms2048m -Xmx2048m
有沒有對其進行配置,以更好地執行任何其他方式?因爲有時我必須重新啓動相關計算機才能安全地工作。
謝謝。
您是否正在使用Rete執行模式? 99%的時間你會使用Sequential,或者Fastpath,這取決於許多因素。除非你正在使用前向規則鏈,否則很少有人需要Rete。
不幸的是,默認情況下,當您將規則任務添加到Rule Designer中的規則流時,它會將執行模式設置爲Rete。
因此,要檢查您需要使用哪種執行模式,請參閱here以獲取您的決策服務中的清單。
退房對ODM性能改進建議BPM developerWorks文章Improve performance for IBM Operational Decision Manager, Part 1: Reduce rule execution time,也 Improve performance of rule execution and Rule Execution Server (RES) for ODM and JRules
此外,從ODM 8.7開始默認的執行模式是快速路徑,它應該爲大多數用例的最佳性能。您可以通過單擊窗口>首選項>規則設計器> Ruleflow來在Rule Designer中設置默認執行模式。
在我目前的項目中,我使用了RetePlus和Sequential算法。以下是我的印象:
RetePlus
=僅適用於決策表,一旦它優化關鍵路徑以評估規則。Sequential
=很適合簡單的計算和原子規則(動作規則)。您可以在單個業務流程中合併這兩種方法。我在我們的項目中做了納秒的表現,相信我。總體而言,這一切都取決於您的業務模塊和編排特性。也許你應該審查和改進你的規則(你是否在你的業務規則中訪問外部實體或存儲庫 - 它會減慢你的吞吐量)。
RAM內存也很重要,但還不夠。提高業務規則的質量,特別是在語言表達方面。也許他們太複雜或者多次計算太多。
希望這會有所幫助。