亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種請(qǐng)求處理方法、裝置及服務(wù)器系統(tǒng)的制作方法

文檔序號(hào):7749105閱讀:210來源:國(guó)知局
專利名稱:一種請(qǐng)求處理方法、裝置及服務(wù)器系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本申請(qǐng)涉及網(wǎng)絡(luò)技術(shù),特別是涉及一種能夠按照權(quán)重執(zhí)行不同操作的請(qǐng)求處理方法、裝置及服務(wù)器系統(tǒng)。
背景技術(shù)
在不同的應(yīng)用系統(tǒng)中,對(duì)請(qǐng)求的處理方式各不相同。例如,在采用了負(fù)載均衡技術(shù)的系統(tǒng)中,對(duì)請(qǐng)求采取平均分配的方式,將對(duì)同一個(gè)web站點(diǎn)的請(qǐng)求平均分配到不同的服務(wù)器上進(jìn)行處理,從而保證對(duì)用戶請(qǐng)求的響應(yīng)時(shí)間。負(fù)載均衡技術(shù)常被廣泛運(yùn)用于大型的web站點(diǎn),目前有很多現(xiàn)有的硬件或者軟件可以實(shí)現(xiàn)負(fù)載均衡功能。參照?qǐng)D1,是現(xiàn)有技術(shù)中采用硬件負(fù)載均衡的web站點(diǎn)的服務(wù)器部署結(jié)構(gòu)圖。一臺(tái)負(fù)載均衡服務(wù)器鏈接有多臺(tái)提供web站點(diǎn)功能的應(yīng)用服務(wù)器,圖I中示出·了三臺(tái),分別是應(yīng)用服務(wù)器I、應(yīng)用服務(wù)器2和應(yīng)用服務(wù)器3。所有對(duì)web站點(diǎn)的訪問請(qǐng)求都會(huì)先到達(dá)負(fù)載均衡服務(wù)器,由負(fù)載均衡服務(wù)器將這些請(qǐng)求平均地分配到不同的應(yīng)用服務(wù)器上。從圖I可以看出,現(xiàn)有的硬件負(fù)載均衡技術(shù)能夠做到將請(qǐng)求平均分配給不同的服務(wù)器。但是,在實(shí)際應(yīng)用的很多場(chǎng)景下,并不希望將請(qǐng)求進(jìn)行平均分配,而是希望對(duì)請(qǐng)求按比例或者按權(quán)重執(zhí)行不同的操作,如將70%的請(qǐng)求分配到應(yīng)用服務(wù)器I上處理,將20%的請(qǐng)求分配到應(yīng)用服務(wù)器2上處理,再將剩余的10%的請(qǐng)求分配到應(yīng)用服務(wù)器3上處理。顯然,現(xiàn)有的負(fù)載均衡技術(shù)無法實(shí)現(xiàn)以上情況的請(qǐng)求處理。

