專利名稱:促進(jìn)請求執(zhí)行的裝置和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及用于促進(jìn)請求的執(zhí)行的裝置。
背景技術(shù):
在面向服務(wù)的架構(gòu)中,將應(yīng)用組織成交互服務(wù)的層級(或者甚至是網(wǎng)絡(luò))是很自 然的。也就是說,服務(wù)提供商將會自主地利用其它服務(wù)。在這種情況下,之前的“層”(tier)的概念(例如,在“雙層客戶服務(wù)器”或“三層 客戶服務(wù)器”中所用)不再具有太多意義。當(dāng)一個服務(wù)提供商調(diào)用另一服務(wù)時,它不知道也 不關(guān)心為完成其請求的一部分而發(fā)生的進(jìn)一步的委派。由此,變得非常重要的是,確保服務(wù)提供商(例如,服務(wù)器處理)即使在必須等待 它極少或不能控制的其它服務(wù)器的應(yīng)答的情況下也可以持續(xù)地響應(yīng)于其客戶。這意味著 這樣的觀察結(jié)果,即,服務(wù)提供商必須明確地為多線程的,或者,必須通過一些等效的方法, 具備并行處理多個請求的能力,這樣,如果一些請求由于服務(wù)器無法控制的原因無法前進(jìn) (例如,由于服務(wù)器不得不等待遠(yuǎn)程服務(wù)的應(yīng)答),將會有其它請求可以前進(jìn),于是服務(wù)器 可以工作于這樣的其它請求。這種方案的目的是要典型地最大化服務(wù)提供商中的吞吐量, 而不必然地最小化對于任意特定請求者的響應(yīng)時間。不幸的是,上述方法有其自身的問題。例如,如果正在進(jìn)行中的請求數(shù)目變得太 大,那么管理它們所需要的努力變得非常顯著,實際上可能會降低性能(這是關(guān)于麻煩使 操作系統(tǒng)調(diào)度器過載這一問題的變體,通常稱為“系統(tǒng)顛簸”)。此外,還存在這樣的危險,即服務(wù)器用來決定接下來要前進(jìn)到哪兒的算法(例如, 其調(diào)度功能)可能偏向其他請求而忽略特定的請求,導(dǎo)致很長的延遲。例如,如果服務(wù)器正 在試圖并行處理若干請求,那么有可能一個請求將會被忽略掉,而其他請求接收到對可用 處理時間的不成比例的大量享用。大概這會被認(rèn)為是算法設(shè)計的失誤,但是,它導(dǎo)致了響應(yīng) 的延遲,而不是更為可見的“當(dāng)機”或錯誤響應(yīng)這一事實,使得看來更有可能是,這樣的現(xiàn)象 會出現(xiàn)在未檢測到的執(zhí)行中。
發(fā)明內(nèi)容
根據(jù)第一方面,優(yōu)選實施例提供了一種促進(jìn)請求執(zhí)行的裝置,可利用數(shù)據(jù)處理系 統(tǒng)操作,所述數(shù)據(jù)處理系統(tǒng)具有用于訪問請求的訪問部件和用于處理請求的處理部件,所 述裝置包括分配器,用于將多個標(biāo)識符分配給相應(yīng)的多個請求;用于將閾值關(guān)聯(lián)于第一 標(biāo)識符和第二標(biāo)識符的部件;請求處理器,用于將滿足閾值的請求與合格組相關(guān)聯(lián);以及 用于控制訪問部件使得所述訪問部件可操作為訪問與合格組相關(guān)聯(lián)的請求,并可操作為防 止訪問不與合格組相關(guān)聯(lián)的請求的部件。根據(jù)第二方面,優(yōu)選實施例提供了一種促進(jìn)請求執(zhí)行的方法,可利用數(shù)據(jù)處理系 統(tǒng)操作,所述數(shù)據(jù)處理系統(tǒng)具有用于訪問請求的訪問部件和用于處理請求的處理部件,所 述方法包括以下步驟將多個標(biāo)識符分配給相應(yīng)的多個請求;將閾值關(guān)聯(lián)于第一標(biāo)識符和第二標(biāo)識符;將滿足閾值的請求與合格組相關(guān)聯(lián);以及控制所述訪問部件使得所述訪問部 件與合格組相關(guān)聯(lián)的請求,并防止訪問不與合格組相關(guān)聯(lián)的請求。根據(jù)第三方面,優(yōu)選實施例提供了一種計算機程序,包括程序代碼部件,當(dāng)所述程 序在計算機上運行時,所述程序代碼部件適于執(zhí)行上述方法的所有步驟。有利地,優(yōu)選實施例允許服務(wù)器得到有效利用-也就是說,每當(dāng)服務(wù)器具有空閑 容量(例如,由于請求在等待完成),服務(wù)器就可操作為讀取另一請求,并開始工作于該另 一請求。有利地,優(yōu)選實施例防止服務(wù)器偏向于一個請求超過另一請求,使得與推遲執(zhí)行 的延長時間段相關(guān)聯(lián)的開銷得到最小化。有利地,優(yōu)選實施例允許與管理多個處于執(zhí)行狀態(tài)的請求相關(guān)聯(lián)的開銷得到最小 化。
現(xiàn)在將參照如以下所示明的優(yōu)選實施例僅通過示例的方式描述本發(fā)明,其中圖1是其中執(zhí)行優(yōu)選實施例的系統(tǒng)的框圖;圖2是根據(jù)優(yōu)選實施例的裝置的框圖;圖3是示出優(yōu)選實施例的第一過程中包含的操作步驟的流程圖;圖4是示出優(yōu)選實施例的第二過程中包含的操作步驟的流程圖;以及圖5A到5D描繪了 一個隊列的表示。
具體實施例方式現(xiàn)在將參照附圖描述優(yōu)選實施例。圖1是系統(tǒng)(100)的框圖,其中可以執(zhí)行優(yōu)選實施例的裝置。系統(tǒng)(100)包括客 戶計算機(105),其可操作為與服務(wù)器計算機(110)連接,并可操作為產(chǎn)生請求。服務(wù)器計算機(110)可操作為例如在消息隊列(112)上接收請求,并處理所述請 求。優(yōu)選地,服務(wù)器還可操作為并行處理多個請求。服務(wù)器計算機(110)可操作為與一個 或多個遠(yuǎn)程服務(wù)器計算機(120,125和130)通信,例如如果處理請求需要的話。系統(tǒng)(100)還包括根據(jù)優(yōu)選實施例的裝置(115),其可操作為與服務(wù)器計算機 (110)通信。在圖2中更詳細(xì)地描繪了裝置(115),其包括分配器(200),核查器(205)和請求 處理器(210),其每一個可操作為與隊列(112)通信。現(xiàn)在將參照圖3描述與接收請求相關(guān)聯(lián)的優(yōu)選實施例的過程。在步驟300,在服務(wù)器計算機(110)的隊列(112)上接收來自客戶計算機(105)的 新請求。在此處的示例中,該新請求是在隊列(112)上接收到的第一請求。響應(yīng)于此,分配器(200)被調(diào)用,并且分配器(200)分配(步驟305) —個唯一的 序列標(biāo)識符(例如,“1”)給該第一請求。優(yōu)選地,序列標(biāo)識符是正整數(shù)(例如,數(shù)字)。通過遞增當(dāng)前的序列標(biāo)識符使得提 供偏序,由此來產(chǎn)生序列中進(jìn)一步的序列標(biāo)識符,因此,在這里的示例中,較早的請求(當(dāng) 前請求)的序列標(biāo)識符(例如,“1”)所具有的值低于后續(xù)的、較新的請求的序列標(biāo)識符(例如,“2”)。因此,序列標(biāo)識符被添加給請求,其順序使得請求以隊列(112)到達(dá)??梢岳斫?, 可以用其他類型的標(biāo)識符(例如,時間戳)來執(zhí)行優(yōu)選實施例。優(yōu)選地,分配器(200)將序列標(biāo)識符與“跨度”相關(guān)聯(lián)一在這里的示例中,跨度表 示這樣一個整數(shù),其代表服務(wù)器計算機(110)可以(例如,同時)處理的任何請求對的序列 標(biāo)識符之間的最大允許差。通過允許(具有足夠容量的)服務(wù)器訪問和處理序列標(biāo)識符與跨度相關(guān)聯(lián)的請 求,而防止服務(wù)器計算機(110)訪問和處理序列標(biāo)識符不與跨度相關(guān)聯(lián)的請求,跨度允許 工作得到節(jié)制。因此,跨度有效地對服務(wù)器計算機(110)可以訪問和處理的請求設(shè)定了約 束,服務(wù)器計算機(110)可操作為遵守所述約束。在這里的示例中,跨度為“3”。分配器(200)將序列標(biāo)識符通信給核查器(205)。在步驟310,核查器(205)核查 序列標(biāo)識符。更具體地,核查器(205)將第一請求的序列標(biāo)識符與關(guān)聯(lián)于“最早”在先請求 的一個或多個在先分配的序列標(biāo)識符進(jìn)行比較。在此處的示例中,由于新請求是第一請求,因此不存在在先分配的序列標(biāo)識符,并 且在步驟320,通過請求處理器(210)將第一請求添加到“合格組”中,也就是,服務(wù)器計算 機(110)可操作為進(jìn)行訪問以進(jìn)行處理的請求的組。在此處的示例中,在隊列(112)上接收到第二請求(步驟325處為正結(jié)果),分 配器(200)分配(步驟305) —個唯一的序列標(biāo)識符(例如,“2”)給該第二請求。分配器 (200)將該序列標(biāo)識符通信給核查器(205)。在步驟310,核查器(205)(例如通過訪問隊列 (112))核查該序列標(biāo)識符相對于最早在先分配的序列標(biāo)識符(例如,“1”),以確定下式是 否成立2 > (1+3)。由于測試不成立,在步驟320,通過請求處理器(210)將第一請求添加 到合格組。在步驟310處的測試將最新請求和最早請求的序列標(biāo)識符相對于跨度(任何請 求對的序列標(biāo)識符之間的最大允許差)進(jìn)行比較,以確定最新請求是否可以與合格組相關(guān) 聯(lián)。僅當(dāng)最新請求和最早請求的序列標(biāo)識符之間的差小于跨度時,允許服務(wù)器計算機(110) 開始工作于該最新請求。在此處的示例中,在隊列(112)上接收到第三請求(步驟325處為正結(jié)果),分 配器(200)分配(步驟305) —個唯一的序列標(biāo)識符(例如,“3”)給該第三請求。分配器 (200)將該序列標(biāo)識符通信給核查器(205)。在步驟310,核查器(205)核查該序列標(biāo)識符 相對于最早在先分配的序列標(biāo)識符(例如,“1”),以確定下式是否成立3> (1+3)。由于 測試不成立,在步驟320,通過請求處理器(210)將第三請求添加到合格組。在此處的示例中,在隊列(112)上接收到第四請求(步驟325處為正結(jié)果),分 配器(200)分配(步驟305) —個唯一的序列標(biāo)識符(例如,“4”)給該第四請求。分配器 (200)將該序列標(biāo)識符通信給核查器(205)。在步驟310,核查器(205)核查該序列標(biāo)識符 相對于最早在先分配的序列標(biāo)識符(例如,“1”),以確定下式是否成立4> (1+3)。由于 測試不成立,在步驟320,通過請求處理器(210)將第三請求添加到合格組。在此處的示例中,在隊列(112)上接收到第五請求(步驟325處為正結(jié)果),分 配器(200)分配(步驟305) —個唯一的序列標(biāo)識符(例如,“5”)給該第五請求。分配器 (200)將該序列標(biāo)識符通信給核查器(205)。在步驟310,核查器(205)核查該序列標(biāo)識符相對于最早在先分配的序列標(biāo)識符(例如,“1”),以確定下式是否成立5> (1+3)。由于 測試是成立的,將該第五請求添加到合格組將會“違反”跨度所設(shè)定的約束。因此,在步驟 315,通過請求處理器(210)將第五請求添加到隊列(112)的尾部而不是合格組中一此處第 五請求被稱為“等待請求”,因為第五請求正在隊列(112)中等待成為合格組中的成員。在此處的示例中,在隊列(112)上接收到第六請求(步驟325處為正結(jié)果),分 配器(200)分配(步驟305) —個唯一的序列標(biāo)識符(例如,“6”)給該第六請求。分配器 (200)將該序列標(biāo)識符通信給核查器(205)。在步驟310,核查器(205)核查該序列標(biāo)識符 相對于最早在先分配的序列標(biāo)識符(例如,“1”),以確定下式是否成立6> (1+3)。由于 測試是成立的,在步驟315,通過請求處理器(210)將第六請求添加到隊列(112)的尾部一 第六請求也被稱為“等待請求”。在圖5A中示出產(chǎn)生的隊列(112)的表示,其中,第一、第二、第三和第四請求與合 格組相關(guān)聯(lián),而第五和第六請求不與合格組相關(guān)聯(lián)。在此處的示例中,在隊列(112)上沒有接收到進(jìn)一步的請求(步驟325處為否定 結(jié)果),該過程結(jié)束?,F(xiàn)在將參照圖4描述與處理請求相關(guān)聯(lián)的優(yōu)選實施例的過程。在步驟400,服務(wù)器計算機(110)訪問合格組,并完成對合格組中請求的工作。注意到,優(yōu)選地,允許服務(wù)器計算機(110)具有能夠工作于合格組中任意請求的 靈活性。還注意到,優(yōu)選地,服務(wù)器計算機(110)可操作為同時工作于合格組中的多個請 求-這提供了有效性,因為,如果請求之一的處理停止(例如,由于合法原因,比如,服務(wù)器 計算機(110)等待從遠(yuǎn)程服務(wù)器計算機的響應(yīng),或者存在錯誤情況),會有一個請求“池"W 待進(jìn)行工作。還注意到,服務(wù)器計算機(Iio)可以訪問一個或多個遠(yuǎn)程服務(wù)器計算機(120, 125和130)以完成請求。在此處的示例中,服務(wù)器計算機(110)完成對第二請求的工作。在步驟405,請求處理器(210)將第二請求從隊列(112)中移除(例如,使得它不 會錯誤地被處理)。注意到,第二請求也從合格組中被移除。圖5B示出產(chǎn)生的隊列(112) 的表示。在步驟410,核查器(205)核查合格組中最早序列標(biāo)識符的序列標(biāo)識符(例如, “1”)相對于等待請求的最早序列標(biāo)識符(例如,“5”),以確定下式是否成立1+3>5。該測試將與跨度相關(guān)聯(lián)的合格組中的最早請求相對于等待請求進(jìn)行比較,以確定 等待請求是否可以與合格組相關(guān)聯(lián)。將最早請求包含在上述比較中以確保,如果最早的請 求還沒有被處理,那么等待請求就不與合格組相關(guān)聯(lián)。在現(xiàn)有技術(shù)中,不利地,當(dāng)服務(wù)器計算機可操作為處理多個請求時,可能處理新的 請求,而將相對較早的請求忽略掉。在此處的示例中,由于測試不成立,在步驟420,請求處理器(210)確定服務(wù)器計 算機(110)是否完成了另一請求。在此處的示例中,在步驟400,服務(wù)器計算機(110)訪問合格組,并完成對合格組 中另一請求的工作。在此處的示例中,服務(wù)器計算機(110)完成對第三請求的工作。在步驟405,請求處理器(210)將第三請求從隊列(112)中移除,圖5C示出產(chǎn)生的 隊列(112)的表示。注意到,第三請求還從合格組中被移除。
6
在步驟410,核查器(205)核查合格組中最早序列標(biāo)識符的序列標(biāo)識符(例如, “1”)相對于等待請求的最早序列標(biāo)識符(例如,“5”),以確定下式是否成立1+3 > 5。由 于測試不成立,在步驟420,請求處理器(210)確定服務(wù)器是否完成了另一請求(例如,通過 使用監(jiān)聽方法)。注意到,多個較新的請求已經(jīng)完成(即,第二請求和第三請求)"事實可能如此,因 為,例如較新的請求需要目前不用的資源,而在隊列(112)頭部的請求需要完全排滿工作 的資源。盡管多個較新請求的完成已經(jīng)在合格組中留下“空間”,但是,由于相對更早的請求 (例如,第一請求)還沒有得到處理,等待請求(例如,第五請求)不能成為合格請求的一部 分-以此方式,有利地,較早的請求不會被服務(wù)器計算機(110) “忽略”掉。盡管服務(wù)器計算機(110)可以有利于在后面的另一請求(例如,第二請求和第三 請求)而推遲開始對隊列(112)頭部的請求(例如,第一請求)的工作,但是,如果服務(wù)器 計算機(110)過于頻繁地推遲工作,那么最終,最早請求和等待請求之間的差將使得跨度 阻止服務(wù)器計算機(110)開始對等待請求的工作,直到它完成對合格組中的請求(例如,最 早請求)中的至少一個的工作。在此處的示例中,在步驟400,服務(wù)器計算機(110)訪問合格組,并完成對合格組 中另一請求的工作。在此處的示例中,服務(wù)器計算機(110)完成對第一請求的工作。在步驟405,請求處理器(210)將第一請求從隊列(112)中移除,圖5D示出產(chǎn)生的 隊列(112)的表示。注意到,第一請求還從合格組中被移除。在步驟410,核查器(205)核查合格組中最早序列標(biāo)識符的序列標(biāo)識符(例如, “4”)相對于等待請求的最早序列標(biāo)識符(例如,“5”),以確定下式是否成立4+3 > 5。由 于測試成立,在步驟415,請求處理器(210)將第五請求轉(zhuǎn)移到合格組中。產(chǎn)生的合格組包 含第四請求和第五請求。有利地,由于第一請求已經(jīng)完成,第五請求可以轉(zhuǎn)移到合格組中。在步驟425中,核查器(205)確定另一等待請求是否在隊列(112)中。在此處的示例中,由于在隊列(112)中存在另一等待請求(即,第六請求),過程進(jìn) 行至步驟410,其中核查器(205)核查合格組中最早序列標(biāo)識符的序列標(biāo)識符(例如,“4”) 相對于等待請求的最早序列標(biāo)識符(例如,“6”),以確定下式是否成立4+3>6。由于測 試成立,在步驟415,請求處理器(210)將第六請求轉(zhuǎn)移到合格組中。產(chǎn)生的合格組包含第 四請求、第五請求和第六請求-由此,盡可能多的等待請求被轉(zhuǎn)移到合格組中。注意到,跨 度可作用為“滑塊”,可以進(jìn)行移動以包括進(jìn)一步的請求。在步驟425,核查器(205)確定是否有另一等待請求在隊列(112)中。在此處的示 例中,由于隊列(112)中不存在進(jìn)一步的等待請求,因此,在步驟420,請求處理器(210)確 定服務(wù)器是否完成了另一請求(例如,通過監(jiān)聽方法)。在此處的示例中,服務(wù)器沒有完成另一請求,過程結(jié)束。有利地,優(yōu)選實施例通過允許服務(wù)器計算機有效處理多個請求并最大化其吞吐量 而使其“保持忙碌”。然而,防止服務(wù)器計算機過載,并防止其忽略任何請求。這些優(yōu)勢通過 服務(wù)器計算機本身的最小開銷來提供。注意到,優(yōu)選實施例并不簡單是將請求付諸執(zhí)行然后拋到腦后,由此對當(dāng)前的負(fù) 載平衡機制進(jìn)行了改進(jìn)。在優(yōu)選實施例中,外部實體(例如負(fù)載平衡系統(tǒng)管理工具)可操作為響應(yīng)于改變的環(huán)境而調(diào)節(jié)服務(wù)器計算機,使服務(wù)器計算機適應(yīng)于自主計算環(huán)境。下面將更詳細(xì)地對此 進(jìn)行描述。在現(xiàn)有技術(shù)中,使用多線程的服務(wù)器計算機,在多數(shù)操作系統(tǒng)中,創(chuàng)建新線程的動 作在資源消耗上是相當(dāng)昂貴的。典型地,通過維持一個空閑線程池來最小化線程創(chuàng)建操作 的數(shù)目。因此,當(dāng)線程沒有工作可做時,并不是刪除該線程,而是將它置于空閑池中,當(dāng)更 多工作到達(dá)時,通過從空閑池中重新激活線程來避免線程創(chuàng)建的成本。重新激活的過程存 在一定的初始化成本,但是遠(yuǎn)遠(yuǎn)小于創(chuàng)建線程所涉及的成本。在優(yōu)選實施例中,跨度用于改變在任意時刻對于服務(wù)器計算機可用的請求的數(shù) 目。優(yōu)選地,外部實體可操作為監(jiān)視受跨度影響的請求(例如,需要等待“早先”請求完成 的請求)。在優(yōu)選實施例中,外部實體可以監(jiān)視空閑線程池,以確定服務(wù)器計算機實際上繁 忙的程度,并監(jiān)視上述跨度。響應(yīng)于這樣的監(jiān)視,外部實體可操作為根據(jù)一個或多個規(guī)則提
供信息。在一個示例中,如果響應(yīng)于監(jiān)視,外部實體確定服務(wù)器計算機具有空閑線程,并且 這樣的線程維持在空閑狀態(tài)持續(xù)了延長的時間段,這表明,服務(wù)器沒有充分工作,優(yōu)選地, 外部實體推薦跨度數(shù)目應(yīng)該增加。在另一示例中,如果外部實體確定跨度太大使得流入請求(幾乎)從不等待,那么 優(yōu)選地,外部實體推薦刪除線程中的至少一個(因此,將資源還給一些其它工作)。盡管這 樣的推薦教導(dǎo)的方案偏離了上述的現(xiàn)有技術(shù)的機制,但是優(yōu)選實施例利用了來自空閑線程 池的真實測量和跨度,由此做出上述的確定。在另一示例中,如果外部實體確定空閑線程池(幾乎)總是空的,并且跨度還迫使 請求必須等待,這可能由于服務(wù)器計算機過載。優(yōu)選地,外部實體推薦線程數(shù)目應(yīng)該增加。 盡管線程創(chuàng)建相當(dāng)昂貴,并且如果下層硬件已經(jīng)完全排滿工作,線程創(chuàng)建并不能減輕這種 情況,但是通過進(jìn)行這樣的推薦,給管理員提供了至少嘗試減輕這種情況的選項。有利地,響應(yīng)于監(jiān)視,外部實體可以進(jìn)行這樣的推薦,其關(guān)聯(lián)于,例如改變跨度以 改變服務(wù)器計算機可以做的工作的量(有利地,優(yōu)化吞吐量),或者調(diào)查瓶頸或未使用的資 源可能位于服務(wù)器計算機的其它何處。有利地,優(yōu)選實施例提供了多種益處。例如,它使得“黑盒子”測試更加容易。只 要測試裝具知道對于任何給定服務(wù)提供商的跨度,優(yōu)選實施例允許核查輸入隊列,以確定 該跨度沒有被違反。在另一示例中,優(yōu)選實施例還允許服務(wù)器計算機的簡單、低成本策略來 并行處理多個請求。在替代實施例中,合格組中的例如等待外部事件完成的請求可能不能夠完成。優(yōu) 選地,從其余請求中,服務(wù)器計算機可操作為進(jìn)行具有最低序列號的請求(即,最早請求)。 這可能并不必然是最優(yōu)方案,但是它代價低廉并有效,并提供了其它方案進(jìn)行改進(jìn)所基于 的基準(zhǔn)面。該方案還意味著,服務(wù)器計算機不需要是多線程的,多線程的設(shè)計選擇例如由于 同步的復(fù)雜性和上下文切換的成本,經(jīng)常帶來顯著的編碼和運行時負(fù)擔(dān)。本領(lǐng)域技術(shù)人員清楚的是,本發(fā)明優(yōu)選實施例的方法的全部或部分可以適當(dāng)?shù)夭?有用地體現(xiàn)在邏輯裝置或多個邏輯裝置中,其包含被布置為執(zhí)行上述方法的步驟的邏輯元件,這樣的邏輯元件可以包含硬件部件、固件部件或其組合。本領(lǐng)域技術(shù)人員同樣清楚的是,根據(jù)本發(fā)明優(yōu)選實施例的邏輯布置的全部或部分 可以適當(dāng)?shù)伢w現(xiàn)在邏輯裝置中,其包括邏輯元件以執(zhí)行方法的步驟,并且這樣的邏輯元件 可以包含例如可編程邏輯陣列或?qū)S眉呻娐分械倪壿嬮T之類的部件。這樣的邏輯布置還 可以體現(xiàn)為使能元件,用于暫時地或永久地例如使用虛擬硬件描述語言以這樣的陣列或電 路建立邏輯結(jié)構(gòu),其可以進(jìn)行存儲并使用固定的或可傳輸?shù)妮d體介質(zhì)進(jìn)行傳輸??梢岳斫?,上述方法和布置還適于完全地或部分地在一個或多個處理上運行的軟 件中執(zhí)行(圖中未示出),所述軟件可以提供為在適當(dāng)?shù)臄?shù)據(jù)載體上承載的一個或多個計 算機程序元件的形式(圖中未示出),例如磁盤或光盤等等。數(shù)據(jù)傳輸?shù)耐ǖ揽梢酝瑯拥匕?括所有描述的存儲介質(zhì)以及信號承載介質(zhì),例如有線或無線信號承載介質(zhì)。本發(fā)明還適于體現(xiàn)為用于計算機系統(tǒng)的計算機程序產(chǎn)品。這樣的執(zhí)行可包括一系 列計算機可讀指令,這些指令或者固定在有形介質(zhì)上,例如磁盤、CD-R0M、R0M或硬盤之類的 計算機可讀介質(zhì),或者可經(jīng)由調(diào)制解調(diào)器或其它接口設(shè)備,通過有形介質(zhì)(包括但不限于 光學(xué)或模擬通信線路)或者使用無線技術(shù)(包括但不限于微波、紅外或其它傳輸技術(shù))無 形地傳輸?shù)接嬎銠C系統(tǒng)。一系列的計算機可讀指令體現(xiàn)本文之前描述的功能性的全部或一 部分。本領(lǐng)域技術(shù)人員可以理解,這樣的計算機可讀指令可以用多種變成語言寫成,用 于許多計算機架構(gòu)或操作系統(tǒng)。此外,這樣的執(zhí)行可以使用任何現(xiàn)有的或未來的存儲技術(shù) 存儲,包括但不限于,半導(dǎo)體、磁或光學(xué)存儲,或使用現(xiàn)有的或未來的任何通信技術(shù)傳輸,包 括但不限于光學(xué)、紅外或微波??梢詷?gòu)想,這樣的計算機程序產(chǎn)品可以隨著可移除介質(zhì)而 得到分發(fā),伴有印刷的或電子的文檔,例如計算機系統(tǒng)預(yù)加載的現(xiàn)成軟件,例如加載到系統(tǒng) ROM上或固定磁盤上,或者通過例如因特網(wǎng)或萬維網(wǎng)的網(wǎng)絡(luò)從服務(wù)器或電子公告板分發(fā)。作為替代,本發(fā)明的優(yōu)選實施例可以實現(xiàn)為計算機執(zhí)行的方法的形式,所述方法 部署一種服務(wù),該服務(wù)包含部署計算機程序代碼的步驟,所述計算機程序代碼當(dāng)部署到計 算機基礎(chǔ)結(jié)構(gòu)中并在其上執(zhí)行時可操作為使得所述計算機系統(tǒng)執(zhí)行上述方法的所有步驟。本領(lǐng)域技術(shù)人員清楚的是,可以對前述示例性實施例做出許多改進(jìn)和變體,而不 偏離本發(fā)明的范圍。
權(quán)利要求
一種促進(jìn)請求執(zhí)行的裝置,可利用數(shù)據(jù)處理系統(tǒng)操作,所述數(shù)據(jù)處理系統(tǒng)具有用于訪問請求的訪問部件和用于處理請求的處理部件,所述裝置包括分配器,用于將多個標(biāo)識符分配給相應(yīng)的多個請求;用于將閾值關(guān)聯(lián)于第一標(biāo)識符和第二標(biāo)識符的部件;請求處理器,用于將滿足閾值的請求與合格組相關(guān)聯(lián);以及用于控制訪問部件使得所述訪問部件可操作為訪問與合格組相關(guān)聯(lián)的請求,并可操作為防止訪問不與合格組相關(guān)聯(lián)的請求的部件。
2.如權(quán)利要求1所述的裝置,其中,所述分配器可操作為按照接收到所述相應(yīng)的多個 請求的順序?qū)⑺龆鄠€標(biāo)識符分配給所述相應(yīng)的多個請求。
3.如權(quán)利要求1或2所述的裝置,其中,所述請求處理器可操作為防止將具有不滿足所 述閾值的標(biāo)識符的請求包含在所述合格組中。
4.如前述任意權(quán)利要求所述的裝置,其中,所述請求處理器可操作為響應(yīng)于所述訪問 部件訪問合格組中的請求以及處理部件處理所訪問的請求,將已處理的請求從合格組中移 除。
5.如權(quán)利要求1所述的裝置,還包括核查器,響應(yīng)于將已處理的請求從合格組中移除,用于核查不與合格組相關(guān)聯(lián)的請求 的標(biāo)識符,以確定該標(biāo)識符是否滿足所述閾值。
6.如權(quán)利要求5所述的裝置,其中,所述核查器可操作為響應(yīng)于不與合格組相關(guān)聯(lián)的 請求的標(biāo)識符滿足所述閾值,將該請求包含在合格組中。
7.如權(quán)利要求5所述的裝置,其中,所述核查器可操作為響應(yīng)于不與合格組相關(guān)聯(lián)的 請求的標(biāo)識符不滿足所述閾值,防止將該請求包含在合格組中。
8.如前述任意權(quán)利要求所述的裝置,還包括用于關(guān)聯(lián)于規(guī)則組監(jiān)視與請求相關(guān)聯(lián)的參數(shù)的部件;以及響應(yīng)于所述用于監(jiān)視的部件,用于產(chǎn)生與以下項目中的至少一個相關(guān)聯(lián)的數(shù)據(jù)的部 件,所述項目包括修改所述閾值,以及修改與數(shù)據(jù)處理系統(tǒng)相關(guān)聯(lián)的一個或多個過程。
9.如權(quán)利要求8所述的裝置,其中所述參數(shù)包括以下中的至少一個與通過處理部件 處理所述請求的時間段相關(guān)聯(lián)的值;以及與關(guān)聯(lián)于所述數(shù)據(jù)處理系統(tǒng)的一個或多個過程相 關(guān)聯(lián)的狀態(tài)。
10.如前述任意權(quán)利要求所述的裝置,其中所述處理部件可操作為同時處理請求。
11.一種促進(jìn)請求執(zhí)行的方法,可利用數(shù)據(jù)處理系統(tǒng)操作,所述數(shù)據(jù)處理系統(tǒng)具有用于 訪問請求的訪問部件和用于處理請求的處理部件,所述方法包括以下步驟將多個標(biāo)識符分配給相應(yīng)的多個請求;將閾值關(guān)聯(lián)于第一標(biāo)識符和第二標(biāo)識符;將滿足閾值的請求與合格組相關(guān)聯(lián);以及控制所述訪問部件使得所述訪問部件訪問與合格組相關(guān)聯(lián)的請求,并防止訪問不與合 格組相關(guān)聯(lián)的請求。
12.—種計算機程序,包括程序代碼部件,當(dāng)所述程序在計算機上運行時,所述程序代 碼部件適于執(zhí)行權(quán)利要求11的所有步驟。
全文摘要
提供一種促進(jìn)請求執(zhí)行的裝置,可利用數(shù)據(jù)處理系統(tǒng)操作,所述數(shù)據(jù)處理系統(tǒng)具有用于訪問請求的訪問部件和用于處理請求的處理部件,所述裝置包括分配器,用于將多個標(biāo)識符分配給相應(yīng)的多個請求;用于將閾值關(guān)聯(lián)于第一標(biāo)識符和第二標(biāo)識符的部件;請求處理器,用于將滿足閾值的請求與合格組相關(guān)聯(lián);以及用于控制訪問部件使得所述訪問部件可操作為訪問與合格組相關(guān)聯(lián)的請求,并可操作為防止訪問不與合格組相關(guān)聯(lián)的請求的部件。
文檔編號G06F9/50GK101908004SQ20101019877
公開日2010年12月8日 申請日期2010年6月4日 優(yōu)先權(quán)日2009年6月5日
發(fā)明者G·M·維恩, N·G·楊 申請人:國際商業(yè)機器公司