本發(fā)明專利技術(shù)提供了一種對服務(wù)請求調(diào)度的方法和系統(tǒng),所述方法包括:為系統(tǒng)中的數(shù)據(jù)表和數(shù)據(jù)表的相應(yīng)操作設(shè)置優(yōu)先級;得到相應(yīng)服務(wù)請求的優(yōu)先級;將服務(wù)請求按優(yōu)先級的高低在服務(wù)器內(nèi)存中的請求隊列中排隊;服務(wù)線程按順序調(diào)度執(zhí)行服務(wù)請求優(yōu)先級隊列中的服務(wù)請求;系統(tǒng)對服務(wù)請求優(yōu)先級隊列的排序進行刷新。本發(fā)明專利技術(shù)通過提出服務(wù)請求優(yōu)先級的獲取和對服務(wù)請求優(yōu)先級隊列中服務(wù)請求調(diào)度的技術(shù),保證了不同等級的數(shù)據(jù)表的服務(wù)請求獲取相應(yīng)的預(yù)置服務(wù)性能,并且通過緩存服務(wù)請求優(yōu)先級,使得系統(tǒng)性能幾乎不損失。從而實現(xiàn)了在不損失服務(wù)器整體性能的前提下,使不同等級數(shù)據(jù)表的服務(wù)性能相互隔離。
【技術(shù)實現(xiàn)步驟摘要】
本專利技術(shù)涉及計算機領(lǐng)域,尤其涉及一種對不同優(yōu)先級的服務(wù)請求進行優(yōu)先級調(diào)度,實現(xiàn)其服務(wù)性能隔離的方法和一種對服務(wù)請求調(diào)度系統(tǒng)。
技術(shù)介紹
當數(shù)據(jù)庫上存在多個不同等級的數(shù)據(jù)表時,應(yīng)用程序希望獲取相應(yīng)等級的服務(wù)性能。目前使不同等級數(shù)據(jù)表的服務(wù)性能的相互隔離的方法,會使系統(tǒng)性能受到損失。現(xiàn)有的數(shù)據(jù)庫系統(tǒng)或分布式系統(tǒng)中,SLA (Service-Level Agreement,服務(wù)等級協(xié)議)分等級服務(wù)方式多基于進程優(yōu)先級調(diào)度或連接優(yōu)先級調(diào)度,這些實現(xiàn)方法具有以下的缺點①基于系統(tǒng)外部排序方式對系統(tǒng)性能影響較大。②基于系統(tǒng)外部排序方式控制粒度較粗,無法做到表及方法級優(yōu)先級管理。對不同優(yōu)先級的服務(wù)請求進行優(yōu)先級調(diào)度,實現(xiàn)其服務(wù)性能隔離的問題還屬于分布式系統(tǒng)或數(shù)據(jù)庫領(lǐng)域正待解決的技術(shù)問題。
技術(shù)實現(xiàn)思路
本專利技術(shù)提出了一種對服務(wù)請求調(diào)度的方法和系統(tǒng),實現(xiàn)了在不損失服務(wù)器整體性能的前提下,使不同等級數(shù)據(jù)表的服務(wù)性能相互隔離,所述技術(shù)方案如下一種系統(tǒng)對服務(wù)請求調(diào)度的方法,包括為系統(tǒng)中的數(shù)據(jù)表和所述數(shù)據(jù)表的相應(yīng)操作設(shè)置優(yōu)先級;根據(jù)服務(wù)請求所調(diào)用的數(shù)據(jù)表的優(yōu)先級和對數(shù)據(jù)表操作的優(yōu)先級,得到相應(yīng)服務(wù)請求的優(yōu)先級;系統(tǒng)中的服務(wù)器將服務(wù)請求按優(yōu)先級的高低在所述服務(wù)器的內(nèi)存中排成服務(wù)請求優(yōu)先級隊列,優(yōu)先級高的服務(wù)請求排在所述隊列前面;服務(wù)線程按從前到后的順序,調(diào)度執(zhí)行服務(wù)請求優(yōu)先級隊列中的服務(wù)請求;每隔一定時間,系統(tǒng)對服務(wù)請求優(yōu)先級隊列的排序進行刷新,在服務(wù)請求優(yōu)先級隊列中添加新的服務(wù)請求,并且,每刷新一次,將刷新前添加在隊列中而未被執(zhí)行的服務(wù)請求的優(yōu)先級提高一級。進一步的,將系統(tǒng)中所述數(shù)據(jù)表的優(yōu)先級和所述數(shù)據(jù)表相應(yīng)操作的優(yōu)先級存儲在所述數(shù)據(jù)表的描述符中,并允許對所述數(shù)據(jù)表的優(yōu)先級和所述數(shù)據(jù)表相應(yīng)操作的優(yōu)先級動態(tài)修改。進一步的,所述數(shù)據(jù)表的描述符是所述數(shù)據(jù)表的定義,存儲在元數(shù)據(jù)表中。進一步的,所述對數(shù)據(jù)表的操作包括寫入、讀取、刪除和更新。進一步的,所述服務(wù)請求的優(yōu)先級等于所述服務(wù)請求所調(diào)用的數(shù)據(jù)表的優(yōu)先級和所述數(shù)據(jù)表相應(yīng)操作的優(yōu)先級之和。進一步的,系統(tǒng)中的服務(wù)器將服務(wù)請求按優(yōu)先級的高低在所述服務(wù)器的內(nèi)存中排成服務(wù)請求優(yōu)先級隊列,對于優(yōu)先級相同的服務(wù)請求,按照添加服務(wù)請求的時間順序排列,添加時間早的服務(wù)請求排在添加時間晚的服務(wù)請求的前面。進一步的,所述系統(tǒng)中的服務(wù)器通過遠程過程調(diào)用提取數(shù)據(jù)表信息和操作信息,獲得最終服務(wù)請求優(yōu)先級。進一步的,系統(tǒng)中的服務(wù)器將所述元數(shù)據(jù)表緩存在緩存系統(tǒng)中,當調(diào)用服務(wù)請求時,直接從緩存系統(tǒng)的元數(shù)據(jù)中獲取所述服務(wù)請求的優(yōu)先級。一種對服務(wù)請求調(diào)度的系統(tǒng),包括數(shù)據(jù)存儲模塊,用于存儲系統(tǒng)中的數(shù)據(jù)表;控制模塊,與數(shù)據(jù)存儲模塊相連接,用于接收服務(wù)請求,從所述數(shù)據(jù)存儲系統(tǒng)調(diào)用所述服務(wù)請求所需的數(shù)據(jù)表,獲得服務(wù)請求的優(yōu)先級,將所述服務(wù)請求執(zhí)行模塊按照優(yōu)先級排成服務(wù)請求優(yōu)先級隊列,定時對服務(wù)請求優(yōu)先級隊列的排序進行刷新;服務(wù)請求執(zhí)行模塊,與控制模塊相連接,按照所述服務(wù)請求優(yōu)先級隊列的排列順序執(zhí)行所述服務(wù)請求。進一步的,所述數(shù)據(jù)存儲模塊還包括緩存模塊,用于緩存元數(shù)據(jù)表。本專利技術(shù)通過提出服務(wù)請求優(yōu)先級的獲取和對服務(wù)請求優(yōu)先級隊列中服務(wù)請求調(diào)度的技術(shù),保證了不同等級的數(shù)據(jù)表的服務(wù)請求獲取相應(yīng)的預(yù)置服務(wù)性能,并且通過緩存服務(wù)請求優(yōu)先級,使得系統(tǒng)性能幾乎不損失。從而實現(xiàn)了在不損失服務(wù)器整體性能的前提下,使不同等級數(shù)據(jù)表的服務(wù)性能相互隔離。附圖說明圖1是本專利技術(shù)實施例一提供的系統(tǒng)對服務(wù)請求調(diào)度的方法流程圖;圖2是本專利技術(shù)實施例二提供的服務(wù)器中服務(wù)請求優(yōu)先級調(diào)度結(jié)構(gòu)示意圖;圖3是本專利技術(shù)實施例三提供的服務(wù)器中服務(wù)請求優(yōu)先級調(diào)度結(jié)構(gòu)示意圖;圖4是本專利技術(shù)實施例四提供的服務(wù)器中服務(wù)請求優(yōu)先級調(diào)度結(jié)構(gòu)示意圖;圖5是本專利技術(shù)實施例五提供的對服務(wù)請求調(diào)度的系統(tǒng)功能模塊框圖。具體實施例方式下面結(jié)合附圖和實施例對本專利技術(shù)作進一步的詳細說明。可以理解的是,此處所描述的具體實施例,僅僅用于解釋本專利技術(shù),而非對本專利技術(shù)的限定。實施例一圖1是本專利技術(shù)實施例一提供的系統(tǒng)對服務(wù)請求調(diào)度方法流程圖。該方法包括步驟101 :為系統(tǒng)中的數(shù)據(jù)表和所述數(shù)據(jù)表的相應(yīng)操作設(shè)置優(yōu)先級;為系統(tǒng)中數(shù)據(jù)表和數(shù)據(jù)表的相應(yīng)操作設(shè)置的優(yōu)先級,存儲在數(shù)據(jù)表的描述符中,并允許對數(shù)據(jù)表的優(yōu)先級和數(shù)據(jù)表相應(yīng)操作的優(yōu)先級動態(tài)修改。其中,數(shù)據(jù)表的操作包括寫入、讀取、刪除和更新。數(shù)據(jù)表的描述符是相應(yīng)的數(shù)據(jù)表的定義,存儲在元數(shù)據(jù)表中。在元數(shù)據(jù)表中,根據(jù)描述符可以查找到與描述符對應(yīng)的數(shù)據(jù)表和數(shù)據(jù)表相應(yīng)操作的優(yōu)先級,以及數(shù)據(jù)表的其他信息,所以可以在元數(shù)據(jù)表中設(shè)置數(shù)據(jù)表和數(shù)據(jù)表相應(yīng)操作的優(yōu)先級。步驟102 :根據(jù)服務(wù)請求所調(diào)用的數(shù)據(jù)表的優(yōu)先級和對數(shù)據(jù)表操作的優(yōu)先級,得到相應(yīng)服務(wù)請求的優(yōu)先級;對于一個服務(wù)請求,包括調(diào)用數(shù)據(jù)表,對數(shù)據(jù)表進行操作,因此服務(wù)請求也具有一定的優(yōu)先級,其優(yōu)先級等于服務(wù)請求所調(diào)用的數(shù)據(jù)表的優(yōu)先級和對數(shù)據(jù)表相應(yīng)操作的優(yōu)先級之和。具體來說,系統(tǒng)中的服務(wù)器通過遠程過程調(diào)用,根據(jù)數(shù)據(jù)表的描述符,在元數(shù)據(jù)表中查找并提取數(shù)據(jù)表的信息和相應(yīng)操作的信息,得到服務(wù)請求所調(diào)用的數(shù)據(jù)表的優(yōu)先級和對數(shù)據(jù)表操作的優(yōu)先級之和,獲得最終的服務(wù)請求優(yōu)先級。系統(tǒng)中的服務(wù)器將元數(shù)據(jù)表緩存在緩存系統(tǒng)中,當調(diào)用服務(wù)請求時,直接從緩存系統(tǒng)的元數(shù)據(jù)中獲取所述服務(wù)請求的優(yōu)先級。由于緩存系統(tǒng)的引入,服務(wù)器對服務(wù)請求的優(yōu)先級調(diào)度沒有對系統(tǒng)整體性能造成很大影響,多個不同優(yōu)先級的數(shù)據(jù)表也能夠充分利用系統(tǒng)的全部計算資源。其中,遠程過程調(diào)用(Remote Procedure Call, RPC)由調(diào)用信息和答復(fù)信息兩個不同結(jié)構(gòu)組成,遠程過程調(diào)用采用客戶機/服務(wù)器模式,請求程序就是一個客戶機,而服務(wù)提供程序就是一個服務(wù)器。首先,客戶機調(diào)用進程發(fā)送一個有進程參數(shù)的調(diào)用信息到服務(wù)進程,然后等待應(yīng)答信息。在服務(wù)器端,進程保持睡眠狀態(tài)直到調(diào)用信息的到達為止。當一個調(diào)用信息到達,服務(wù)器獲得進程參數(shù),計算結(jié)果,發(fā)送答復(fù)信息,然后等待下一個調(diào)用信息,最后,客戶端調(diào)用進程接收答復(fù)信息,獲得進程結(jié)果,然后調(diào)用執(zhí)行繼續(xù)進行。步驟103 :系統(tǒng)中的服務(wù)器將服務(wù)請求按優(yōu)先級的高低在服務(wù)器的內(nèi)存中排成服務(wù)請求優(yōu)先級隊列,優(yōu)先級高的服務(wù)請求排在隊列前面;對于優(yōu)先級相同的服務(wù)請求,按照添加服務(wù)請求的時間順序排列,添加時間早的服務(wù)請求排在添加時間晚的服務(wù)請求的前面。步驟104 :服務(wù)線程按從前到后的順序,調(diào)度執(zhí)行服務(wù)請求優(yōu)先級隊列中的服務(wù)請求;排在隊列前面的服務(wù)請求被優(yōu)先執(zhí)行。步驟105 :每隔一定時間,系統(tǒng)對服務(wù)請求優(yōu)先級隊列的排序進行刷新,在服務(wù)請求優(yōu)先級隊列中添加新的服務(wù)請求,并且,每刷新一次,將刷新前添加在隊列中而未被執(zhí)行的服務(wù)請求的優(yōu)先級提高一級。由于每隔一段時間,系統(tǒng)的服務(wù)請求會增加,而不斷添加新的服務(wù)請求會使優(yōu)先級較低的服務(wù)請求總是得不到執(zhí)行,所以,要定時對服務(wù)請求優(yōu)先級隊列的排序進行刷新,一方面,按照優(yōu)先級的高低向服務(wù)請求優(yōu)先級隊列添加新的服務(wù)請求,另一方面,將刷新前添加在隊列中而未被執(zhí)行的服務(wù)請求的優(yōu)先級提高一級,這樣就能避免優(yōu)先級較低的服務(wù)請求總是得不到執(zhí)行的情況。實施例二圖2是本專利技術(shù)實施例二提供的服務(wù)器中服務(wù)請求優(yōu)先級調(diào)度結(jié)構(gòu)示意圖;本實施例優(yōu)選的采用了分布式系統(tǒng)來實現(xiàn)對服務(wù)本文檔來自技高網(wǎng)...

