欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種工作流隊列服務(wù)器、工作流調(diào)度系統(tǒng)及其方法

文檔序號:7855198閱讀:347來源:國知局
專利名稱:一種工作流隊列服務(wù)器、工作流調(diào)度系統(tǒng)及其方法
技術(shù)領(lǐng)域
本發(fā)明涉及工作流任務(wù)調(diào)度技術(shù)領(lǐng)域,尤其涉及一種工作流隊列服務(wù)器、工作流調(diào)度系統(tǒng)及其方法。
背景技術(shù)
任務(wù)調(diào)度是高并發(fā)工作流系統(tǒng)的關(guān)鍵技術(shù),直接影響到大型流程管理系統(tǒng)的可用性。傳統(tǒng)的工作流任務(wù)隊列只對任務(wù)隊列進(jìn)行一次散列,一般形成一個不同機(jī)構(gòu)和不同任務(wù)類型混雜的任務(wù)列表。這種任務(wù)調(diào)度方法存在下述不足I)客戶端連接到隊列服務(wù)后,在請求任務(wù)時,隊列服務(wù)還要在一個二維數(shù)據(jù)表里 查詢?nèi)蝿?wù)并排序,然后再把計算結(jié)果返回給客戶端,計算開銷較大,響應(yīng)時間比較長,客戶體驗不好;2)隊列服務(wù)也是按照機(jī)構(gòu)和任務(wù)類型兩個維度從數(shù)據(jù)庫查詢?nèi)蝿?wù),對數(shù)據(jù)庫的索引開銷也較大,查詢復(fù)雜度也高,在大并發(fā)下訪問下,數(shù)據(jù)庫系統(tǒng)壓力過大。

