對於oracle工作流的優化方式主要分兩大類,一類是流程設計上的優化,一類是資料庫效能的優化。
流程設計優化:
仔細選擇同步處理和非同步處理模式。
如果選擇同步處理模式,則在提交後系統立即進行工作流處理,在流程結束前,前端程式將一直處於等待狀 態。如果選擇非同步處理模式,程式提交工作流後控制權立即返回,工作流後台引擎會根據設定的頻率在後台進行處理。另外一種很少用到的處理模式是強制同步,系 統不將資料插入資料庫,直接用乙個sql,並且在乙個session中處理完畢。
儘量減少專案屬性(通常用於儲存全域性變數)。當工作流啟動時,系統會將這些屬性全部拷貝乙份,因而這會直接印影響工作流啟動速度。另外,這些屬性最好引用或儲存靜態變數,而不要去引用存放在資料庫中的值。
儘量減少訊息屬性。如果需要在訊息中存放不同的變數,也建議用最少的訊息屬性來實現,比如用document來動態生成訊息內容。
減少子流程,因為這需要消耗額外的dml操作和狀態資訊拷貝。
延遲活動。這是縮短響應時間最簡單有效的辦法之一,讓一些需要較多處理時間的活動在後台交給工作流引擎處理,主流程則繼續。
資料庫效能優化:
分割槽。這通常在安裝階段即可進行,當然,在後期也可以進行。操作步驟可參考之前的文章《給工作流大表分割槽
》。清理過期資料。清理過期的執行時資料和wf_control資料,減少資料表大小。
最簡單的優化方式,自然是在db進行優化,比如定期清理。但是從設計角度考慮,同步、非同步和延遲處理的配合使用,是更為得體的方式。各種方式,因時而異,因人而異
工作流建模 工作流概念
工作流建模 工作流概念 1 案例 工作流系統得基本目的是處理案例。每個案例都有乙個唯一標識,而且每個案例的生命週期都是有限的。案例生命週期都處於某個特定狀態,該狀態由三個元素組成 1 案例相關的屬性的值 案例屬性是一系列同案例相關的變數。能夠用來管理案例。正是通過這些變數,才有可能指出在特定條件下某...
工作流 一 什麼是工作流
什麼是工作流 工作流的英文全稱是 workflow,簡單理解則是業務流程的計算機化或自動化。它是是針對工作中具有固定程式的常規活動而提出的乙個概念,通過將工作活動分解定義良好的任務 角色 規則和過程來進行執行和監控,達到提高生產組織水平和工作效率的目的。工作流技術發端於70年代中期辦公自動化領域的研...
工作流 二 什麼是工作流引擎
什麼是工作流引擎 工作流引擎的英文全稱是 workflow engine,是指workflow作為應用系統的一部分,並為之提供對各應用系統有決定作用的根據角色 分工和條件的不同決定資訊傳遞路由 內容等級等核心解決方案。例如開發乙個系統最關鍵的部分不是系統的介面,也不是和資料庫之間的資訊交換,而是如何...