【技術(shù)保護點】
一種系統(tǒng)對服務(wù)請求調(diào)度的方法,包括:為系統(tǒng)中的數(shù)據(jù)表和所述數(shù)據(jù)表的相應(yīng)操作設(shè)置優(yōu)先級;根據(jù)服務(wù)請求所調(diào)用的數(shù)據(jù)表的優(yōu)先級和對數(shù)據(jù)表操作的優(yōu)先級,得到相應(yīng)服務(wù)請求的優(yōu)先級;系統(tǒng)中的服務(wù)器將服務(wù)請求按優(yōu)先級的高低在所述服務(wù)器的內(nèi)存中排成服務(wù)請求優(yōu)先級隊列,優(yōu)先級高的服務(wù)請求排在所述隊列前面;服務(wù)線程按從前到后的順序,調(diào)度執(zhí)行服務(wù)請求優(yōu)先級隊列中的服務(wù)請求;每隔一定時間,系統(tǒng)對服務(wù)請求優(yōu)先級隊列的排序進行刷新,在服務(wù)請求優(yōu)先級隊列中添加新的服務(wù)請求,并且,每刷新一次,將刷新前添加在隊列中而未被執(zhí)行的服務(wù)請求的優(yōu)先級提高一級。
【技術(shù)特征摘要】
1.一種系統(tǒng)對服務(wù)請求調(diào)度的方法,包括 為系統(tǒng)中的數(shù)據(jù)表和所述數(shù)據(jù)表的相應(yīng)操作設(shè)置優(yōu)先級; 根據(jù)服務(wù)請求所調(diào)用的數(shù)據(jù)表的優(yōu)先級和對數(shù)據(jù)表操作的優(yōu)先級,得到相應(yīng)服務(wù)請求的優(yōu)先級; 系統(tǒng)中的服務(wù)器將服務(wù)請求按優(yōu)先級的高低在所述服務(wù)器的內(nèi)存中排成服務(wù)請求優(yōu)先級隊列,優(yōu)先級高的服務(wù)請求排在所述隊列前面; 服務(wù)線程按從前到后的順序,調(diào)度執(zhí)行服務(wù)請求優(yōu)先級隊列中的服務(wù)請求; 每隔一定時間,系統(tǒng)對服務(wù)請求優(yōu)先級隊列的排序進行刷新,在服務(wù)請求優(yōu)先級隊列中添加新的服務(wù)請求,并且,每刷新一次,將刷新前添加在隊列中而未被執(zhí)行的服務(wù)請求的優(yōu)先級提高一級。2.根據(jù)權(quán)利要求1所述的方法,其特征在于,將系統(tǒng)中所述數(shù)據(jù)表的優(yōu)先級和所述數(shù)據(jù)表相應(yīng)操作的優(yōu)先級存儲在所述數(shù)據(jù)表的描述符中,并允許對所述數(shù)據(jù)表的優(yōu)先級和所述數(shù)據(jù)表相應(yīng)操作的優(yōu)先級動態(tài)修改。3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述數(shù)據(jù)表的描述符是所述數(shù)據(jù)表的定義,存儲在元數(shù)據(jù)表中。4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述對數(shù)據(jù)表的操作包括寫入、讀取、刪除和更新。5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述服務(wù)請求的優(yōu)先級等于所述服務(wù)請求所調(diào)用的數(shù)據(jù)表的優(yōu)先級和所述數(shù)據(jù)表...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:劉佳,胡肖,查禮,
申請(專利權(quán))人:北京普澤天璣數(shù)據(jù)技術(shù)有限公司,
類型:發(fā)明
國別省市:
還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。