發(fā)明內(nèi)容
本申請(qǐng)?zhí)峁┝艘环N請(qǐng)求處理方法、裝置及服務(wù)器系統(tǒng),以解決現(xiàn)有技術(shù)不能對(duì)請(qǐng)求按比例或者按權(quán)重執(zhí)行不同操作的問題。為了解決上述問題,本申請(qǐng)公開了一種請(qǐng)求處理方法,包括針對(duì)同一請(qǐng)求對(duì)應(yīng)的多種不同操作,按照每種操作的權(quán)重大小分別設(shè)置各種操作相應(yīng)權(quán)重?cái)?shù)量的元素,每個(gè)元素對(duì)應(yīng)一個(gè)操作;當(dāng)接收到請(qǐng)求時(shí),從設(shè)置的元素中隨機(jī)抽取一個(gè)元素;根據(jù)抽取出來的元素所代表的對(duì)應(yīng)操作,對(duì)所述請(qǐng)求執(zhí)行所述對(duì)應(yīng)操作。其中,若每個(gè)元素代表一個(gè)數(shù)據(jù)庫或應(yīng)用服務(wù)器,則對(duì)所述請(qǐng)求執(zhí)行所述對(duì)應(yīng)操作包括將所述請(qǐng)求分配到所述元素代表的數(shù)據(jù)庫或應(yīng)用服務(wù)器進(jìn)行處理。優(yōu)選的,所述請(qǐng)求為數(shù)據(jù)庫訪問請(qǐng)求或應(yīng)用服務(wù)器訪問請(qǐng)求;將所述請(qǐng)求分配到所述元素代表的數(shù)據(jù)庫或應(yīng)用服務(wù)器進(jìn)行處理為將所述數(shù)據(jù)庫訪問請(qǐng)求分配到所述元素代表的數(shù)據(jù)庫來完成相應(yīng)的訪問操作,或者,將所述應(yīng)用服務(wù)器訪問請(qǐng)求分配到所述元素代表的應(yīng)用服務(wù)器庫來完成相應(yīng)的訪問操作。其中,若每個(gè)元素代表一種系統(tǒng)功能調(diào)用,則對(duì)所述請(qǐng)求執(zhí)行所述對(duì)應(yīng)操作包括為所述請(qǐng)求調(diào)用所述元素代表的系統(tǒng)功能。
優(yōu)選的,所述請(qǐng)求為網(wǎng)頁訪問請(qǐng)求,所述請(qǐng)求對(duì)應(yīng)的兩種不同的系統(tǒng)功能調(diào)用分別為調(diào)用改版前的網(wǎng)頁數(shù)據(jù)和調(diào)用改版后的網(wǎng)頁數(shù)據(jù);為所述請(qǐng)求調(diào)用所述元素代表的系統(tǒng)功能為為所述網(wǎng)頁訪問請(qǐng)求調(diào)用所述元素代表的網(wǎng)頁數(shù)據(jù)。
其中,若每個(gè)元素代表相同系統(tǒng)功能調(diào)用中的一種請(qǐng)求響應(yīng)方式,則對(duì)所述請(qǐng)求執(zhí)行所述對(duì)應(yīng)操作包括以所述元素代表的響應(yīng)方式響應(yīng)所述請(qǐng)求。
優(yōu)選的,所述請(qǐng)求為測(cè)試請(qǐng)求,所述請(qǐng)求對(duì)應(yīng)的相同系統(tǒng)功能調(diào)用為根據(jù)所述測(cè)試請(qǐng)求生成模擬請(qǐng)求;則每個(gè)元素代表生成一種類型的模擬請(qǐng)求;以所述元素代表的響應(yīng)方式響應(yīng)所述請(qǐng)求為生成所述元素所代表類型的模擬請(qǐng)求。
本申請(qǐng)還提供了一種請(qǐng)求處理裝置,包括
元素設(shè)置模塊,用于針對(duì)同一請(qǐng)求對(duì)應(yīng)的多種不同操作,按照每種操作的權(quán)重大小分別設(shè)置各種操作相應(yīng)權(quán) 重?cái)?shù)量的元素,每個(gè)元素對(duì)應(yīng)一個(gè)操作;
元素抽取模塊,用于當(dāng)接收到請(qǐng)求時(shí),從設(shè)置的元素中隨機(jī)抽取一個(gè)元素;
操作執(zhí)行模塊,用于根據(jù)抽取出來的元素所代表的對(duì)應(yīng)操作,對(duì)所述請(qǐng)求執(zhí)行所述對(duì)應(yīng)操作。
其中,若每個(gè)元素代表一個(gè)數(shù)據(jù)庫或應(yīng)用服務(wù)器,則所述操作執(zhí)行模塊將所述請(qǐng)求分配到所述元素代表的數(shù)據(jù)庫或應(yīng)用服務(wù)器進(jìn)行處理;
若每個(gè)元素代表一種系統(tǒng)功能調(diào)用,則所述操作執(zhí)行模塊為所述請(qǐng)求調(diào)用所述元素代表的系統(tǒng)功能;
若每個(gè)元素代表相同系統(tǒng)功能調(diào)用中的一種請(qǐng)求響應(yīng)方式,則所述操作執(zhí)行模塊以所述元素代表的響應(yīng)方式響應(yīng)所述請(qǐng)求。
本申請(qǐng)還提供了一種服務(wù)器系統(tǒng),包括上述的請(qǐng)求處理裝置。
與現(xiàn)有技術(shù)相比,本申請(qǐng)包括以下優(yōu)點(diǎn)
首先,本申請(qǐng)按照不同操作的權(quán)重大小分別設(shè)置相應(yīng)個(gè)數(shù)的元素,如權(quán)重總分為 10分,A操作所占的權(quán)重是3分,B操作所占的權(quán)重是7分,則對(duì)應(yīng)A操作設(shè)置3個(gè)元素,對(duì)應(yīng)B操作設(shè)置7個(gè)元素。然后,在接收到請(qǐng)求后隨機(jī)抽取一個(gè)元素,對(duì)所述請(qǐng)求執(zhí)行該元素所代表的對(duì)應(yīng)操作,如抽取到的元素代表A操作,則執(zhí)行A操作。從統(tǒng)計(jì)概率上來看,這種隨機(jī)抽取的方式能夠保證一個(gè)請(qǐng)求執(zhí)行A操作的概率占30 %左右,執(zhí)行B操作的概率占70 % 左右。經(jīng)過測(cè)試,這種方法能夠較好地按照權(quán)重執(zhí)行不同操作,從而讓權(quán)重高的操作得到更多的執(zhí)行機(jī)會(huì),而權(quán)重低的操作的執(zhí)行機(jī)會(huì)則相對(duì)較少。
其次,本申請(qǐng)適用于多種應(yīng)用,如可以將請(qǐng)求按照權(quán)重分配給不同的服務(wù)器處理, 還可以為請(qǐng)求按照權(quán)重調(diào)用不同的系統(tǒng)功能,或者對(duì)于相同系統(tǒng)功能的調(diào)用還可以不同的方式響應(yīng),等等。
當(dāng)然,實(shí)施本申請(qǐng)的任一產(chǎn)品不一定需要同時(shí)達(dá)到以上所述的所有優(yōu)點(diǎn)。