發(fā)明內(nèi)容
本發(fā)明的目的在于提出一種工作流隊列服務(wù)器、一種工作流調(diào)度系統(tǒng)和一種工作流調(diào)度方法,能夠減輕數(shù)據(jù)庫的訪問壓力,降低數(shù)據(jù)庫索引空間占用,提高客戶端的響應(yīng)速度。為達(dá)此目的,本發(fā)明包括一種工作流隊列服務(wù)器,用于存儲一個或一個以上機(jī)構(gòu)的任務(wù),定期從數(shù)據(jù)庫中裝載符合所述機(jī)構(gòu)條件的任務(wù),當(dāng)所述工作流隊列服務(wù)器收到客戶端請求時將存儲的符合請求條件的任務(wù)返回給所述客戶端。進(jìn)一步地,所述工作流隊列服務(wù)器將存儲的任務(wù)按機(jī)構(gòu)和任務(wù)類型散列在不同任務(wù)隊列中,所述工作流隊列服務(wù)器對各所述任務(wù)隊列中的任務(wù)按照任務(wù)優(yōu)先級從高到低排序,所述工作流隊列服務(wù)器所散列的隊列的個數(shù)等于該工作流隊列服務(wù)器所屬機(jī)構(gòu)數(shù)與任務(wù)類型數(shù)的乘積。本發(fā)明還包括一種工作流調(diào)度系統(tǒng),包括工作流隊列服務(wù)器布告板和至少一個如上所述的工作流隊列服務(wù)器,每個機(jī)構(gòu)最多對應(yīng)一個所述工作流隊列服務(wù)器,所述工作流隊列服務(wù)器布告板用于發(fā)布系統(tǒng)中工作流隊列服務(wù)器的信息,所述信息包括工作流隊列服務(wù)器的地址信息和所述工作流隊列服務(wù)器對應(yīng)的機(jī)構(gòu)信息,使得所述系統(tǒng)能將作業(yè)任務(wù)按照任務(wù)所屬機(jī)構(gòu)散列到多個所述工作流隊列服務(wù)器。進(jìn)一步地,各客戶端應(yīng)用系統(tǒng)均具有所屬機(jī)構(gòu),均通過所述工作流隊列服務(wù)器布告板查找所屬機(jī)構(gòu)對應(yīng)的工作流隊列服務(wù)器信息,然后通過查找到的工作流隊列服務(wù)器調(diào)用任務(wù)。進(jìn)一步地,各所述客戶端均維護(hù)一個到該客戶端的所述所屬機(jī)構(gòu)的工作流隊列服務(wù)器的連接池,用于減少連接開銷。
進(jìn)一步地,所述工作流隊列服務(wù)器收到客戶端請求后根據(jù)請求的機(jī)構(gòu)和任務(wù)類型將所述機(jī)構(gòu)和類型的任務(wù)隊列中的最優(yōu)先任務(wù)返回所述客戶端。本發(fā)明還包括一種工作流調(diào)度方法,包括SI、啟動各個工作流隊列服務(wù)器;S2、各工作流隊列服務(wù)器定期從數(shù)據(jù)庫中裝載對應(yīng)機(jī)構(gòu)的任務(wù)到本地;S3、客戶端連接一個工作流隊列服務(wù)器;S4、所述客戶端請求調(diào)用所述工作流隊列服務(wù)器中的任務(wù);S5、所述工作流隊列服務(wù)器將符合請求條件的最優(yōu)先的任務(wù)返回給所述客戶端。進(jìn)一步地,所述各工作流隊列服務(wù)器均為本發(fā)明所述的工作流隊列服務(wù)器。 進(jìn)一步地,所述步驟S5包括,所述工作流隊列服務(wù)器收到所述客戶端請求后根據(jù)請求的機(jī)構(gòu)和任務(wù)類型將所述機(jī)構(gòu)和所述類型的任務(wù)隊列中的最優(yōu)先任務(wù)返回所述客戶端。進(jìn)一步地,所述步驟S3具體為,客戶端通過查詢工作流隊列服務(wù)器布告板查找所述工作流隊列服務(wù)器地址,通過所述地址連接所述工作流隊列服務(wù)器,其中所述工作流隊列服務(wù)器布告板是存儲在數(shù)據(jù)庫中或每個工作流隊列服務(wù)器中的數(shù)據(jù)表或文件,用于記錄各個工作流隊列服務(wù)器的信息,所述信息包括隊列服務(wù)器的地址信息。本發(fā)明有益技術(shù)效果是把工作流中大部分任務(wù)檢索的計算從數(shù)據(jù)庫轉(zhuǎn)移到一個或多個服務(wù)器中,減輕了數(shù)據(jù)庫的訪問壓力,降低了數(shù)據(jù)庫索引空間占用,而且提高了客戶端的響應(yīng)速度。


