[發明專利]工作流的調度方法和裝置無效
| 申請號: | 201010517637.X | 申請日: | 2010-10-25 |
| 公開(公告)號: | CN102455934A | 公開(公告)日: | 2012-05-16 |
| 發明(設計)人: | 謝浩;侯存軍 | 申請(專利權)人: | 北大方正集團有限公司;北京北大方正電子有限公司 |
| 主分類號: | G06F9/46 | 分類號: | G06F9/46 |
| 代理公司: | 北京英賽嘉華知識產權代理有限責任公司 11204 | 代理人: | 王達佐 |
| 地址: | 100871 北京市*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 工作流 調度 方法 裝置 | ||
技術領域
本發明涉及數字排版領域,具體而言,涉及工作流的調度方法和裝置。
背景技術
工作流是一系列相互銜接、自動進行的業務活動或任務,是一種反映業務流程的計算機模型。
工作流模型由一系列任務活動組成,這些任務活動對應于業務流程中的各個業務活動,包含執行業務活動的程序或者工具。工作流模型規定了這些任務活動間的執行順序和執行條件,任務活動間的數據流,以及任務活動執行所需要的資源。
在實際應用中,同一個工作流模型通常可以生成多個工作流實例同時運行。這些工作流實例在多數情況下,需要共享業務數據和執行資源。在印前工作流系統中,多個工作流實例的并發運行,會涉及到內容文件(業務數據),處理器(執行資源),作業傳票(工作流模型)等資源的共享。為保證工作流運行結果的正確性和一致性,必須提供一種調度機制,用以控制所有工作流實例的并發運行。
相關技術以串行化執行為正確性評判標準,以及基于鎖或時間戳等調度機制實現并發控制,然而發明人發現,這種控制方法導致并發運行的效率較低。
發明內容
本發明旨在提供一種工作流的調度方法和裝置,以解決現有技術的并發運行效率較低的問題。
在本發明的實施例中,提供了一種工作流的調度方法,包括:為每個處理器分別創建一個任務隊列,每個任務隊列包括一個或多個分別具有不同優先級的子隊列;將工作流實例中的任務活動作為任務項插入到子隊列中;處理器從其對應的任務隊列中提取任務項,提取次序為:提取高優先級的子隊列;在提取的子隊列中,提取隊首的任務項。
在本發明的實施例中,提供了一種工作流的調度裝置,包括:創建模塊,用于為每個處理器分別創建一個任務隊列,每個任務隊列包括一個或多個分別具有不同優先級的子隊列;插入模塊,用于將工作流實例中的任務活動作為任務項插入到子隊列中;提取模塊,用于使處理器從其對應的任務隊列中提取任務項,提取次序為:提取高優先級的子隊列;在提取的子隊列中,提取隊首的任務項。
根據本發明實施例的工作流的調度方法和裝置因為采用樂觀并發控制的方案,所以克服了現有技術的工作流系統的并發效率較低的問題,提高了工作流系統的并發效率。
附圖說明
此處所說明的附圖用來提供對本發明的進一步理解,構成本申請的一部分,本發明的示意性實施例及其說明用于解釋本發明,并不構成對本發明的不當限定。在附圖中:
圖1示出了根據本發明一個實施例的工作流的調度方法的流程圖;
圖2示出了根據本發明一個優選實施例的印前工作流的調度方法的流程圖;
圖3示出了根據本發明一個優選實施例的印前工作流的任務隊列的示意圖;
圖4示出了根據本發明一個實施例的工作流的調度裝置的方框圖。
具體實施方式
下面將參考附圖并結合實施例,來詳細說明本發明。
圖1示出了根據本發明一個實施例的工作流的調度方法的流程圖,包括:
步驟S10,為每個處理器分別創建一個任務隊列,每個任務隊列包括一個或多個分別具有不同優先級的子隊列;
步驟S20,將工作流實例中的任務活動作為任務項插入到子隊列中;
步驟S30,處理器從其對應的任務隊列中提取任務項,提取次序為:提取高優先級的子隊列;在提取的子隊列中,提取隊首的任務項。
本調度方法采用樂觀并發控制的方案,在保證運行結果的正確性和一致性的前提下,放寬了對于并發正確性的判斷標準,通過采用多優先級任務隊列,可以靈活控制工作流實例運行的優先級。因此本調度方法可以有效控制工作流系統,克服了現有技術的工作流系統的并發效率較低的問題,提高了工作流系統的并發效率。
優選地,步驟S20包括:從工作流實例中提取任務活動;確定任務活動所對應的處理器;將任務活動作為任務項,插入到所對應的處理器所對應的任務隊列中指定優先級的子隊列的隊尾。
對于任務項的次序,本優選實施例采用先進先出的方法,從而可以保證任務活動的執行先后次序。值得注意的是,本發明并不限定于一個任務活動僅僅對應一個任務項,在進行工作流的分解時,一個任務活動通常對應于一個任務項,但有時候根據任務的性質以及占用執行資源的情況,可以分解為多個任務項。例如一個任務活動需要占用多個執行資源,則可以將該任務活動分解為對應于多個執行資源的任務項。執行資源是執行任務活動的程序,即處理器,每個處理器是一個單獨的進程。工作流引擎對其開放接口,用于提取分配給處理器的任務項。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北大方正集團有限公司;北京北大方正電子有限公司,未經北大方正集團有限公司;北京北大方正電子有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201010517637.X/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:電商平臺的服裝尺寸推薦方法
- 下一篇:一種OA流程處理方法、裝置及系統