圖I是現(xiàn)有技術(shù)中采用硬件負(fù)載均衡的web站點(diǎn)的服務(wù)器部署結(jié)構(gòu)圖2是本申請(qǐng)實(shí)施例所述一種請(qǐng)求處理方法的流程圖3是本申請(qǐng)實(shí)施例所述一種主備庫的部署結(jié)構(gòu)圖4是本申請(qǐng)實(shí)施例所述一種處理數(shù)據(jù)庫查詢請(qǐng)求的方法流程圖5是圖4所示實(shí)施例中得到的數(shù)組示意圖;圖6是本申請(qǐng)實(shí)施例所述一種請(qǐng)求處理裝置的結(jié)構(gòu)圖。
具體實(shí)施例方式為使本申請(qǐng)的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖和具體實(shí)施方式
對(duì)本申請(qǐng)作進(jìn)一步詳細(xì)的說明。在很多應(yīng)用場(chǎng)景下,希望以不同的方式響應(yīng)對(duì)系統(tǒng)功能的調(diào)用,或者將對(duì)系統(tǒng)功能的調(diào)用分配到不同的服務(wù)器上,同時(shí)在響應(yīng)和分配請(qǐng)求的時(shí)候帶有權(quán)重的概念。例如,對(duì)于相同的系統(tǒng)功能的調(diào)用有兩種不同的響應(yīng)方式A和B,其中希望有60%的請(qǐng)求以A方式進(jìn)行響應(yīng),而40%的請(qǐng)求以B方式響應(yīng)。又或者,有兩臺(tái)服務(wù)器A和B可以響應(yīng)相同的系統(tǒng)功能調(diào)用,其中希望有70%的調(diào)用由服務(wù)器A負(fù)責(zé)響應(yīng),而服務(wù)器B只負(fù)責(zé)對(duì)另外30 %的調(diào)用進(jìn)行響應(yīng)。這種情況下,就可以認(rèn)為響應(yīng)方式A相對(duì)于響應(yīng)方式B有更高的權(quán)重,同樣 的,服務(wù)器A相對(duì)于服務(wù)器B有更高的權(quán)重,因?yàn)樗鼈円幢粓?zhí)行的次數(shù)更多,要么需要承擔(dān)更多的系統(tǒng)功能調(diào)用。針對(duì)上述這種需求,本申請(qǐng)?zhí)岢鲆环N簡(jiǎn)單有效的請(qǐng)求處理方法,能夠?qū)φ?qǐng)求按照權(quán)重來執(zhí)行不同的操作,讓權(quán)重大的操作執(zhí)行次數(shù)更多,而權(quán)重小的操作則執(zhí)行次數(shù)相對(duì)較少。下面通過實(shí)施例對(duì)本申請(qǐng)所述方法的實(shí)現(xiàn)流程進(jìn)行詳細(xì)說明。參照?qǐng)D2,是本申請(qǐng)實(shí)施例所述一種請(qǐng)求處理方法的流程圖。步驟201,針對(duì)同一請(qǐng)求對(duì)應(yīng)的多種不同操作,按照各種操作的權(quán)重大小分別設(shè)置各種操作相應(yīng)權(quán)重?cái)?shù)量的元素,每個(gè)元素對(duì)應(yīng)一個(gè)操作;所述同一請(qǐng)求對(duì)應(yīng)的多種不同操作是指,同一請(qǐng)求可能會(huì)對(duì)應(yīng)著多種不同操作,但對(duì)該請(qǐng)求只會(huì)執(zhí)行其中一種操作。其中,所述操作可以是分配請(qǐng)求,也可以是以不同方式響應(yīng)請(qǐng)求,或者是其他的操作。舉例來說,假設(shè)針對(duì)同一請(qǐng)求可以執(zhí)行兩種不同的操作A和B,每種操作的執(zhí)行機(jī)會(huì)根據(jù)各自權(quán)重的大小有多有少。如權(quán)重總分為10分,A操作所占的權(quán)重是3分,B操作所占的權(quán)重是7分,則所述按照每種操作的權(quán)重大小分別設(shè)置各種操作相應(yīng)權(quán)重?cái)?shù)量的元素是指對(duì)應(yīng)A操作設(shè)置3個(gè)元素,這3個(gè)元素都以a表示;對(duì)應(yīng)B操作設(shè)置7個(gè)元素,這7個(gè)元素都以b表示。這樣,總共10個(gè)元素中的每個(gè)元素都代表一個(gè)操作,其中有3個(gè)a元素代表A操作,即表示A操作的權(quán)重是3,同樣有7個(gè)b元素代表B操作,即表示B操作的權(quán)重是7。進(jìn)一步優(yōu)選的,在實(shí)際應(yīng)用中,上述設(shè)置的這些元素可以數(shù)組的形式進(jìn)行存儲(chǔ),因?yàn)閿?shù)組是相對(duì)簡(jiǎn)單的一種存儲(chǔ)方式,在查找和調(diào)用這些元素時(shí)也十分方便。當(dāng)然,也可以用稍微復(fù)雜的鏈表或其他方式進(jìn)行存儲(chǔ),本實(shí)施例對(duì)此不做限定。步驟202,當(dāng)接收到請(qǐng)求時(shí),從設(shè)置的元素中隨機(jī)抽取一個(gè)元素;即針對(duì)接收到的請(qǐng)求,從上述設(shè)置的所有元素中隨機(jī)抽取出一個(gè)元素。在實(shí)際應(yīng)用中,采用各種隨機(jī)算法都可實(shí)現(xiàn),例如采用Jave語言實(shí)現(xiàn),則可以直接利用Jave中自帶的隨機(jī)方法進(jìn)行隨機(jī)抽取。實(shí)際應(yīng)用中,可以在接收到請(qǐng)求之后,再從設(shè)置的元素中隨機(jī)抽取一個(gè)元素;也可以預(yù)先進(jìn)行隨機(jī)抽取,然后將所述預(yù)先抽取出來的元素分配給下一個(gè)接收到的請(qǐng)求。
步驟203,根據(jù)抽取出來的元素所代表的對(duì)應(yīng)操作,對(duì)所述請(qǐng)求執(zhí)行所述對(duì)應(yīng)操作。
由于是隨機(jī)抽取,因此抽取出來的元素可能是a,也可能是b。如果是元素a,則執(zhí)行A操作;如果是元素b,則執(zhí)行B操作。從統(tǒng)計(jì)概率上來看,這種隨機(jī)抽取的方式能夠保證一個(gè)請(qǐng)求執(zhí)行A操作的概率占30%左右,執(zhí)行B操作的概率占70%左右,也即對(duì)于同樣的請(qǐng)求,執(zhí)行A操作的權(quán)重是3,執(zhí)行B操作的權(quán)重是7。
經(jīng)過測(cè)試,上述這種按照權(quán)重大小設(shè)置相應(yīng)個(gè)數(shù)的元素的方法能夠較好地按照權(quán)重執(zhí)行不同操作,從而讓權(quán)重高的操作得到更多的執(zhí)行機(jī)會(huì),而權(quán)重低的操作的執(zhí)行機(jī)會(huì)則相對(duì)較少。
如前所述,本申請(qǐng)所述內(nèi)容適用于多種應(yīng)用場(chǎng)景,如可以將請(qǐng)求按照權(quán)重分配給不同的服務(wù)器處理,還可以為請(qǐng)求按照權(quán)重調(diào)用不同的系統(tǒng)功能,或者對(duì)于相同系統(tǒng)功能的調(diào)用以不同的方式響應(yīng),等等。對(duì)于各種不同的應(yīng)用場(chǎng)景,下面列舉幾種處理方式,如下
I)若每個(gè)元素代表一個(gè)數(shù)據(jù)庫或應(yīng)用服務(wù)器,則對(duì)所述請(qǐng)求執(zhí)行所述對(duì)應(yīng)操作包括將所述請(qǐng)求分配到所述元素代表的數(shù)據(jù)庫或應(yīng)用服務(wù)器進(jìn)行處理。
2)若每個(gè)元素代表一種系統(tǒng)功能調(diào)用,則對(duì)所述請(qǐng)求執(zhí)行所述對(duì)應(yīng)操作包括 為所述請(qǐng)求調(diào)用所述元素·代表的系統(tǒng)功能。
3)若每個(gè)元素代表相同系統(tǒng)功能調(diào)用中的一種請(qǐng)求響應(yīng)方式,則對(duì)所述請(qǐng)求執(zhí)行所述對(duì)應(yīng)操作包括以所述元素代表的響應(yīng)方式響應(yīng)所述請(qǐng)求。
針對(duì)上述列舉的三種應(yīng)用場(chǎng)景,為了使本領(lǐng)域技術(shù)人員更加了解本申請(qǐng)的內(nèi)容, 下面分別舉例進(jìn)行詳細(xì)的解釋說明。
針對(duì)第I)種處理方式,下面以按照權(quán)重分配數(shù)據(jù)庫操作請(qǐng)求為例來說明具體的執(zhí)行過程。
在這種情況下,假設(shè)所述請(qǐng)求為數(shù)據(jù)庫訪問請(qǐng)求或應(yīng)用服務(wù)器訪問請(qǐng)求;
則將所述請(qǐng)求分配到所述元素代表的數(shù)據(jù)庫或應(yīng)用服務(wù)器進(jìn)行處理為
將所述數(shù)據(jù)庫訪問請(qǐng)求分配到所述元素代表的數(shù)據(jù)庫來完成相應(yīng)的訪問操作,或者,將所述應(yīng)用服務(wù)器訪問請(qǐng)求分配到所述元素代表的應(yīng)用服務(wù)器庫來完成相應(yīng)的訪問操作。
舉例如下
在本實(shí)施例的數(shù)據(jù)庫設(shè)計(jì)方案中,為了得到比較好的可靠性和可用性,將采用主備庫的方案。
參照?qǐng)D3,是本申請(qǐng)實(shí)施例所述一種主備庫的部署結(jié)構(gòu)圖。
主庫和備庫保存有相同的數(shù)據(jù),其中,對(duì)數(shù)據(jù)的更新操作全部由主庫完成,主庫定期將變化了的數(shù)據(jù)同步到備庫上。而備庫則只提供查詢能力,這樣就可以用多臺(tái)數(shù)據(jù)庫服務(wù)器來為相同的一個(gè)數(shù)據(jù)集合提供更新和查詢的服務(wù),從而可以為更多的用戶提供服務(wù)。
在這種情況下,希望落在主庫上的查詢請(qǐng)求少一點(diǎn),甚至是沒有查詢請(qǐng)求,因?yàn)橹鲙煲袚?dān)所有的更新請(qǐng)求的執(zhí)行,同時(shí)還要負(fù)責(zé)向備庫傳送變化了的數(shù)據(jù),所以為了讓主庫有更多的系統(tǒng)資源去執(zhí)行更新操作和數(shù)據(jù)同步操作,需要減少或者屏蔽分配到主庫的查詢請(qǐng)求,而是將這些查詢請(qǐng)求發(fā)送給備庫,讓備庫來完成查找并返回?cái)?shù)據(jù)?;谏鲜鲋鱾鋷斓姆桨?,假設(shè)權(quán)重的總分是10分,現(xiàn)在有一臺(tái)主庫M,兩臺(tái)備庫A和B,而希望主庫M承擔(dān)20 %的查詢請(qǐng)求,即權(quán)重為2,而每個(gè)備庫各自承擔(dān)40 %的查詢請(qǐng)求,即權(quán)重分別為4。對(duì)數(shù)據(jù)庫查詢請(qǐng)求的處理如下參照?qǐng)D4,其為本申請(qǐng)實(shí)施例所述一種處理數(shù)據(jù)庫查詢請(qǐng)求的方法流程圖。步驟401,創(chuàng)建一個(gè)擁有10個(gè)元素的數(shù)組,向這個(gè)數(shù)組中插入2個(gè)代表主庫的元素,并將這2個(gè)元素命名為M ;步驟402,向步驟401中創(chuàng)建的數(shù)組中插入4個(gè)代表備庫A的元素,并將這4個(gè)元素命名為Sa ; 步驟403,向步驟401中創(chuàng)建的數(shù)組中插入4個(gè)代表備庫B的元素,并將這4個(gè)元素命名為Sb ;執(zhí)行完步驟401、402和403之后,會(huì)得到一個(gè)如圖5所示的數(shù)組;步驟404,將這個(gè)數(shù)組打亂;所述“打亂”是指將數(shù)組中的元素位置擾亂,將原來位置上的元素放到其他任意位置上。打亂數(shù)組中各元素的目的是為了下一步的隨機(jī)抽取。實(shí)際應(yīng)用中可以采用多種方法將數(shù)組中的元素打亂,例如采用Jave語言實(shí)現(xiàn),則可以直接利用Jave中自帶的打亂方法。步驟405,對(duì)于某一個(gè)查詢請(qǐng)求,隨機(jī)從這個(gè)數(shù)組中抽取一個(gè)元素出來,然后檢查這個(gè)元素是代表主庫M還是代表備庫A或者B,隨后將查詢請(qǐng)求分配到該元素所述代表的數(shù)據(jù)庫,由該數(shù)據(jù)庫響應(yīng)該查詢請(qǐng)求。每次有查詢請(qǐng)求到達(dá),都會(huì)運(yùn)行上述的步驟405,從這個(gè)數(shù)組中隨機(jī)抽取出一個(gè)元素,然后將請(qǐng)求發(fā)送給這個(gè)元素代表的數(shù)據(jù)庫。通過測(cè)試發(fā)現(xiàn),這種方法能夠使分配到主庫的查詢請(qǐng)求占總請(qǐng)求數(shù)的20%左右,分配到備庫A和B的查詢請(qǐng)求分別在40%左右。針對(duì)第2)種處理方式,以按照權(quán)重調(diào)用不同的系統(tǒng)功能為例來說明具體的執(zhí)行過程。在這種情況下,假設(shè)所述請(qǐng)求為網(wǎng)頁訪問請(qǐng)求,所述請(qǐng)求對(duì)應(yīng)的兩種不同的系統(tǒng)功能調(diào)用分別為調(diào)用改版前的網(wǎng)頁數(shù)據(jù)和調(diào)用改版后的網(wǎng)頁數(shù)據(jù);則為所述請(qǐng)求調(diào)用所述元素代表的系統(tǒng)功能為為所述網(wǎng)頁訪問請(qǐng)求調(diào)用所述元素代表的網(wǎng)頁數(shù)據(jù)。舉例如下與上述圖4所示方法類似的,對(duì)于需要根據(jù)權(quán)重調(diào)用不同的系統(tǒng)功能的場(chǎng)景,其執(zhí)行過程基本保持不變,只需要對(duì)步驟405略作修改,即將分配查詢請(qǐng)求修改為調(diào)用數(shù)組中抽取出來的元素所代表的系統(tǒng)功能。這樣,權(quán)重高的系統(tǒng)功能被執(zhí)行的次數(shù)相對(duì)較多,而權(quán)重低的系統(tǒng)功能被執(zhí)行的次數(shù)相對(duì)較少。例如,假設(shè)一個(gè)web站點(diǎn)的網(wǎng)頁正在進(jìn)行改版,為了不影響多數(shù)用戶的使用體驗(yàn),要求對(duì)20 %的用戶請(qǐng)求返回改版后的網(wǎng)頁B,而對(duì)80 %的用戶請(qǐng)求仍返回原來改版前的網(wǎng)頁A。此時(shí),對(duì)同一網(wǎng)頁訪問請(qǐng)求調(diào)用不同的系統(tǒng)功能是指調(diào)用改版前的網(wǎng)頁A,還是調(diào)用改版后的網(wǎng)頁B。對(duì)于用戶而言,并不關(guān)心調(diào)用哪種網(wǎng)頁,但對(duì)于站點(diǎn)開發(fā)人員而言,則希望通過這20%的用戶反饋來繼續(xù)完善網(wǎng)頁的內(nèi)容。在這種情況下,利用上述方法就可以對(duì)20%的用戶請(qǐng)求調(diào)用網(wǎng)頁B,而對(duì)80%的用戶請(qǐng)求調(diào)用網(wǎng)頁A。針對(duì)第3)種處理方式,以按照權(quán)重分配請(qǐng)求響應(yīng)方式為例來說明具體的執(zhí)行過程。在這種情況下,假設(shè)所述請(qǐng)求為測(cè)試請(qǐng)求,所述請(qǐng)求對(duì)應(yīng)的相同系統(tǒng)功能調(diào)用為根據(jù)所述測(cè)試請(qǐng)求生成模擬請(qǐng)求;則每個(gè)元素代表生成一種類型的模擬請(qǐng)求;以所述元素代表的響應(yīng)方式響應(yīng)所述請(qǐng)求為生成所述元素所代表類型的模擬請(qǐng)求。舉例如下 對(duì)于相同的系統(tǒng)功能的調(diào)用,利用上述圖4所示方法,還可以按照權(quán)重以不同的響應(yīng)方式進(jìn)行響應(yīng)。例如,在系統(tǒng)的性能測(cè)試中,需要模擬各種類型的請(qǐng)求以測(cè)試系統(tǒng)對(duì)這些請(qǐng)求的處理能力,這就要求在測(cè)試過程中首先根據(jù)測(cè)試請(qǐng)求生成這些各種類型的模擬請(qǐng)求,而測(cè)試人員希望其中10%的模擬請(qǐng)求為類型A,40 %的模擬請(qǐng)求為類型B,而50%的模擬請(qǐng)求為類型C。這種情況下,當(dāng)對(duì)測(cè)試請(qǐng)求進(jìn)行處理時(shí),利用上述方法,就可以根據(jù)權(quán)重生成不同類型的模擬請(qǐng)求,如隨機(jī)抽取出的元素代表類型C,則生成類型為C的模擬請(qǐng)求。此外,上述方法還可以應(yīng)用到其他類似的場(chǎng)景中,本申請(qǐng)?jiān)诖瞬辉僖灰涣信e。需要說明的是,對(duì)于前述的方法實(shí)施例,為了簡(jiǎn)單描述,故將其都表述為一系列的動(dòng)作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本申請(qǐng)并不受所描述的動(dòng)作順序的限制,因?yàn)橐罁?jù)本申請(qǐng),某些步驟可以采用其他順序或者同時(shí)進(jìn)行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書中所描述的實(shí)施例均屬于優(yōu)選實(shí)施例,所涉及的動(dòng)作并不一定是本申請(qǐng)所必須的?;谏鲜龇椒▽?shí)施例的說明,本申請(qǐng)還提供了相應(yīng)的請(qǐng)求處理裝置實(shí)施例,來實(shí)現(xiàn)上述方法實(shí)施例所述的內(nèi)容。參照?qǐng)D6,是本申請(qǐng)實(shí)施例所述一種請(qǐng)求處理裝置的結(jié)構(gòu)圖。所述請(qǐng)求處理裝置可以包括元素設(shè)置模塊61、元素抽取模塊62和操作執(zhí)行模塊63,其中元素設(shè)置模塊61,用于針對(duì)同一請(qǐng)求對(duì)應(yīng)的多種不同操作,按照每種操作的權(quán)重大小分別設(shè)置各種操作相應(yīng)權(quán)重?cái)?shù)量的元素,每個(gè)元素對(duì)應(yīng)一個(gè)操作;元素抽取模塊62,用于當(dāng)接收到請(qǐng)求時(shí),從設(shè)置的元素中隨機(jī)抽取一個(gè)元素;操作執(zhí)行模塊63,用于根據(jù)抽取出來的元素所代表的對(duì)應(yīng)操作,對(duì)所述請(qǐng)求執(zhí)行所述對(duì)應(yīng)操作。此外,所述請(qǐng)求處理裝置還可以包括一元素打亂模塊,用于打亂所有的元素,然后觸發(fā)所述元素抽取模塊62。優(yōu)選的,所述元素設(shè)置模塊61將元素以數(shù)組存儲(chǔ)。進(jìn)一步的,若每個(gè)元素代表一個(gè)數(shù)據(jù)庫或應(yīng)用服務(wù)器,則所述操作執(zhí)行模塊63將所述請(qǐng)求分配到所述元素代表的數(shù)據(jù)庫或應(yīng)用服務(wù)器進(jìn)行處理;例如,若所述請(qǐng)求為數(shù)據(jù)庫訪問請(qǐng)求或應(yīng)用服務(wù)器訪問請(qǐng)求;則所述操作執(zhí)行模塊63將所述請(qǐng)求分配到所述元素代表的數(shù)據(jù)庫或應(yīng)用服務(wù)器進(jìn)行處理為將所述數(shù)據(jù)庫訪問請(qǐng)求分配到所述元素代表的數(shù)據(jù)庫來完成相應(yīng)的訪問操作,或者,將所述應(yīng)用服務(wù)器訪問請(qǐng)求分配到所述元素代表的應(yīng)用服務(wù)器庫來完成相應(yīng)的訪問操作。
若每個(gè)元素代表一種系統(tǒng)功能調(diào)用,則所述操作執(zhí)行模塊63為所述請(qǐng)求調(diào)用所述元素代表的系統(tǒng)功能;
例如,若所述請(qǐng)求為網(wǎng)頁訪問請(qǐng)求,所述請(qǐng)求對(duì)應(yīng)的兩種不同的系統(tǒng)功能調(diào)用分別為調(diào)用改版前的網(wǎng)頁數(shù)據(jù)和調(diào)用改版后的網(wǎng)頁數(shù)據(jù);則所述操作執(zhí)行模塊63為所述請(qǐng)求調(diào)用所述元素代表的系統(tǒng)功能為為所述網(wǎng)頁訪問請(qǐng)求調(diào)用所述元素代表的網(wǎng)頁數(shù)據(jù)。
若每個(gè)元素代表相同系統(tǒng)功能調(diào)用中的一種請(qǐng)求響應(yīng)方式,則所述操作執(zhí)行模塊 63以所述元素代表的響應(yīng)方式響應(yīng)所述請(qǐng)求;
例如,若所述請(qǐng)求為測(cè)試請(qǐng)求,所述請(qǐng)求對(duì)應(yīng)的相同系統(tǒng)功能調(diào)用為根據(jù)所述測(cè)試請(qǐng)求生成模擬請(qǐng)求;則每個(gè)元素代表生成一種類型的模擬請(qǐng)求;所述操作執(zhí)行模塊63以所述元素代表的響應(yīng)方式響應(yīng)所述請(qǐng)求為生成所述元素所代表類型的模擬請(qǐng)求。
對(duì)于上述的請(qǐng)求處理裝置實(shí)施例而言,由于其與方法實(shí)施例基本相似,所以描述的比較簡(jiǎn)單,相關(guān)之處參見方法實(shí)施例的部分說明即可。
基于上述的請(qǐng)求處理裝置,本申請(qǐng)實(shí)施例還提供了一種包含該請(qǐng)求處理裝置的服務(wù)器系統(tǒng),所述服務(wù)器系統(tǒng)可以是數(shù)據(jù)庫服務(wù)器,也可以是其他的應(yīng)用服務(wù)器。
綜上所述,所述請(qǐng)求處理裝置能夠較好地按照權(quán)重執(zhí)行不同操作,從而讓權(quán)重高的操作得到更多的執(zhí)行機(jī)會(huì),而權(quán)重低的操作的執(zhí)行機(jī)會(huì)則相對(duì)較少。
本說明書中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似的部分互相參見即可。
以上對(duì)本申請(qǐng)所提供的一種請(qǐng)求處理方法、裝置及服務(wù)器系統(tǒng),進(jìn)行了詳細(xì)介紹, 本文中應(yīng)用了具體個(gè)例對(duì)本申請(qǐng)的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只是用于幫助理解本申請(qǐng)的方法及其核心思想;同時(shí),對(duì)于本領(lǐng)域的一般技術(shù)人員,依據(jù)本申請(qǐng)的思想,在具體實(shí)施方式
及應(yīng)用范圍上均會(huì)有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對(duì)本申請(qǐng)的限制。
權(quán)利要求
1.一種請(qǐng)求處理方法,其特征在于,包括 針對(duì)同一請(qǐng)求對(duì)應(yīng)的多種不同操作,按照每種操作的權(quán)重大小分別設(shè)置各種操作相應(yīng)權(quán)重?cái)?shù)量的元素,每個(gè)元素對(duì)應(yīng)一個(gè)操作; 當(dāng)接收到請(qǐng)求時(shí),從設(shè)置的元素中隨機(jī)抽取一個(gè)元素; 根據(jù)抽取出來的元素所代表的對(duì)應(yīng)操作,對(duì)所述請(qǐng)求執(zhí)行所述對(duì)應(yīng)操作。
2.根據(jù)權(quán)利要求I所述的方法,其特征在于 若每個(gè)元素代表一個(gè)數(shù)據(jù)庫或應(yīng)用服務(wù)器,則對(duì)所述請(qǐng)求執(zhí)行所述對(duì)應(yīng)操作包括 將所述請(qǐng)求分配到所述元素代表的數(shù)據(jù)庫或應(yīng)用服務(wù)器進(jìn)行處理。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于 所述請(qǐng)求為數(shù)據(jù)庫訪問請(qǐng)求或應(yīng)用服務(wù)器訪問請(qǐng)求; 將所述請(qǐng)求分配到所述元素代表的數(shù)據(jù)庫或應(yīng)用服務(wù)器進(jìn)行處理為 將所述數(shù)據(jù)庫訪問請(qǐng)求分配到所述元素代表的數(shù)據(jù)庫來完成相應(yīng)的訪問操作,或者,將所述應(yīng)用服務(wù)器訪問請(qǐng)求分配到所述元素代表的應(yīng)用服務(wù)器庫來完成相應(yīng)的訪問操作。
4.根據(jù)權(quán)利要求I所述的方法,其特征在于 若每個(gè)元素代表一種系統(tǒng)功能調(diào)用,則對(duì)所述請(qǐng)求執(zhí)行所述對(duì)應(yīng)操作包括 為所述請(qǐng)求調(diào)用所述元素代表的系統(tǒng)功能。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于 所述請(qǐng)求為網(wǎng)頁訪問請(qǐng)求,所述請(qǐng)求對(duì)應(yīng)的兩種不同的系統(tǒng)功能調(diào)用分別為調(diào)用改版前的網(wǎng)頁數(shù)據(jù)和調(diào)用改版后的網(wǎng)頁數(shù)據(jù); 為所述請(qǐng)求調(diào)用所述元素代表的系統(tǒng)功能為 為所述網(wǎng)頁訪問請(qǐng)求調(diào)用所述元素代表的網(wǎng)頁數(shù)據(jù)。
6.根據(jù)權(quán)利要求I或4所述的方法,其特征在于 若每個(gè)元素代表相同系統(tǒng)功能調(diào)用中的一種請(qǐng)求響應(yīng)方式,則對(duì)所述請(qǐng)求執(zhí)行所述對(duì)應(yīng)操作包括 以所述元素代表的響應(yīng)方式響應(yīng)所述請(qǐng)求。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于 所述請(qǐng)求為測(cè)試請(qǐng)求,所述請(qǐng)求對(duì)應(yīng)的相同系統(tǒng)功能調(diào)用為根據(jù)所述測(cè)試請(qǐng)求生成模擬請(qǐng)求; 則每個(gè)元素代表生成一種類型的模擬請(qǐng)求; 以所述元素代表的響應(yīng)方式響應(yīng)所述請(qǐng)求為 生成所述元素所代表類型的模擬請(qǐng)求。
8.—種請(qǐng)求處理裝置,其特征在于,包括 元素設(shè)置模塊,用于針對(duì)同一請(qǐng)求對(duì)應(yīng)的多種不同操作,按照每種操作的權(quán)重大小分別設(shè)置各種操作相應(yīng)權(quán)重?cái)?shù)量的元素,每個(gè)元素對(duì)應(yīng)一個(gè)操作; 元素抽取模塊,用于當(dāng)接收到請(qǐng)求時(shí),從設(shè)置的元素中隨機(jī)抽取一個(gè)元素; 操作執(zhí)行模塊,用于根據(jù)抽取出來的元素所代表的對(duì)應(yīng)操作,對(duì)所述請(qǐng)求執(zhí)行所述對(duì)應(yīng)操作。
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于 若每個(gè)元素代表一個(gè)數(shù)據(jù)庫或應(yīng)用服務(wù)器,則所述操作執(zhí)行模塊將所述請(qǐng)求分配到所述元素代表的數(shù)據(jù)庫或應(yīng)用服務(wù)器進(jìn)行處理; 若每個(gè)元素代表一種系統(tǒng)功能調(diào)用,則所述操作執(zhí)行模塊為所述請(qǐng)求調(diào)用所述元素代表的系統(tǒng)功能; 若每個(gè)元素代表相同系統(tǒng)功能調(diào)用中的一種請(qǐng)求響應(yīng)方式,則所述操作執(zhí)行模塊以所述元素代表的響應(yīng)方式響應(yīng)所述請(qǐng)求。
10. 一種服務(wù)器系統(tǒng),其特征在于,包括上述權(quán)利要求8或9任一權(quán)利要求所述的請(qǐng)求處理裝置。
全文摘要
本申請(qǐng)?zhí)峁┝艘环N請(qǐng)求處理方法、裝置及服務(wù)器系統(tǒng),以解決現(xiàn)有技術(shù)不能對(duì)請(qǐng)求按比例或者按權(quán)重執(zhí)行不同操作的問題。所述方法包括針對(duì)同一請(qǐng)求對(duì)應(yīng)的多種不同操作,按照每種操作的權(quán)重大小分別設(shè)置各種操作相應(yīng)權(quán)重?cái)?shù)量的元素,每個(gè)元素對(duì)應(yīng)一個(gè)操作;當(dāng)接收到請(qǐng)求時(shí),從設(shè)置的元素中隨機(jī)抽取一個(gè)元素;根據(jù)抽取出來的元素所代表的對(duì)應(yīng)操作,對(duì)所述請(qǐng)求執(zhí)行所述對(duì)應(yīng)操作。本申請(qǐng)能夠較好地按照權(quán)重執(zhí)行不同操作,從而讓權(quán)重高的操作得到更多的執(zhí)行機(jī)會(huì),而權(quán)重低的操作的執(zhí)行機(jī)會(huì)則相對(duì)較少。
文檔編號(hào)H04L29/08GK102932389SQ20111022955
公開日2013年2月13日 申請(qǐng)日期2011年8月11日 優(yōu)先權(quán)日2011年8月11日
發(fā)明者馬天笑 申請(qǐng)人:阿里巴巴集團(tuán)控股有限公司