一種處理請(qǐng)求信息的方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及互聯(lián)網(wǎng)信息技術(shù)領(lǐng)域,尤其涉及一種處理請(qǐng)求信息的方法及裝置。
【背景技術(shù)】
[0002]目前,在互聯(lián)網(wǎng)服務(wù)中,每個(gè)服務(wù)系統(tǒng)都有自己的最大服務(wù)吞吐量。當(dāng)請(qǐng)求信息的數(shù)量超過服務(wù)的最大吞吐量時(shí),會(huì)導(dǎo)致服務(wù)系統(tǒng)不穩(wěn)定,甚至出現(xiàn)服務(wù)系統(tǒng)不可用或者服務(wù)系統(tǒng)崩潰的情況。由于互聯(lián)網(wǎng)服務(wù)的多變和快速發(fā)展,以及業(yè)務(wù)需求逐漸增多,出現(xiàn)請(qǐng)求量洪泛情況會(huì)越來越頻繁。
[0003]現(xiàn)有技術(shù)中,通過對(duì)服務(wù)系統(tǒng)進(jìn)行機(jī)器擴(kuò)容來應(yīng)對(duì)互聯(lián)網(wǎng)服務(wù)系統(tǒng)洪泛情況,SP通過大容量的服務(wù)系統(tǒng)處理更多的請(qǐng)求信息。
[0004]然而,采用現(xiàn)有技術(shù)處理服務(wù)系統(tǒng)洪泛情況時(shí),導(dǎo)致硬件浪費(fèi),資源利用率低。
【發(fā)明內(nèi)容】
[0005]本發(fā)明的實(shí)施例提供一種處理請(qǐng)求信息的方法及裝置,可以解決服務(wù)系統(tǒng)洪泛情況,并且節(jié)省硬件成本,提高資源利用率。
[0006]第一方面,本發(fā)明提供一種處理請(qǐng)求信息的方法,包括:
[0007]接收服務(wù)請(qǐng)求方發(fā)送的請(qǐng)求信息;
[0008]將所述請(qǐng)求信息發(fā)送給服務(wù)系統(tǒng)中第一業(yè)務(wù)系統(tǒng),所述第一業(yè)務(wù)系統(tǒng)為所述服務(wù)系統(tǒng)中任一個(gè)業(yè)務(wù)系統(tǒng);
[0009]當(dāng)接收到所述第一業(yè)務(wù)系統(tǒng)發(fā)送的拒絕消息時(shí),將所述請(qǐng)求信息依次發(fā)送給所述服務(wù)系統(tǒng)中的除所述第一業(yè)務(wù)系統(tǒng)之外的業(yè)務(wù)系統(tǒng),直到確定處理所述請(qǐng)求信息的業(yè)務(wù)系統(tǒng),所述拒絕消息為由于所述第一業(yè)務(wù)系統(tǒng)的負(fù)載大于或者等于預(yù)設(shè)負(fù)載而發(fā)送的拒絕接受所述請(qǐng)求信息的消息。
[0010]第二方面,本發(fā)明提供一種處理請(qǐng)求信息的裝置,包括:
[0011]接收單元,用于接收服務(wù)請(qǐng)求方發(fā)送的請(qǐng)求信息;
[0012]發(fā)送單元,用于將所述請(qǐng)求信息發(fā)送給服務(wù)系統(tǒng)中第一業(yè)務(wù)系統(tǒng),所述第一業(yè)務(wù)系統(tǒng)為所述服務(wù)系統(tǒng)中任一個(gè)業(yè)務(wù)系統(tǒng);
[0013]所述發(fā)送單元,還用于當(dāng)接收到所述第一業(yè)務(wù)系統(tǒng)發(fā)送的拒絕消息時(shí),將所述請(qǐng)求信息依次發(fā)送給所述服務(wù)系統(tǒng)中的除所述第一業(yè)務(wù)系統(tǒng)之外的業(yè)務(wù)系統(tǒng),直到確定處理所述請(qǐng)求信息的業(yè)務(wù)系統(tǒng),所述拒絕消息為由于所述第一業(yè)務(wù)系統(tǒng)的負(fù)載大于或者等于預(yù)設(shè)負(fù)載而發(fā)送的拒絕接受所述請(qǐng)求信息的消息。
[0014]本發(fā)明實(shí)施例提供一種處理請(qǐng)求信息的方法及裝置,通過將接收到的請(qǐng)求信息發(fā)送給服務(wù)系統(tǒng)中第一業(yè)務(wù)系統(tǒng),所述第一業(yè)務(wù)系統(tǒng)為所述服務(wù)系統(tǒng)中任一個(gè)業(yè)務(wù)系統(tǒng);當(dāng)接收到所述第一業(yè)務(wù)系統(tǒng)發(fā)送的拒絕消息時(shí),將所述請(qǐng)求信息依次發(fā)送給所述服務(wù)系統(tǒng)中的除所述第一業(yè)務(wù)系統(tǒng)之外的業(yè)務(wù)系統(tǒng),直到確定處理所述請(qǐng)求信息的業(yè)務(wù)系統(tǒng)。與現(xiàn)有技術(shù)中處理服務(wù)系統(tǒng)洪泛情況時(shí),導(dǎo)致硬件浪費(fèi),資源利用率低相比,本發(fā)明實(shí)施例通過代理服務(wù)器對(duì)請(qǐng)求信息進(jìn)行中轉(zhuǎn)緩存,并通過服務(wù)系統(tǒng)的負(fù)載反饋動(dòng)態(tài)分發(fā)請(qǐng)求信息,從而可以解決服務(wù)系統(tǒng)洪泛情況,并且節(jié)省硬件成本,提高資源利用率。
【附圖說明】
[0015]為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0016]圖1為本發(fā)明實(shí)施例提供的一種處理請(qǐng)求信息的方法的流程圖;
[0017]圖2為本發(fā)明實(shí)施例提供的另一種處理請(qǐng)求信息的方法的流程圖;
[0018]圖3為本發(fā)明實(shí)施例提供的一種處理請(qǐng)求信息的系統(tǒng)的示意圖;
[0019]圖4為本發(fā)明實(shí)施例提供的一種處理請(qǐng)求信息的裝置的框圖;
[0020]圖5為本發(fā)明實(shí)施例提供的另一種處理請(qǐng)求信息的裝置的框圖。
【具體實(shí)施方式】
[0021]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0022]本發(fā)明實(shí)施例提供一種處理請(qǐng)求信息的方法,該方法的執(zhí)行主體可以為代理服務(wù)器,如圖1所示,該方法包括:。
[0023]步驟101,接收服務(wù)請(qǐng)求方發(fā)送的請(qǐng)求信息。
[0024]可選的,本實(shí)施例中,當(dāng)接收到服務(wù)請(qǐng)求方發(fā)送的請(qǐng)求信息為I個(gè)時(shí),則可以直接處理此請(qǐng)求信息,即將此請(qǐng)求信息實(shí)時(shí)地發(fā)送給服務(wù)系統(tǒng),當(dāng)接收到服務(wù)請(qǐng)求方發(fā)送的請(qǐng)求信息為至少兩個(gè)時(shí),則將此請(qǐng)求信息先進(jìn)行緩存,以避免瞬時(shí)大量請(qǐng)求信息對(duì)服務(wù)系統(tǒng)的沖擊,從而可以提高服務(wù)系統(tǒng)的穩(wěn)定性和可用性。
[0025]步驟102,將所述請(qǐng)求信息發(fā)送給服務(wù)系統(tǒng)中第一業(yè)務(wù)系統(tǒng),所述第一業(yè)務(wù)系統(tǒng)為所述服務(wù)系統(tǒng)中任一個(gè)業(yè)務(wù)系統(tǒng)。
[0026]可選的,服務(wù)系統(tǒng)中包括多個(gè)業(yè)務(wù)系統(tǒng),每個(gè)業(yè)務(wù)系統(tǒng)都可以單獨(dú)地對(duì)請(qǐng)求信息進(jìn)行處理。
[0027]步驟103,當(dāng)接收到所述第一業(yè)務(wù)系統(tǒng)發(fā)送的拒絕消息時(shí),將所述請(qǐng)求信息依次發(fā)送給所述服務(wù)系統(tǒng)中的除所述第一業(yè)務(wù)系統(tǒng)之外的業(yè)務(wù)系統(tǒng),直到確定處理所述請(qǐng)求信息的業(yè)務(wù)系統(tǒng),所述拒絕消息為由于所述第一業(yè)務(wù)系統(tǒng)的負(fù)載大于或者等于預(yù)設(shè)負(fù)載而發(fā)送的拒絕接受所述請(qǐng)求信息的消息。
[0028]當(dāng)?shù)谝粯I(yè)務(wù)系統(tǒng)接收到代理服務(wù)器發(fā)送的請(qǐng)求信息時(shí),查看自身的負(fù)載,當(dāng)自身的負(fù)載超出預(yù)設(shè)負(fù)載時(shí),即負(fù)載較高時(shí),則拒絕接受請(qǐng)求信息,當(dāng)自身的負(fù)載未超出預(yù)設(shè)負(fù)載時(shí),則可以接受請(qǐng)求信息,并對(duì)請(qǐng)求信息進(jìn)行處理,這樣不會(huì)出現(xiàn)一個(gè)業(yè)務(wù)系統(tǒng)負(fù)載高,另一個(gè)業(yè)務(wù)系統(tǒng)無任務(wù)可處理的情況,從而可以提高服務(wù)系統(tǒng)的資源利用率。
[0029]可選的,當(dāng)代理服務(wù)器接收到第一業(yè)務(wù)系統(tǒng)發(fā)送的拒絕消息時(shí),則輪詢服務(wù)系統(tǒng)中的其他業(yè)務(wù)系統(tǒng),直到確定一個(gè)可以處理請(qǐng)求信息的業(yè)務(wù)系統(tǒng),從而可以使得服務(wù)系統(tǒng)中的各個(gè)業(yè)務(wù)系統(tǒng)負(fù)載均衡。使得服務(wù)系統(tǒng)穩(wěn)定性較高。
[0030]本發(fā)明實(shí)施例提供一種處理請(qǐng)求信息的方法,通過對(duì)接收到的請(qǐng)求信息依次發(fā)送給服務(wù)系統(tǒng)中的各個(gè)業(yè)務(wù)系統(tǒng),直到可以確定處理此請(qǐng)求信息的業(yè)務(wù)系統(tǒng),達(dá)到洪泛削峰的目的,使得可以解決服務(wù)系統(tǒng)洪泛情況,并且節(jié)省硬件成本,提高資源利用率。
[0031]本發(fā)明實(shí)施例提供另一種處理請(qǐng)求信息的方法,如圖2所示,該方法包括:
[0032]步驟201,服務(wù)請(qǐng)求方向代理服務(wù)器發(fā)送請(qǐng)求信息。
[0033]可選的,現(xiàn)有技術(shù)中服務(wù)請(qǐng)求方將請(qǐng)求信息直接發(fā)送給服務(wù)系統(tǒng),當(dāng)請(qǐng)求信息數(shù)量較大時(shí),則會(huì)導(dǎo)致服務(wù)系統(tǒng)不穩(wěn)定,甚至出現(xiàn)服務(wù)系統(tǒng)不可用或者服務(wù)系統(tǒng)雪崩等情況,本實(shí)施例服務(wù)請(qǐng)求方將請(qǐng)求信息發(fā)送給代理服務(wù)器,從而當(dāng)請(qǐng)求信息數(shù)量較大時(shí),可以進(jìn)行請(qǐng)求信息進(jìn)行中轉(zhuǎn)存儲(chǔ),然后再由服務(wù)系統(tǒng)進(jìn)行處理,使得可以達(dá)到洪泛削峰的目的,使得服務(wù)系統(tǒng)處理請(qǐng)求信息時(shí)穩(wěn)定性較高。
[0034]洪泛指服務(wù)系統(tǒng)在較短時(shí)間內(nèi),接收到的請(qǐng)求信息大于系統(tǒng)額定負(fù)載請(qǐng)求量。削峰指服務(wù)系統(tǒng)處理洪泛狀態(tài)時(shí),在額定負(fù)載情況下,仍能正常處理每一個(gè)請(qǐng)求信息。
[0035]步驟202,代理服務(wù)器接收服務(wù)請(qǐng)求方發(fā)送的請(qǐng)求信息。
[0036]步驟203,代理服務(wù)器將請(qǐng)求信息進(jìn)行緩存。
[0037]可選的,當(dāng)請(qǐng)求信息的數(shù)量為至少兩條時(shí),將所述請(qǐng)求信息進(jìn)行緩存??蛇x的,將請(qǐng)求信息緩存在內(nèi)存中。
[0038]當(dāng)請(qǐng)求信息的數(shù)量為I條時(shí),則可以不對(duì)請(qǐng)求信息進(jìn)行緩存,直接將此請(qǐng)求信息發(fā)送給服務(wù)系統(tǒng)進(jìn)行處理。
[0039]步驟204,代理服務(wù)器將請(qǐng)求信息隨機(jī)分發(fā)給所述服務(wù)系統(tǒng)中的第一業(yè)務(wù)系統(tǒng)。
[0040]可選的,第一業(yè)務(wù)系統(tǒng)可以為服務(wù)系統(tǒng)中的任一個(gè)業(yè)務(wù)系統(tǒng)。
[0041 ] 如圖3所示的示意圖,第一業(yè)務(wù)系統(tǒng)可以為服務(wù)系統(tǒng)中業(yè)務(wù)系統(tǒng)I,或者第一業(yè)務(wù)系統(tǒng)可以為服務(wù)系統(tǒng)中的業(yè)務(wù)系統(tǒng)2,或者第一業(yè)務(wù)系統(tǒng)可以為服務(wù)系統(tǒng)中的其他業(yè)務(wù)系統(tǒng)。例如,代理服務(wù)器可以將接收到的請(qǐng)求信息發(fā)送給業(yè)務(wù)系統(tǒng)1,或者代理服務(wù)器將緩存在內(nèi)存中的請(qǐng)求信息發(fā)送給業(yè)務(wù)系統(tǒng)I。
[0042]步驟205,第一業(yè)務(wù)系統(tǒng)接收到代理服務(wù)器發(fā)送的請(qǐng)求信息,判斷自身負(fù)載是否小于預(yù)設(shè)負(fù)載。
[0043]第一業(yè)務(wù)系統(tǒng)在接收到請(qǐng)求信息之后,首先判斷是否可以處理此請(qǐng)求信息,當(dāng)自身負(fù)載小于預(yù)設(shè)負(fù)載時(shí),則可以處理此請(qǐng)求信息,當(dāng)自身負(fù)載大于等于預(yù)設(shè)負(fù)載時(shí),則第一業(yè)務(wù)系統(tǒng)的負(fù)載較高,則可以拒絕接受此請(qǐng)求信息,以免導(dǎo)致第一業(yè)務(wù)系統(tǒng)處理請(qǐng)求信息過多,導(dǎo)致第一業(yè)務(wù)系統(tǒng)不穩(wěn)定,或者出現(xiàn)第一業(yè)務(wù)系統(tǒng)崩潰的情況。
[0044]可選的,負(fù)載即可以為第一業(yè)務(wù)系統(tǒng)正在處理的工作任務(wù)。預(yù)設(shè)負(fù)載可以為根據(jù)經(jīng)驗(yàn)設(shè)置的負(fù)載。
[0045]步驟206,當(dāng)自身負(fù)載大于或者等于預(yù)設(shè)負(fù)載時(shí),則向代理服務(wù)器發(fā)送拒絕消息。
[0046]所述拒絕消息為由于所述第一業(yè)務(wù)系統(tǒng)的負(fù)載大于或者等于預(yù)設(shè)負(fù)載而發(fā)送的拒絕接受所述請(qǐng)求信息的消息。
[0047]步驟207,當(dāng)自身負(fù)載小于預(yù)設(shè)負(fù)載時(shí),則處理所述請(qǐng)求信息,并將處理結(jié)果發(fā)送給代理服務(wù)器。
[0048]步驟208,代理服務(wù)器接收第一業(yè)務(wù)系統(tǒng)發(fā)送的拒絕消息,將請(qǐng)求信息發(fā)送依次發(fā)送給所述服務(wù)系統(tǒng)中的除所述第一業(yè)務(wù)系統(tǒng)之外的業(yè)務(wù)系統(tǒng),直到確定處理所述請(qǐng)求信息的業(yè)務(wù)系統(tǒng)。
[0049]可選的,當(dāng)?shù)谝粯I(yè)務(wù)系統(tǒng)的負(fù)載較高時(shí),則代理服務(wù)器輪詢其他業(yè)務(wù)系統(tǒng),當(dāng)其他業(yè)務(wù)系統(tǒng)接收到代理服務(wù)器發(fā)送的請(qǐng)求信息時(shí),根據(jù)自身負(fù)載判斷是否小于預(yù)設(shè)負(fù)載,當(dāng)自身負(fù)載小于預(yù)設(shè)負(fù)載時(shí),則對(duì)請(qǐng)求信息進(jìn)行處理,并將處理結(jié)果返回給代理服務(wù)器,當(dāng)自身負(fù)載大于或者等于預(yù)設(shè)負(fù)載時(shí),則向代理服務(wù)器發(fā)送拒絕消息,以便代理服務(wù)器將請(qǐng)求信息繼續(xù)發(fā)送給其他的業(yè)務(wù)系統(tǒng)。這樣不會(huì)出現(xiàn)一個(gè)業(yè)務(wù)系統(tǒng)負(fù)載高,另一個(gè)業(yè)務(wù)系統(tǒng)無任務(wù)可處理的情況,從而可以提高服務(wù)系統(tǒng)的資源利用率。
[0050]步驟209,代理服務(wù)器接收處理結(jié)果,并將所述處理結(jié)果返回給所述服務(wù)請(qǐng)求方。
[0051]可選的,代理服務(wù)器接收第一業(yè)務(wù)系統(tǒng)發(fā)送的處理結(jié)果,或者接收確定處理所述請(qǐng)求信息的業(yè)務(wù)系統(tǒng)返回的處理結(jié)果。
[0052]本發(fā)明實(shí)施例提供一種處理請(qǐng)求信息的方法,