圖I為本發(fā)明的實施例一的工作流調(diào)度系統(tǒng)結(jié)構(gòu)示意圖;圖2為本發(fā)明的實施例一的機(jī)構(gòu)業(yè)務(wù)獨立情況下的工作流調(diào)度系統(tǒng)結(jié)構(gòu)示意圖;圖3為本發(fā)明的實施例二的工作流調(diào)度方法流程圖。
具體實施例方式為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖對本發(fā)明實施方式作進(jìn)一步地詳細(xì)描述。實施例一本發(fā)明實施例提供了一種工作流調(diào)度系統(tǒng),系統(tǒng)包括至少一個工作流隊列服務(wù)器,每個所述工作流隊列服務(wù)器對應(yīng)一個或一個以上機(jī)構(gòu),存儲對應(yīng)的一個或一個以上機(jī)構(gòu)的任務(wù)。所述機(jī)構(gòu)指政府或企業(yè)的職能部門,如A跨國企業(yè)的中國辦事處,B專利代理所的電學(xué)部等。如任務(wù)量比較少、任務(wù)類型比較單一的幾個機(jī)構(gòu)可以共用一個工作流隊列服務(wù)器,也可以為每個工作流隊列服務(wù)器僅對應(yīng)一個機(jī)構(gòu),實現(xiàn)不同機(jī)構(gòu)擁有各自獨立的專用工作流隊列服務(wù)器,各工作流隊列服務(wù)器負(fù)責(zé)對應(yīng)機(jī)構(gòu)的所述機(jī)構(gòu)的任務(wù)的存儲、管理和分配,圖2即為機(jī)構(gòu)業(yè)務(wù)獨立情況下的工作流調(diào)度系統(tǒng)結(jié)構(gòu)示意圖,后面將詳述其實施方式,在此不作贅述。但是,為了防止任務(wù)的重復(fù)存儲和分配,必須保證每個機(jī)構(gòu)最多對應(yīng)一個所述工作流隊列服務(wù)器,不能出現(xiàn)一個機(jī)構(gòu)對應(yīng)兩個或多個工作流隊列服務(wù)器的情況。每個所述工作流隊列服務(wù)器周期性地從數(shù)據(jù)庫中裝載符合機(jī)構(gòu)條件的任務(wù)到本地,裝載方式可為數(shù)據(jù)庫中所有任務(wù)可包含布爾型的裝載標(biāo)記字段用于標(biāo)識該任務(wù)是否被隊列服務(wù)器裝載,當(dāng)有工作流隊列服務(wù)器提出任務(wù)裝載請求時,通過它所對應(yīng)的機(jī)構(gòu)對數(shù)據(jù)庫中所有未裝載標(biāo)記的任務(wù)進(jìn)行一維檢索,將所有符合條件的任務(wù)下載到所述工作流隊列服務(wù)器本地,同時將這些任務(wù)的裝載標(biāo)記修改為已裝載狀態(tài),所述任務(wù)在本地的存儲方式可為內(nèi)存、硬盤等,也可以存儲在本地數(shù)據(jù)庫中。所述工作流隊列服務(wù)器周期性地從數(shù)據(jù)庫中裝載任務(wù)的過程可為同步也可為異步,同步為所有的工作流隊列服務(wù)器定期以相同間隔同時向數(shù)據(jù)庫發(fā)起任務(wù)裝載請求,該方法對數(shù)據(jù)庫的吞吐能力要求較高,僅適用于小中型企業(yè)、任務(wù)不是太多或機(jī)構(gòu)較少的大型企業(yè);異步為各工作流隊列服務(wù)器依據(jù)各自任務(wù)量多少規(guī)定一個提取任務(wù)的時間間隔,周期性地向數(shù)據(jù)庫中提取該機(jī)構(gòu)的新任務(wù),或者預(yù)設(shè)好提取任務(wù)的條件,當(dāng)滿足該條件時自動向數(shù)據(jù)庫中發(fā)起任務(wù)提取請求,例如,滿足本地任務(wù)剩余100時向數(shù)據(jù)庫提取任務(wù)或滿足存在一種類型的任務(wù)數(shù)量小于20時向數(shù)據(jù)庫提取任務(wù)。進(jìn)一步地,為了在響應(yīng)客戶端的任務(wù)請求時更快地檢索出符合請求條件的任務(wù),提高檢索速度,可讓每個工作流隊列服務(wù)器將存儲的任務(wù)分組,按機(jī)構(gòu)和任務(wù)類型分組,將本地存儲的所有任務(wù)按機(jī)構(gòu)和任務(wù)類型散列在不同任務(wù)列表中。每個工作流隊列服務(wù)器包含若干個任務(wù)列表,各工作流隊列服務(wù)器包含的任務(wù)列表個數(shù)為所述工作流隊列服務(wù)器所屬機(jī)構(gòu)數(shù)目與任務(wù)類型數(shù)目的乘積。所述任務(wù)列表可為棧、隊列、數(shù)組、類等多種類型,由于隊列且有先進(jìn)先出的特性,所述任務(wù)列表為隊列可以保證相同優(yōu)先級的任務(wù)先裝載先分配,這樣更具合理性,本實施例采用隊列類型。更進(jìn)一步地,各工作流隊列服務(wù)器對所述任務(wù)列表中的任務(wù)按照任務(wù)優(yōu)先級從高到底進(jìn)行排序。進(jìn)一步地,所述工作流調(diào)度系統(tǒng)還可包括工作流隊列服務(wù)器布告板記錄系統(tǒng)中工作流隊列服務(wù)器的對應(yīng)機(jī)構(gòu)、地址等信息,用于客戶端請求任務(wù)前通過所述任務(wù)的機(jī)構(gòu)屬性從該工作流隊列服務(wù)器布告板查找所述機(jī)構(gòu)對應(yīng)的工作流隊列服務(wù)器地址,通過遠(yuǎn)程服務(wù)調(diào)用協(xié)議調(diào)用所述工作流隊列服務(wù)器進(jìn)行任務(wù)請求。所述遠(yuǎn)程服務(wù)調(diào)用協(xié)議可為RMI,Hessian, Burlap, Httpinvoker, web service等,其中,RMI是java語言本身提供的遠(yuǎn)程通訊協(xié)議,穩(wěn)定高效,是EJB的基礎(chǔ),但它只能用于JAVA程序之間的通訊;Hessian和Burlap是caucho公司提供的開源協(xié)議,基于HTTP傳輸,服務(wù)端不用開防火墻端口,協(xié)議的規(guī)范公開,可以用于任意語言;Httpinvoker是SpringFramework提供的遠(yuǎn)程通訊協(xié)議,只能用于JAVA程序間的通訊,且服務(wù)端和客戶端必須使用SpringFramework; Web service是連接異構(gòu)系統(tǒng)或異構(gòu)語言的首選協(xié)議,它使用SOAP形式通訊,可以用于任何語言,目前的許多開發(fā)工具對其的支持也很好。幾種協(xié)議的通訊效率依次為RMI>Httpinvoker>=Hessian>>Burlap>>web service。本實施例采用RMI協(xié)議,每個工作流隊列服務(wù)器對應(yīng)一個RMI容器,占用一個端口,每個工作流隊列服務(wù)器包含客戶端訪問接口和數(shù)據(jù)庫服務(wù)器訪問接口兩組線程。因為機(jī)構(gòu)間的業(yè)務(wù)是天然分列的,固定性好,超大型企業(yè)不同機(jī)構(gòu)分散在不同地區(qū),業(yè)務(wù)基本獨立,系統(tǒng)可設(shè)計為每個工作流隊列服務(wù)器僅對應(yīng)一個機(jī)構(gòu),實現(xiàn)不同機(jī)構(gòu)擁有各自獨立的專用工作流隊列服務(wù)器。圖2為本發(fā)明的實施例一的機(jī)構(gòu)業(yè)務(wù)獨立情況下的工作流調(diào)度系統(tǒng)結(jié)構(gòu)示意圖,各所述客戶端均通過所述客戶端的所述所屬機(jī)構(gòu)對應(yīng)的工作流隊列服務(wù)器調(diào)用任務(wù)。進(jìn)一步地,各所述客戶端均維護(hù)一個到該客戶端的所述所屬機(jī)構(gòu)的工作流隊列服務(wù)器的連接池,用于減少連接開銷。當(dāng)進(jìn)行任務(wù)搶選分配時,即機(jī)構(gòu)內(nèi)部任一客戶端需要通過提交任務(wù)類型申請機(jī)構(gòu)內(nèi)該類型的優(yōu)先級最高任務(wù)時,所述機(jī)構(gòu)對應(yīng)的工作流隊列服務(wù)器收到客戶端請求后根據(jù)請求類型將所述類型的任務(wù)列表中的最優(yōu)先任務(wù)返回所述客戶端。實施例二圖3為本發(fā)明的實施例二的工作流調(diào)度方法流程圖,參見圖3,本發(fā)明提供了一種工作流調(diào)度方法,包括S301、啟動各個工作流隊列服務(wù)器; 所述工作流隊列服務(wù)器詳見實施例一,在此不作贅述。S302、各工作流隊列服務(wù)器定期從數(shù)據(jù)庫中裝載對應(yīng)機(jī)構(gòu)的任務(wù)到本地;所述裝載方式的具體實現(xiàn)方式詳見實施例一,在此不作贅述。S303、客戶端連接一個工作流隊列服務(wù)器;所述客戶端通過所述連接池連接所述工作流對列服務(wù)器或者通過查詢工作流隊列服務(wù)器布告板查找所述工作流隊列服務(wù)器地址,通過所述地址連接所述工作流隊列服務(wù)器,具體方法參見實施例一,在此不作贅述。S304、所述客戶端請求調(diào)用所述工作流隊列服務(wù)器中的任務(wù);具體方法參見實施例一,在此不作贅述。S305、所述工作流隊列服務(wù)器將符合請求條件的任務(wù)返回給所述客戶端。該步驟還包括如下情形所述工作流隊列服務(wù)器收到所述客戶端請求后根據(jù)所述客戶端請求中的機(jī)構(gòu)和任務(wù)類型將所述機(jī)構(gòu)和類型的任務(wù)列表中的最優(yōu)先任務(wù)返回所述
客戶端。本發(fā)明提供的工作流調(diào)度系統(tǒng)和工作流調(diào)度方法解決了超大型企業(yè)的任務(wù)流調(diào)度中數(shù)據(jù)庫的計算開銷和索引開銷比較大的問題,把工作流中任務(wù)檢索的計算從數(shù)據(jù)庫轉(zhuǎn)移到一個或多個服務(wù)器中,減輕了數(shù)據(jù)庫的訪問壓力,降低了數(shù)據(jù)庫索引空間占用,而且提高了客戶端的響應(yīng)速度。以上實施例提供的技術(shù)方案中的全部或部分內(nèi)容可以通過軟件編程實現(xiàn),其軟件程序存儲在可讀取的存儲介質(zhì)中,存儲介質(zhì)例如計算機(jī)中的硬盤、光盤或軟盤。上述僅為本發(fā)明的較佳實施例及所運用技術(shù)原理,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍內(nèi)。
權(quán)利要求
1.一種工作流隊列服務(wù)器,其特征在于,用于存儲一個或一個以上機(jī)構(gòu)的任務(wù),定期從數(shù)據(jù)庫中裝載符合所述機(jī)構(gòu)條件的任務(wù),當(dāng)所述工作流隊列服務(wù)器收到客戶端請求時將存儲的符合請求條件的任務(wù)返回給所述客戶端。
2.如權(quán)利要求I所述的工作流隊列服務(wù)器,其特征在于,所述工作流隊列服務(wù)器將存儲的任務(wù)按機(jī)構(gòu)和任務(wù)類型散列在不同任務(wù)隊列中,所述工作流隊列服務(wù)器對各所述任務(wù)隊列中的任務(wù)按照任務(wù)優(yōu)先級從高到低排序。
3.一種工作流調(diào)度系統(tǒng),其特征在于,包括工作流隊列服務(wù)器布告板和至少一個如權(quán)利要求I或2所述的工作流隊列服務(wù)器,每個機(jī)構(gòu)最多對應(yīng)一個所述工作流隊列服務(wù)器,所述工作流隊列服務(wù)器布告板用于發(fā)布系統(tǒng)中工作流隊列服務(wù)器的信息,所述信息包括工作流隊列服務(wù)器的地址信息和所述工作流隊列服務(wù)器對應(yīng)的機(jī)構(gòu)信息,使得所述系統(tǒng)能將作業(yè)任務(wù)按照任務(wù)所屬機(jī)構(gòu)散列到多個所述工作流隊列服務(wù)器。
4.如權(quán)利要求3所述的工作流調(diào)度系統(tǒng),其特征在于,各客戶端應(yīng)用系統(tǒng)均具有所屬機(jī)構(gòu),均通過所述工作流隊列服務(wù)器布告板查找所屬機(jī)構(gòu)對應(yīng)的工作流隊列服務(wù)器信息,然后通過查找到的工作流隊列服務(wù)器調(diào)用任務(wù)。
5.如權(quán)利要求4所述的工作流調(diào)度系統(tǒng),其特征在于,各所述客戶端均維護(hù)一個到該客戶端的所述所屬機(jī)構(gòu)的工作流隊列服務(wù)器的連接池,用于減少連接開銷。
6.如權(quán)利要求5所述的工作流調(diào)度系統(tǒng),其特征在于,所述工作流隊列服務(wù)器收到客戶端請求后根據(jù)請求的機(jī)構(gòu)和任務(wù)類型將所述機(jī)構(gòu)和類型的任務(wù)隊列中的最優(yōu)先任務(wù)返回所述客戶端。
7.一種工作流調(diào)度方法,其特征在于,包括 51、啟動各個工作流隊列服務(wù)器; 52、各工作流隊列服務(wù)器定期從數(shù)據(jù)庫中裝載對應(yīng)機(jī)構(gòu)的任務(wù)到本地; 53、客戶端連接一個工作流隊列服務(wù)器; 54、所述客戶端請求調(diào)用所述工作流隊列服務(wù)器中的任務(wù); 55、所述工作流隊列服務(wù)器將符合請求條件的最優(yōu)先的任務(wù)返回給所述客戶端。
8.如權(quán)利要求7所述的工作流調(diào)度方法,其特征在于,所述各工作流隊列服務(wù)器均為如權(quán)利要求I或2所述的工作流隊列服務(wù)器。
9.如權(quán)利要求7所述的工作流調(diào)度方法,其特征在于,所述步驟S5包括,所述工作流隊列服務(wù)器收到所述客戶端請求后根據(jù)請求的機(jī)構(gòu)和任務(wù)類型將所述機(jī)構(gòu)和所述類型的任務(wù)隊列中的最優(yōu)先任務(wù)返回所述客戶端。
10.如權(quán)利要求7所述的工作流調(diào)度方法,其特征在于,所述步驟S3具體為,客戶端通過查詢工作流隊列服務(wù)器布告板查找所述工作流隊列服務(wù)器地址,通過所述地址連接所述工作流隊列服務(wù)器,其中所述工作流隊列服務(wù)器布告板是存儲在數(shù)據(jù)庫中或每個工作流隊列服務(wù)器中的數(shù)據(jù)表或文件,用于記錄各個工作流隊列服務(wù)器的信息,所述信息包括隊列服務(wù)器的地址信息。
全文摘要
本發(fā)明公開了一種工作流隊列服務(wù)器、一種工作流調(diào)度系統(tǒng)和一種工作流調(diào)度方法,所述工作流隊列服務(wù)器用于存儲一個或一個以上機(jī)構(gòu)的任務(wù),定期從數(shù)據(jù)庫中裝載符合所述機(jī)構(gòu)條件的任務(wù)到本地,當(dāng)所述工作流隊列服務(wù)器收到客戶端請求時將存儲的符合請求條件的任務(wù)返回給所述客戶端;所述工作流調(diào)度系統(tǒng)包括工作流隊列服務(wù)器布告板和至少一個所述的工作流隊列服務(wù)器,以把作業(yè)任務(wù)按照機(jī)構(gòu)的不同散列到多個工作流隊列服務(wù)器,每個機(jī)構(gòu)最多對應(yīng)一個所述工作流隊列服務(wù)器。本發(fā)明把工作流中大部分任務(wù)檢索的計算從數(shù)據(jù)庫轉(zhuǎn)移到一個或多個服務(wù)器中,減輕了數(shù)據(jù)庫的訪問壓力,降低了數(shù)據(jù)庫索引空間占用,而且提高了客戶端的響應(yīng)速度。
文檔編號H04L29/08GK102761617SQ20121022820
公開日2012年10月31日 申請日期2012年7月2日 優(yōu)先權(quán)日2012年7月2日
發(fā)明者孫剛, 譚宜勇, 高昊江 申請人:北京京北方信息技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
满洲里市| 张家界市| 扬州市| 老河口市| 贺州市| 巍山| 新乡市| 东山县| 邵东县| 漳州市| 宁城县| 巴里| 嵊州市| 洪洞县| 临潭县| 攀枝花市| 安平县| 札达县| 方正县| 斗六市| 建德市| 泽库县| 赤城县| 固阳县| 台南县| 扶沟县| 广东省| 吴桥县| 丹巴县| 安溪县| 塘沽区| 临洮县| 宜川县| 兖州市| 鱼台县| 潮州市| 巴彦县| 铜川市| 隆回县| 彰化市| 甘孜县|