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

網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制方法和裝置與流程

文檔序號(hào):12182655閱讀:259來(lái)源:國(guó)知局
網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制方法和裝置與流程

本申請(qǐng)涉及互聯(lián)網(wǎng)技術(shù)領(lǐng)域,尤其涉及一種網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制方法和裝置。



背景技術(shù):

大型電商網(wǎng)絡(luò)的架構(gòu)是一個(gè)復(fù)雜的分布式網(wǎng)狀架構(gòu),日均訪問(wèn)量上億次,每次用戶請(qǐng)求處理往往會(huì)依賴幾十,甚至上百個(gè)子系統(tǒng)。要保證整體系統(tǒng)穩(wěn)定,現(xiàn)有的做法都是盡量保證每個(gè)子系統(tǒng)的穩(wěn)定性,不同子系統(tǒng)采用各自方法對(duì)自身訪問(wèn)入口、出口以及中間過(guò)程進(jìn)行控制處理,沒(méi)有一個(gè)統(tǒng)一的做法,流量增大后,很難保證所有子系統(tǒng)都是完全可靠的,并且這種方式也沒(méi)有考慮到分布式鏈路的特點(diǎn),不同子系統(tǒng)的保護(hù)措施甚至?xí)l(fā)系統(tǒng)之間的沖突。從控制手段上來(lái)看,對(duì)于突發(fā)流量(例如:爬蟲抓取等),現(xiàn)在的做法一般是在入口做全局流量限制,但實(shí)際情況是,入口應(yīng)用往往同時(shí)提供許多服務(wù)(最常見的情況是一個(gè)應(yīng)用處理多個(gè)統(tǒng)一資源定位符(Uniform Resource Locator;以下簡(jiǎn)稱:URL)請(qǐng)求),每個(gè)服務(wù)的服務(wù)能力也是不同的,這樣的流量控制方法不具有針對(duì)性,存在實(shí)施方案不統(tǒng)一,控制粒度過(guò)粗的問(wèn)題。



技術(shù)實(shí)現(xiàn)要素:

本申請(qǐng)的目的旨在至少在一定程度上解決相關(guān)技術(shù)中的技術(shù)問(wèn)題之一。

為此,本申請(qǐng)的第一個(gè)目的在于提出一種網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制方法。該方法可以根據(jù)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求所屬的類別對(duì)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求進(jìn)行控制,并可以針對(duì)分布式系統(tǒng)的不同層次采用不同流控方案,保障了大流量下,分布式系統(tǒng)的穩(wěn)定性和可靠性。

本申請(qǐng)的第二個(gè)目的在于提出一種網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制裝置。

為了實(shí)現(xiàn)上述目的,本申請(qǐng)第一方面實(shí)施例的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制方法,包括:對(duì)網(wǎng)站接收的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求進(jìn)行識(shí)別,獲得所述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求所屬的類別;根據(jù)所述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求所屬的類別對(duì)所述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求進(jìn)行控制。

本申請(qǐng)實(shí)施例的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制方法,對(duì)網(wǎng)站接收的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求進(jìn)行識(shí)別,獲得上述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求所屬的類別,然后根據(jù)上述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求所屬的類別對(duì)上述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求進(jìn)行控制,從而可以根據(jù)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求所屬的類別對(duì)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求進(jìn)行控制,并可以針 對(duì)分布式系統(tǒng)的不同層次采用不同流控方案,保障了大流量下,分布式系統(tǒng)的穩(wěn)定性和可靠性。

為了實(shí)現(xiàn)上述目的,本申請(qǐng)第二方面實(shí)施例的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制裝置,包括:識(shí)別模塊,用于對(duì)網(wǎng)站接收的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求進(jìn)行識(shí)別,獲得所述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求所屬的類別;控制模塊,用于根據(jù)所述識(shí)別模塊獲得的所述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求所屬的類別對(duì)所述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求進(jìn)行控制。

本申請(qǐng)實(shí)施例的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制裝置,識(shí)別模塊對(duì)網(wǎng)站接收的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求進(jìn)行識(shí)別,獲得上述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求所屬的類別,然后控制模塊根據(jù)上述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求所屬的類別對(duì)上述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求進(jìn)行控制,從而可以根據(jù)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求所屬的類別對(duì)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求進(jìn)行控制,并可以針對(duì)分布式系統(tǒng)的不同層次采用不同流控方案,保障了大流量下,分布式系統(tǒng)的穩(wěn)定性和可靠性。

本申請(qǐng)附加的方面和優(yōu)點(diǎn)將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過(guò)本申請(qǐng)的實(shí)踐了解到。

附圖說(shuō)明

本申請(qǐng)上述的和/或附加的方面和優(yōu)點(diǎn)從下面結(jié)合附圖對(duì)實(shí)施例的描述中將變得明顯和容易理解,其中:

圖1為本申請(qǐng)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制方法一個(gè)實(shí)施例的流程圖;

圖2為本申請(qǐng)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制方法另一個(gè)實(shí)施例的流程圖;

圖3為本申請(qǐng)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制方法再一個(gè)實(shí)施例的流程圖;

圖4為本申請(qǐng)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制方法再一個(gè)實(shí)施例的流程圖;

圖5為本申請(qǐng)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制方法再一個(gè)實(shí)施例的流程圖;

圖6為本申請(qǐng)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制方法的實(shí)現(xiàn)架構(gòu)一個(gè)實(shí)施例的示意圖;

圖7為本申請(qǐng)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制裝置一個(gè)實(shí)施例的結(jié)構(gòu)示意圖;

圖8為本申請(qǐng)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制裝置另一個(gè)實(shí)施例的結(jié)構(gòu)示意圖。

具體實(shí)施方式

下面詳細(xì)描述本申請(qǐng)的實(shí)施例,所述實(shí)施例的示例在附圖中示出,其中自始至終相同或類似的標(biāo)號(hào)表示相同或類似的元件或具有相同或類似功能的元件。下面通過(guò)參考附圖描述的實(shí)施例是示例性的,僅用于解釋本申請(qǐng),而不能理解為對(duì)本申請(qǐng)的限制。相反,本申請(qǐng)的實(shí)施例包括落入所附加權(quán)利要求書的精神和內(nèi)涵范圍內(nèi)的所有變化、修改和等同物。

在開始介紹本申請(qǐng)?zhí)峁┑木W(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制方法之前,首先對(duì)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求進(jìn)行多維度劃分以及對(duì)分布式系統(tǒng)進(jìn)行分層。

經(jīng)過(guò)分析,大型電子商務(wù)網(wǎng)站(以下簡(jiǎn)稱:電商網(wǎng)站)的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求可以按來(lái)源分為一般用戶訪問(wèn)請(qǐng)求、爬蟲訪問(wèn)請(qǐng)求和無(wú)效訪問(wèn)請(qǐng)求。其中,用戶訪問(wèn)請(qǐng)求是指正常的用戶請(qǐng)求,用戶訪問(wèn)請(qǐng)求是電商網(wǎng)站的命脈;爬蟲訪問(wèn)請(qǐng)求是指各大搜索引擎為了獲取電商網(wǎng)站的信息,不定時(shí)的發(fā)起的抓取網(wǎng)頁(yè)信息的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求,其抓取情況會(huì)影響電商網(wǎng)站在搜索引擎中的排名;無(wú)效訪問(wèn)請(qǐng)求是指非用戶和非爬蟲的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求,該類網(wǎng)絡(luò)訪問(wèn)請(qǐng)求往往是突發(fā)行為,并且對(duì)電商網(wǎng)站沒(méi)有意義。

電商網(wǎng)站分布式系統(tǒng)按照職責(zé)不同,可以分為物理層、域名系統(tǒng)(Domain Name System;以下簡(jiǎn)稱:DNS)層、網(wǎng)頁(yè)(web)服務(wù)器層(包括開放式系統(tǒng)互聯(lián)(Open System Interconnection;以下簡(jiǎn)稱:OSI網(wǎng)絡(luò)模型)、頁(yè)面應(yīng)用層和服務(wù)應(yīng)用層。特別地,相對(duì)于其他類別的網(wǎng)站,大型電商網(wǎng)站由大量的商業(yè)邏輯和業(yè)務(wù)邏輯組成,所以提供各種功能點(diǎn)的內(nèi)部服務(wù)應(yīng)用數(shù)量眾多,調(diào)用關(guān)系也交錯(cuò)復(fù)雜。

圖1為本申請(qǐng)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制方法一個(gè)實(shí)施例的流程圖,如圖1所示,該網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制方法可以包括:

步驟101,對(duì)網(wǎng)站接收的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求進(jìn)行識(shí)別,獲得上述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求所屬的類別。

步驟102,根據(jù)上述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求所屬的類別對(duì)上述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求進(jìn)行控制。

上述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制方法中,對(duì)網(wǎng)站接收的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求進(jìn)行識(shí)別,獲得上述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求所屬的類別,然后根據(jù)上述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求所屬的類別對(duì)上述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求進(jìn)行控制,從而可以根據(jù)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求所屬的類別對(duì)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求進(jìn)行控制,并可以針對(duì)分布式系統(tǒng)的不同層次采用不同流控方案,保障了大流量下,分布式系統(tǒng)的穩(wěn)定性和可靠性。

圖2為本申請(qǐng)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制方法另一個(gè)實(shí)施例的流程圖,本實(shí)施例中,上述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求所屬的類別可以為:用戶訪問(wèn)請(qǐng)求;如圖2所示,步驟102可以包括:

步驟201,對(duì)上述網(wǎng)站接收的用戶訪問(wèn)請(qǐng)求進(jìn)行域名解析,根據(jù)DNS層的限流策略返回服務(wù)集群的入口IP地址。

具體地,根據(jù)DNS層的限流策略返回服務(wù)集群的入口IP地址可以為:如果達(dá)到默認(rèn)服務(wù)集群的限流閾值,則根據(jù)優(yōu)先級(jí)返回除上述默認(rèn)服務(wù)集群之外的其他服務(wù)集群的入口IP地址;如果未達(dá)到默認(rèn)服務(wù)集群的限流閾值,則返回上述默認(rèn)服務(wù)集群的入口IP地址。

其中,默認(rèn)服務(wù)集群的限流閾值可以在具體實(shí)現(xiàn)時(shí),根據(jù)系統(tǒng)性能和/或?qū)崿F(xiàn)需求等自行設(shè)定,本實(shí)施例對(duì)上述默認(rèn)服務(wù)集群的限流閾值的大小不作限定。

步驟202,將上述用戶訪問(wèn)請(qǐng)求發(fā)送到上述入口IP地址對(duì)應(yīng)的服務(wù)集群的web服務(wù)器 層。

步驟203,判斷上述用戶訪問(wèn)請(qǐng)求是否觸發(fā)web服務(wù)器層的限流策略。如果是,則執(zhí)行步驟213;如果否,則執(zhí)行步驟204。

步驟204,判斷上述用戶訪問(wèn)請(qǐng)求是否觸發(fā)頁(yè)面應(yīng)用層的限流策略。如果是,則執(zhí)行步驟213;如果否,則執(zhí)行步驟205。

步驟205,判斷上述用戶訪問(wèn)請(qǐng)求的內(nèi)部業(yè)務(wù)邏輯是否依賴其他服務(wù)。如果是,則執(zhí)行步驟206;如果否,則執(zhí)行步驟212。

步驟206,依次驗(yàn)證上述用戶訪問(wèn)請(qǐng)求的內(nèi)部業(yè)務(wù)邏輯所依賴的服務(wù)的調(diào)用是否滿足降級(jí)策略。如果是,則執(zhí)行步驟207;如果否,則執(zhí)行步驟209。

步驟207,對(duì)滿足降級(jí)策略的服務(wù)進(jìn)行降級(jí)。

步驟208,當(dāng)降級(jí)的服務(wù)調(diào)用實(shí)現(xiàn)的是優(yōu)先級(jí)不高于預(yù)定閾值的業(yè)務(wù)邏輯時(shí),直接完成上述降級(jí)的服務(wù)的調(diào)用;當(dāng)上述降級(jí)的服務(wù)調(diào)用實(shí)現(xiàn)的是優(yōu)先級(jí)高于預(yù)定閾值的業(yè)務(wù)邏輯時(shí),對(duì)上述降級(jí)的服務(wù)的調(diào)用執(zhí)行限流回退邏輯,完成上述降級(jí)的服務(wù)的調(diào)用。

其中,上述預(yù)定閾值可以在具體實(shí)現(xiàn)時(shí)根據(jù)系統(tǒng)性能和/或?qū)崿F(xiàn)需求等自行設(shè)定,本實(shí)施例對(duì)上述預(yù)定閾值的大小不作限定。

其中,優(yōu)先級(jí)高于預(yù)定閾值的業(yè)務(wù)邏輯可以為核心業(yè)務(wù)邏輯;對(duì)上述降級(jí)的服務(wù)的調(diào)用執(zhí)行限流回退(fallback)邏輯可以為:發(fā)送回退通知,保障分布式事務(wù)等。

步驟209,判斷上述用戶訪問(wèn)請(qǐng)求的內(nèi)部業(yè)務(wù)邏輯所依賴的服務(wù)的調(diào)用是否觸發(fā)服務(wù)應(yīng)用層的限流策略。如果是,則執(zhí)行步驟210;如果否,則執(zhí)行步驟211。

步驟210,執(zhí)行上述限流策略,對(duì)上述用戶訪問(wèn)請(qǐng)求的內(nèi)部業(yè)務(wù)邏輯所依賴的服務(wù)的調(diào)用進(jìn)行限制。然后返回執(zhí)行步驟205。

步驟211,執(zhí)行上述用戶訪問(wèn)請(qǐng)求的內(nèi)部業(yè)務(wù)邏輯所依賴的服務(wù)的內(nèi)部邏輯。然后返回執(zhí)行步驟206。

步驟212,繼續(xù)執(zhí)行頁(yè)面業(yè)務(wù)邏輯,返回上述用戶訪問(wèn)請(qǐng)求所請(qǐng)求的頁(yè)面。結(jié)束本次流程。

步驟213,拒絕執(zhí)行上述用戶訪問(wèn)請(qǐng)求,并提示已對(duì)上述用戶訪問(wèn)請(qǐng)求進(jìn)行限流。結(jié)束本次流程。

具體地,提示已對(duì)上述用戶訪問(wèn)請(qǐng)求進(jìn)行限流可以為:將上述用戶訪問(wèn)請(qǐng)求跳轉(zhuǎn)到限流友好提示頁(yè)面。

進(jìn)一步地,步驟211之后,還可以等待上述用戶訪問(wèn)請(qǐng)求的內(nèi)部業(yè)務(wù)邏輯所依賴的服務(wù)的調(diào)用的執(zhí)行,并判斷是否存在上述用戶訪問(wèn)請(qǐng)求的內(nèi)部業(yè)務(wù)邏輯被所依賴的服務(wù)限流 的情況,如果存在,則執(zhí)行步驟208;如果不存在,則執(zhí)行步驟212。

圖3為本申請(qǐng)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制方法再一個(gè)實(shí)施例的流程圖,本實(shí)施例中,上述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求所屬的類別可以為:爬蟲訪問(wèn)請(qǐng)求;如圖3所示,步驟102可以包括:

步驟301,判斷爬蟲是否遵守網(wǎng)絡(luò)爬蟲排除標(biāo)準(zhǔn)(Robots Exclusion Protocol;以下簡(jiǎn)稱:Robots)協(xié)議;如果是,則執(zhí)行步驟302;如果否,則執(zhí)行步驟307。

步驟302,接收上述爬蟲發(fā)起的文件獲取請(qǐng)求。

具體地,上述文件獲取請(qǐng)求可以為Robots.txt文件獲取請(qǐng)求。

步驟303,判斷web服務(wù)器層是否存在需動(dòng)態(tài)配置的網(wǎng)絡(luò)爬蟲排除標(biāo)準(zhǔn)協(xié)議文本(Robots.txt)文件;如果存在,則執(zhí)行步驟304;如果不存在,則執(zhí)行步驟305。

步驟304,向上述爬蟲返回根據(jù)動(dòng)態(tài)配置生成的Robots.txt文件。然后,執(zhí)行步驟306。

步驟305,向上述爬蟲返回默認(rèn)的Robots.txt文件。然后,執(zhí)行步驟306。

步驟306,接收上述爬蟲根據(jù)上述Robots.txt文件發(fā)送的爬蟲訪問(wèn)請(qǐng)求。然后執(zhí)行步驟308。

步驟307,接收上述爬蟲發(fā)送的爬蟲訪問(wèn)請(qǐng)求。然后執(zhí)行步驟308。

步驟308,對(duì)上述爬蟲訪問(wèn)請(qǐng)求進(jìn)行域名解析,根據(jù)DNS層的限流策略返回服務(wù)集群的入口IP地址。

具體地,根據(jù)DNS層的限流策略返回服務(wù)集群的入口IP地址可以為:如果達(dá)到默認(rèn)服務(wù)集群的限流閾值,則根據(jù)優(yōu)先級(jí)返回除上述默認(rèn)服務(wù)集群之外的其他服務(wù)集群的入口IP地址;如果未達(dá)到默認(rèn)服務(wù)集群的限流閾值,則返回上述默認(rèn)服務(wù)集群的入口IP地址。

其中,默認(rèn)服務(wù)集群的限流閾值可以在具體實(shí)現(xiàn)時(shí),根據(jù)系統(tǒng)性能和/或?qū)崿F(xiàn)需求等自行設(shè)定,本實(shí)施例對(duì)上述默認(rèn)服務(wù)集群的限流閾值的大小不作限定。

步驟309,將上述爬蟲訪問(wèn)請(qǐng)求發(fā)送到上述入口IP地址對(duì)應(yīng)的服務(wù)集群的web服務(wù)器層。

步驟310,判斷上述爬蟲訪問(wèn)請(qǐng)求是否觸發(fā)web服務(wù)器網(wǎng)絡(luò)層的網(wǎng)絡(luò)爬蟲限流策略。如果否,則執(zhí)行步驟311;如果是,則執(zhí)行步驟314。

步驟311,獲取上述爬蟲訪問(wèn)請(qǐng)求的用戶代理(user-agent)信息。

步驟312,根據(jù)上述用戶代理信息判斷上述爬蟲訪問(wèn)請(qǐng)求是否觸發(fā)web服務(wù)器應(yīng)用層的限流策略;如果否,則執(zhí)行步驟313;如果是,則執(zhí)行步驟314。

步驟313,繼續(xù)對(duì)上述爬蟲訪問(wèn)請(qǐng)求執(zhí)行與上述用戶訪問(wèn)請(qǐng)求相同的限流策略。

具體地,繼續(xù)對(duì)上述爬蟲訪問(wèn)請(qǐng)求執(zhí)行與上述用戶訪問(wèn)請(qǐng)求相同的限流策略的過(guò)程可以參見本申請(qǐng)圖2所示實(shí)施例中步驟204~步驟213描述的過(guò)程,在此不再贅述。

步驟314,拒絕執(zhí)行上述爬蟲訪問(wèn)請(qǐng)求,并提示已對(duì)上述爬蟲訪問(wèn)請(qǐng)求進(jìn)行限流。

具體地,提示已對(duì)上述爬蟲訪問(wèn)請(qǐng)求進(jìn)行限流可以為:將上述爬蟲訪問(wèn)請(qǐng)求跳轉(zhuǎn)到限流友好提示頁(yè)面。

圖4為本申請(qǐng)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制方法再一個(gè)實(shí)施例的流程圖,本實(shí)施例中,上述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求所屬的類別可以為:無(wú)效訪問(wèn)請(qǐng)求;如圖4所示,步驟102可以為:

步驟401,對(duì)上述網(wǎng)站接收的訪問(wèn)請(qǐng)求進(jìn)行域名解析,根據(jù)DNS層的限流策略返回服務(wù)集群的入口IP地址。

具體地,根據(jù)DNS層的限流策略返回服務(wù)集群的入口IP地址可以為:如果達(dá)到默認(rèn)服務(wù)集群的限流閾值,則根據(jù)優(yōu)先級(jí)返回除上述默認(rèn)服務(wù)集群之外的其他服務(wù)集群的入口IP地址;如果未達(dá)到默認(rèn)服務(wù)集群的限流閾值,則返回上述默認(rèn)服務(wù)集群的入口IP地址。

其中,默認(rèn)服務(wù)集群的限流閾值可以在具體實(shí)現(xiàn)時(shí),根據(jù)系統(tǒng)性能和/或?qū)崿F(xiàn)需求等自行設(shè)定,本實(shí)施例對(duì)上述默認(rèn)服務(wù)集群的限流閾值的大小不作限定。

步驟402,將上述訪問(wèn)請(qǐng)求發(fā)送到上述入口IP地址對(duì)應(yīng)的服務(wù)集群的web服務(wù)器層,以使上述web服務(wù)器層獲取最新的無(wú)效訪問(wèn)請(qǐng)求列表。

步驟403,判斷上述訪問(wèn)請(qǐng)求是否存在上述無(wú)效訪問(wèn)請(qǐng)求列表中。如果是,則執(zhí)行步驟404;如果否,則執(zhí)行步驟405。

步驟404,停止對(duì)上述訪問(wèn)請(qǐng)求的處理。

步驟405,在頁(yè)面應(yīng)用層對(duì)上述訪問(wèn)請(qǐng)求進(jìn)行處理之前,識(shí)別上述訪問(wèn)請(qǐng)求所屬的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求是否為無(wú)效訪問(wèn)請(qǐng)求。如果是,則執(zhí)行步驟404;如果否,則執(zhí)行步驟406。

步驟406,確定上述訪問(wèn)請(qǐng)求所屬的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求為用戶訪問(wèn)請(qǐng)求,執(zhí)行與上述用戶訪問(wèn)請(qǐng)求相同的限流策略。后續(xù)執(zhí)行過(guò)程可以參見本申請(qǐng)圖2所示實(shí)施例步驟204~步驟213描述的過(guò)程,在此不再贅述。

圖2、圖3和圖4所示實(shí)施例分別從3個(gè)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求維度介紹了不同層次的靜態(tài)流控體系,主要通過(guò)動(dòng)態(tài)配置各層的流控配置來(lái)避免預(yù)期出現(xiàn)問(wèn)題,但實(shí)際場(chǎng)景中,可能出現(xiàn)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求突增超出預(yù)期的問(wèn)題,所以,需要制定好預(yù)案配置,出現(xiàn)嚴(yán)重超出系統(tǒng)穩(wěn)定性閾值的情況時(shí),動(dòng)態(tài)調(diào)整限流策略。特別注意,對(duì)于大型電商網(wǎng)站來(lái)講,用戶訪問(wèn)請(qǐng)求優(yōu)先級(jí)最高,爬蟲訪問(wèn)請(qǐng)求次之。

圖5為本申請(qǐng)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制方法再一個(gè)實(shí)施例的流程圖,本實(shí)施例對(duì)限流策略的動(dòng)態(tài)調(diào)整過(guò)程進(jìn)行介紹,本實(shí)施例介紹的限流策略的動(dòng)態(tài)調(diào)整過(guò)程可以在步驟102之前,如圖5所示,可以包括:

步驟501,獲取服務(wù)集群當(dāng)前的整體訪問(wèn)請(qǐng)求。

步驟502,判斷上述整體訪問(wèn)請(qǐng)求是否大于集群穩(wěn)定性閾值。如果是,則執(zhí)行步驟503;如果否,則執(zhí)行步驟512。

其中,上述集群穩(wěn)定性閾值可以在具體實(shí)現(xiàn)時(shí),根據(jù)系統(tǒng)性能和/或?qū)崿F(xiàn)需求等自行設(shè)定,本實(shí)施例對(duì)上述集群穩(wěn)定性閾值的大小不作限定。

步驟503,判斷是否可以將上述服務(wù)集群的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求跳轉(zhuǎn)到除上述服務(wù)集群之外的其他服務(wù)集群;如果是,則執(zhí)行步驟504;如果否,則執(zhí)行步驟505。

步驟504,根據(jù)優(yōu)先級(jí)將上述服務(wù)集群的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求跳轉(zhuǎn)到其他服務(wù)集群。然后執(zhí)行步驟501。

步驟505,判斷是否可以對(duì)上述服務(wù)集群進(jìn)行物理層擴(kuò)容。如果是,則執(zhí)行步驟506;如果否,則執(zhí)行步驟507。

步驟506,對(duì)上述服務(wù)集群進(jìn)行物理層擴(kuò)容,并更新集群穩(wěn)定性閾值。然后執(zhí)行步驟501。

步驟507,判斷是否可以進(jìn)行爬蟲訪問(wèn)請(qǐng)求限制。如果是,則執(zhí)行步驟508;如果否,則執(zhí)行步驟509。

步驟508,根據(jù)爬蟲優(yōu)先級(jí)對(duì)爬蟲訪問(wèn)請(qǐng)求進(jìn)行限制。然后執(zhí)行步驟501。

具體地,根據(jù)爬蟲優(yōu)先級(jí)對(duì)爬蟲訪問(wèn)請(qǐng)求進(jìn)行限制可以為:根據(jù)爬蟲優(yōu)先級(jí)調(diào)整流控配置來(lái)限制爬蟲訪問(wèn)請(qǐng)求,其中,爬蟲優(yōu)先級(jí)可以根據(jù)實(shí)際業(yè)務(wù)優(yōu)先級(jí)動(dòng)態(tài)調(diào)整。

步驟509,判斷是否可以進(jìn)行用戶訪問(wèn)請(qǐng)求限制;如果是,則執(zhí)行步驟510;如果否,則執(zhí)行步驟511。

步驟510,根據(jù)業(yè)務(wù)優(yōu)先級(jí)對(duì)用戶訪問(wèn)請(qǐng)求進(jìn)行限制。然后執(zhí)行步驟501。

具體地,根據(jù)業(yè)務(wù)優(yōu)先級(jí)對(duì)用戶訪問(wèn)請(qǐng)求進(jìn)行限制可以為:根據(jù)業(yè)務(wù)優(yōu)先級(jí)調(diào)整URL流控配置來(lái)限制用戶訪問(wèn)請(qǐng)求。

步驟511,進(jìn)行人工干預(yù)處理。然后執(zhí)行步驟512。

步驟512,完成對(duì)限流策略的調(diào)整。

從圖2~圖5所示實(shí)施例提供的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制方法可以看出,本申請(qǐng)?zhí)峁┑木W(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制方法可以將網(wǎng)絡(luò)訪問(wèn)請(qǐng)求劃分為不同維度,基于業(yè)務(wù)優(yōu)先級(jí)進(jìn)行細(xì)粒度流控,并可以針對(duì)分布式系統(tǒng)劃分層次,利用不同層次優(yōu)勢(shì),采用不同技術(shù)方案進(jìn)行限流降級(jí)。另外,本申請(qǐng)采用統(tǒng)一平臺(tái)配置化管理,靜態(tài)設(shè)置,動(dòng)態(tài)管理,動(dòng)靜結(jié)合,保證了時(shí)效性和穩(wěn)定性。

本申請(qǐng)圖1~圖5所示實(shí)施例提供的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制方法可以通過(guò)圖6所示的系統(tǒng)架構(gòu)實(shí)現(xiàn),圖6為本申請(qǐng)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制方法的實(shí)現(xiàn)架構(gòu)一個(gè)實(shí)施例的示意圖,如圖6所 示,該系統(tǒng)架構(gòu)可以包括:配置平臺(tái)、配置數(shù)據(jù)交互中心、DNS服務(wù)器、CDN服務(wù)器、web服務(wù)器和應(yīng)用服務(wù)器。

其中,配置平臺(tái)的主要功能包括:第一,開發(fā)人員可以在該配置平臺(tái)上對(duì)分布式系統(tǒng)各層的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求進(jìn)行查看和動(dòng)態(tài)修改限流策略(其中,動(dòng)態(tài)修改限流策略的流程可以參見本申請(qǐng)圖5所示實(shí)施例的描述),然后實(shí)時(shí)與DNS服務(wù)器、web服務(wù)器和應(yīng)用服務(wù)器等進(jìn)行配置數(shù)據(jù)交換;第二、配置平臺(tái)結(jié)合網(wǎng)絡(luò)訪問(wèn)請(qǐng)求識(shí)別子系統(tǒng),對(duì)子系統(tǒng)識(shí)別出來(lái)的無(wú)效訪問(wèn)請(qǐng)求來(lái)源進(jìn)行記錄;第三、爬蟲配置功能,對(duì)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求識(shí)別子系統(tǒng)識(shí)別出的真正爬蟲訪問(wèn)請(qǐng)求來(lái)源進(jìn)行配置;第四、限流配置功能,對(duì)URL和/或服務(wù)等根據(jù)每秒查詢率(Query Per Second;以下簡(jiǎn)稱:QPS)和/或響應(yīng)時(shí)間(Response Time;以下簡(jiǎn)稱:RT)進(jìn)行配置;

配置數(shù)據(jù)交互中心是配置平臺(tái)對(duì)外的統(tǒng)一出口,用于與部署在不同服務(wù)器上的流控插件進(jìn)行數(shù)據(jù)交互。

流控插件用于實(shí)現(xiàn)具體流控功判斷功能,各服務(wù)器通過(guò)流控插件與配置數(shù)據(jù)交互中心定時(shí)交互,獲取最新的限流策略。

CDN服務(wù)器用于存放靜態(tài)文件,以及限流后跳轉(zhuǎn)的用戶友好提示頁(yè)面。

圖7為本申請(qǐng)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制裝置一個(gè)實(shí)施例的結(jié)構(gòu)示意圖,本實(shí)施例中的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制裝置可以設(shè)置在網(wǎng)站中,實(shí)現(xiàn)本申請(qǐng)圖1所示實(shí)施例的流程,如圖7所示,該網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制裝置可以包括:識(shí)別模塊71和控制模塊72;

其中,識(shí)別模塊71,用于對(duì)網(wǎng)站接收的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求進(jìn)行識(shí)別,獲得上述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求所屬的類別;在具體實(shí)現(xiàn)時(shí),識(shí)別模塊71可以設(shè)置在圖6所示的系統(tǒng)架構(gòu)中的配置平臺(tái)上。

控制模塊72,用于根據(jù)識(shí)別模塊71獲得的上述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求所屬的類別對(duì)上述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求進(jìn)行控制。在具體實(shí)現(xiàn)時(shí),控制模塊72可以作為圖6所示的系統(tǒng)架構(gòu)中的流控插件,設(shè)置在DNS服務(wù)器、web服務(wù)器和應(yīng)用服務(wù)器上。

上述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制裝置中,識(shí)別模塊71對(duì)網(wǎng)站接收的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求進(jìn)行識(shí)別,獲得上述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求所屬的類別,然后控制模塊72根據(jù)上述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求所屬的類別對(duì)上述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求進(jìn)行控制,從而可以根據(jù)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求所屬的類別對(duì)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求進(jìn)行控制,并可以針對(duì)分布式系統(tǒng)的不同層次采用不同流控方案,保障了大流量下,分布式系統(tǒng)的穩(wěn)定性和可靠性。

圖8為本申請(qǐng)網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制裝置另一個(gè)實(shí)施例的結(jié)構(gòu)示意圖,與圖7所示的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制裝置相比,不同之處在于,本實(shí)施例的一種實(shí)現(xiàn)方式中,識(shí)別模塊71獲得的 上述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求所屬的類別可以為:用戶訪問(wèn)請(qǐng)求;控制模塊72可以包括:解析子模塊721、發(fā)送子模塊722和執(zhí)行子模塊723;

其中,解析子模塊721,用于對(duì)上述網(wǎng)站接收的用戶訪問(wèn)請(qǐng)求進(jìn)行域名解析,根據(jù)DNS層的限流策略返回服務(wù)集群的入口IP地址;其中,解析子模塊721,具體用于當(dāng)達(dá)到默認(rèn)服務(wù)集群的限流閾值時(shí),根據(jù)優(yōu)先級(jí)返回除上述默認(rèn)服務(wù)集群之外的其他服務(wù)集群的入口IP地址;當(dāng)未達(dá)到默認(rèn)服務(wù)集群的限流閾值時(shí),返回上述默認(rèn)服務(wù)集群的入口IP地址。其中,默認(rèn)服務(wù)集群的限流閾值可以在具體實(shí)現(xiàn)時(shí),根據(jù)系統(tǒng)性能和/或?qū)崿F(xiàn)需求等自行設(shè)定,本實(shí)施例對(duì)上述默認(rèn)服務(wù)集群的限流閾值的大小不作限定。

發(fā)送子模塊722,用于將上述用戶訪問(wèn)請(qǐng)求發(fā)送到上述入口IP地址對(duì)應(yīng)的服務(wù)集群的網(wǎng)頁(yè)服務(wù)器層;

執(zhí)行子模塊723,用于當(dāng)上述用戶訪問(wèn)請(qǐng)求未觸發(fā)網(wǎng)頁(yè)服務(wù)器層的限流策略,并且未觸發(fā)頁(yè)面應(yīng)用層的限流策略,并且上述用戶訪問(wèn)請(qǐng)求的內(nèi)部業(yè)務(wù)邏輯不依賴其他服務(wù)時(shí),繼續(xù)執(zhí)行頁(yè)面業(yè)務(wù)邏輯,返回上述用戶訪問(wèn)請(qǐng)求所請(qǐng)求的頁(yè)面。

進(jìn)一步地,控制模塊72還可以包括:

限流子模塊724,用于在發(fā)送子模塊722將上述用戶訪問(wèn)請(qǐng)求發(fā)送到上述入口IP地址對(duì)應(yīng)的服務(wù)集群的網(wǎng)頁(yè)服務(wù)器層之后,如果上述用戶訪問(wèn)請(qǐng)求觸發(fā)了網(wǎng)頁(yè)服務(wù)器層的限流策略,或者上述用戶訪問(wèn)請(qǐng)求未觸發(fā)網(wǎng)頁(yè)服務(wù)器層的限流策略,但觸發(fā)了頁(yè)面應(yīng)用層的限流策略,則拒絕執(zhí)行上述用戶訪問(wèn)請(qǐng)求,并提示已對(duì)上述用戶訪問(wèn)請(qǐng)求進(jìn)行限流。

進(jìn)一步地,控制模塊72還可以包括:驗(yàn)證子模塊725、降級(jí)子模塊726和調(diào)用子模塊727;

驗(yàn)證子模塊725,用于當(dāng)上述用戶訪問(wèn)請(qǐng)求的內(nèi)部業(yè)務(wù)邏輯依賴其他服務(wù)時(shí),依次驗(yàn)證上述用戶訪問(wèn)請(qǐng)求的內(nèi)部業(yè)務(wù)邏輯所依賴的服務(wù)的調(diào)用是否滿足降級(jí)策略;

降級(jí)子模塊726,用于當(dāng)上述用戶訪問(wèn)請(qǐng)求的內(nèi)部業(yè)務(wù)邏輯所依賴的服務(wù)的調(diào)用滿足降級(jí)策略時(shí),對(duì)滿足降級(jí)策略的服務(wù)進(jìn)行降級(jí);

調(diào)用子模塊727,用于當(dāng)降級(jí)的服務(wù)調(diào)用實(shí)現(xiàn)的是優(yōu)先級(jí)不高于預(yù)定閾值的業(yè)務(wù)邏輯時(shí),直接完成上述降級(jí)的服務(wù)的調(diào)用;當(dāng)上述降級(jí)的服務(wù)調(diào)用實(shí)現(xiàn)的是優(yōu)先級(jí)高于預(yù)定閾值的業(yè)務(wù)邏輯時(shí),對(duì)上述降級(jí)的服務(wù)的調(diào)用執(zhí)行限流回退邏輯,完成上述降級(jí)的服務(wù)的調(diào)用。

其中,上述預(yù)定閾值可以在具體實(shí)現(xiàn)時(shí)根據(jù)系統(tǒng)性能和/或?qū)崿F(xiàn)需求等自行設(shè)定,本實(shí)施例對(duì)上述預(yù)定閾值的大小不作限定。

其中,優(yōu)先級(jí)高于預(yù)定閾值的業(yè)務(wù)邏輯可以為核心業(yè)務(wù)邏輯;對(duì)上述降級(jí)的服務(wù)的調(diào)用執(zhí)行限流回退(fallback)邏輯可以為:發(fā)送回退通知,保障分布式事務(wù)等。

進(jìn)一步地,控制模塊72還可以包括:判斷子模塊728;

判斷子模塊728,用于當(dāng)上述用戶訪問(wèn)請(qǐng)求的內(nèi)部業(yè)務(wù)邏輯所依賴的服務(wù)的調(diào)用不滿足降級(jí)策略時(shí),判斷上述用戶訪問(wèn)請(qǐng)求的內(nèi)部業(yè)務(wù)邏輯所依賴的服務(wù)的調(diào)用是否觸發(fā)服務(wù)應(yīng)用層的限流策略;

限流子模塊724,用于當(dāng)上述用戶訪問(wèn)請(qǐng)求的內(nèi)部業(yè)務(wù)邏輯所依賴的服務(wù)的調(diào)用觸發(fā)服務(wù)應(yīng)用層的限流策略時(shí),執(zhí)行上述限流策略,對(duì)上述用戶訪問(wèn)請(qǐng)求的內(nèi)部業(yè)務(wù)邏輯所依賴的服務(wù)的調(diào)用進(jìn)行限制;

執(zhí)行子模塊723,用于當(dāng)上述用戶訪問(wèn)請(qǐng)求的內(nèi)部業(yè)務(wù)邏輯所依賴的服務(wù)的調(diào)用未觸發(fā)服務(wù)應(yīng)用層的限流策略時(shí),執(zhí)行上述用戶訪問(wèn)請(qǐng)求的內(nèi)部業(yè)務(wù)邏輯所依賴的服務(wù)的內(nèi)部邏輯。

本實(shí)施例的另一種實(shí)現(xiàn)方式中,識(shí)別模塊71獲得的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求所屬的類別包括:爬蟲訪問(wèn)請(qǐng)求;控制模塊72可以包括:判斷子模塊728、接收子模塊729、解析子模塊721、發(fā)送子模塊722、獲取子模塊7210和限流子模塊724;

其中,判斷子模塊728,用于判斷爬蟲是否遵守網(wǎng)絡(luò)爬蟲排除標(biāo)準(zhǔn)協(xié)議;

接收子模塊729,用于當(dāng)判斷子模塊728確定爬蟲不遵守網(wǎng)絡(luò)爬蟲排除標(biāo)準(zhǔn)協(xié)議時(shí),接收上述爬蟲發(fā)送的爬蟲訪問(wèn)請(qǐng)求;

解析子模塊721,還用于對(duì)上述爬蟲訪問(wèn)請(qǐng)求進(jìn)行域名解析,根據(jù)DNS層的限流策略返回服務(wù)集群的入口IP地址;

發(fā)送子模塊722,還用于將上述爬蟲訪問(wèn)請(qǐng)求發(fā)送到上述入口IP地址對(duì)應(yīng)的服務(wù)集群的網(wǎng)頁(yè)服務(wù)器層;

判斷子模塊728,還用于判斷上述爬蟲訪問(wèn)請(qǐng)求是否觸發(fā)網(wǎng)頁(yè)服務(wù)器網(wǎng)絡(luò)層的網(wǎng)絡(luò)爬蟲限流策略;

獲取子模塊7210,用于當(dāng)判斷子模塊728確定上述爬蟲訪問(wèn)請(qǐng)求未觸發(fā)網(wǎng)頁(yè)服務(wù)器網(wǎng)絡(luò)層的網(wǎng)絡(luò)爬蟲限流策略時(shí),獲取上述爬蟲訪問(wèn)請(qǐng)求的用戶代理信息;

判斷子模塊728,還用于根據(jù)獲取子模塊7210獲取的用戶代理信息判斷上述爬蟲訪問(wèn)請(qǐng)求是否觸發(fā)網(wǎng)頁(yè)服務(wù)器應(yīng)用層的限流策略;

限流子模塊724,用于當(dāng)判斷子模塊728確定上述爬蟲訪問(wèn)請(qǐng)求未觸發(fā)網(wǎng)頁(yè)服務(wù)器應(yīng)用層的限流策略時(shí),繼續(xù)對(duì)上述爬蟲訪問(wèn)請(qǐng)求執(zhí)行與上述用戶訪問(wèn)請(qǐng)求相同的限流策略。

進(jìn)一步地,接收子模塊729,還用于當(dāng)爬蟲遵守網(wǎng)絡(luò)爬蟲排除標(biāo)準(zhǔn)協(xié)議時(shí),接收上述爬蟲發(fā)起的文件獲取請(qǐng)求;

判斷子模塊728,還用于判斷網(wǎng)頁(yè)服務(wù)器層是否存在需動(dòng)態(tài)配置的網(wǎng)絡(luò)爬蟲排除標(biāo)準(zhǔn)協(xié)議文本文件;

發(fā)送子模塊722,還用于當(dāng)判斷子模塊728確定網(wǎng)頁(yè)服務(wù)器層存在需動(dòng)態(tài)配置的網(wǎng)絡(luò)爬蟲排除標(biāo)準(zhǔn)協(xié)議文本文件時(shí),向上述爬蟲返回根據(jù)動(dòng)態(tài)配置生成的網(wǎng)絡(luò)爬蟲排除標(biāo)準(zhǔn)協(xié)議文本文件;當(dāng)判斷子模塊728確定網(wǎng)頁(yè)服務(wù)器層不存在需動(dòng)態(tài)配置的網(wǎng)絡(luò)爬蟲排除標(biāo)準(zhǔn)協(xié)議文本文件時(shí),向上述爬蟲返回默認(rèn)的網(wǎng)絡(luò)爬蟲排除標(biāo)準(zhǔn)協(xié)議文本文件;

接收子模塊729,還用于接收上述爬蟲根據(jù)上述網(wǎng)絡(luò)爬蟲排除標(biāo)準(zhǔn)協(xié)議文本文件發(fā)送的爬蟲訪問(wèn)請(qǐng)求。

本實(shí)現(xiàn)方式中,限流子模塊724,還用于當(dāng)上述爬蟲訪問(wèn)請(qǐng)求觸發(fā)網(wǎng)頁(yè)服務(wù)器網(wǎng)絡(luò)層的網(wǎng)絡(luò)爬蟲限流策略時(shí),拒絕執(zhí)行上述爬蟲訪問(wèn)請(qǐng)求,并提示已對(duì)上述爬蟲訪問(wèn)請(qǐng)求進(jìn)行限流。

限流子模塊724,還用于當(dāng)上述爬蟲訪問(wèn)請(qǐng)求觸發(fā)網(wǎng)頁(yè)服務(wù)器應(yīng)用層的限流策略時(shí),拒絕執(zhí)行上述爬蟲訪問(wèn)請(qǐng)求,并提示已對(duì)上述爬蟲訪問(wèn)請(qǐng)求進(jìn)行限流。

本實(shí)施例的再一種實(shí)現(xiàn)方式中,識(shí)別模塊71獲得的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求所屬的類別包括:無(wú)效訪問(wèn)請(qǐng)求;

解析子模塊721,還用于對(duì)上述網(wǎng)站接收的訪問(wèn)請(qǐng)求進(jìn)行域名解析,根據(jù)DNS層的限流策略返回服務(wù)集群的入口IP地址;

發(fā)送子模塊722,還用于將上述訪問(wèn)請(qǐng)求發(fā)送到上述入口IP地址對(duì)應(yīng)的服務(wù)集群的網(wǎng)頁(yè)服務(wù)器層,以使上述網(wǎng)頁(yè)服務(wù)器層獲取最新的無(wú)效訪問(wèn)請(qǐng)求列表;

控制模塊72還可以包括:判斷子模塊728和限流子模塊724;

其中,判斷子模塊728,用于判斷上述訪問(wèn)請(qǐng)求是否存在上述無(wú)效訪問(wèn)請(qǐng)求列表中;

限流子模塊724,用于當(dāng)判斷子模塊728確定上述訪問(wèn)請(qǐng)求存在上述無(wú)效網(wǎng)絡(luò)訪問(wèn)請(qǐng)求列表中時(shí),停止對(duì)上述訪問(wèn)請(qǐng)求的處理。

識(shí)別模塊71,還用于當(dāng)判斷子模塊728確定上述訪問(wèn)請(qǐng)求不存在于上述無(wú)效訪問(wèn)請(qǐng)求列表中時(shí),在頁(yè)面應(yīng)用層對(duì)上述訪問(wèn)請(qǐng)求進(jìn)行處理之前,識(shí)別上述訪問(wèn)請(qǐng)求所屬的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求是否為無(wú)效訪問(wèn)請(qǐng)求;

限流子模塊724,還用于當(dāng)識(shí)別模塊71識(shí)別上述訪問(wèn)請(qǐng)求所屬的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求為無(wú)效訪問(wèn)請(qǐng)求時(shí),停止對(duì)上述訪問(wèn)請(qǐng)求的處理;以及當(dāng)識(shí)別模塊71識(shí)別上述訪問(wèn)請(qǐng)求所屬的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求不是無(wú)效訪問(wèn)請(qǐng)求時(shí),確定上述訪問(wèn)請(qǐng)求所屬的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求為用戶訪問(wèn)請(qǐng)求,執(zhí)行與上述用戶訪問(wèn)請(qǐng)求相同的限流策略。

進(jìn)一步地,上述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制裝置還可以包括:獲取模塊73、判斷模塊74和調(diào)整模塊75;在具體實(shí)現(xiàn)時(shí),上述獲取模塊73、判斷模塊74和調(diào)整模塊75可以設(shè)置在圖6所示的系統(tǒng)架構(gòu)中的配置平臺(tái)上。

獲取模塊73,用于獲取服務(wù)集群當(dāng)前的整體訪問(wèn)請(qǐng)求;

判斷模塊74,用于判斷獲取模塊73獲取的整體訪問(wèn)請(qǐng)求是否大于集群穩(wěn)定性閾值;其中,上述集群穩(wěn)定性閾值可以在具體實(shí)現(xiàn)時(shí),根據(jù)系統(tǒng)性能和/或?qū)崿F(xiàn)需求等自行設(shè)定, 本實(shí)施例對(duì)上述集群穩(wěn)定性閾值的大小不作限定。

調(diào)整模塊75,用于當(dāng)獲取模塊73獲取的整體訪問(wèn)請(qǐng)求不大于集群穩(wěn)定性閾值時(shí),完成對(duì)限流策略的調(diào)整。

進(jìn)一步地,上述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制裝置還可以包括:跳轉(zhuǎn)模塊76、擴(kuò)容模塊77和限制模塊78;在具體實(shí)現(xiàn)時(shí),上述跳轉(zhuǎn)模塊76、擴(kuò)容模塊77和限制模塊78可以設(shè)置在圖6所示的系統(tǒng)架構(gòu)中的配置平臺(tái)上。

其中,判斷模塊74,還用于當(dāng)獲取模塊73獲取的整體訪問(wèn)請(qǐng)求大于集群穩(wěn)定性閾值時(shí),判斷是否可以將上述服務(wù)集群的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求跳轉(zhuǎn)到除上述服務(wù)集群之外的其他服務(wù)集群;

跳轉(zhuǎn)模塊76,用于當(dāng)判斷模塊74確定可以將上述服務(wù)集群的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求跳轉(zhuǎn)到除上述服務(wù)集群之外的其他服務(wù)集群時(shí),根據(jù)優(yōu)先級(jí)將上述服務(wù)集群的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求跳轉(zhuǎn)到其他服務(wù)集群。

判斷模塊74,還用于當(dāng)確定不可以將上述服務(wù)集群的網(wǎng)絡(luò)訪問(wèn)請(qǐng)求跳轉(zhuǎn)到除上述服務(wù)集群之外的其他服務(wù)集群時(shí),判斷是否可以對(duì)上述服務(wù)集群進(jìn)行物理層擴(kuò)容;

擴(kuò)容模塊77,還用于當(dāng)判斷模塊74確定可以對(duì)上述服務(wù)集群進(jìn)行物理層擴(kuò)容時(shí),對(duì)上述服務(wù)集群進(jìn)行物理層擴(kuò)容,并更新集群穩(wěn)定性閾值。

判斷模塊74,還用于當(dāng)確定不可以對(duì)所述服務(wù)集群進(jìn)行物理層擴(kuò)容時(shí),判斷是否可以進(jìn)行爬蟲訪問(wèn)請(qǐng)求限制;

限制模塊78,用于當(dāng)判斷模塊74確定可以進(jìn)行爬蟲訪問(wèn)請(qǐng)求限制時(shí),根據(jù)爬蟲優(yōu)先級(jí)對(duì)爬蟲訪問(wèn)請(qǐng)求進(jìn)行限制。

判斷模塊74,還用于當(dāng)確定不可以進(jìn)行爬蟲訪問(wèn)請(qǐng)求限制時(shí),判斷是否可以進(jìn)行用戶訪問(wèn)請(qǐng)求限制;

限制模塊78,還用于當(dāng)判斷模塊74確定可以進(jìn)行用戶訪問(wèn)請(qǐng)求限制時(shí),根據(jù)業(yè)務(wù)優(yōu)先級(jí)對(duì)用戶訪問(wèn)請(qǐng)求進(jìn)行限制。

上述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制裝置可以將網(wǎng)絡(luò)訪問(wèn)請(qǐng)求劃分為不同維度,基于業(yè)務(wù)優(yōu)先級(jí)進(jìn)行細(xì)粒度流控,并可以針對(duì)分布式系統(tǒng)劃分層次,利用不同層次優(yōu)勢(shì),采用不同技術(shù)方案進(jìn)行限流降級(jí)。另外,上述網(wǎng)絡(luò)訪問(wèn)請(qǐng)求控制裝置采用統(tǒng)一平臺(tái)配置化管理,靜態(tài)設(shè)置,動(dòng)態(tài)管理,動(dòng)靜結(jié)合,保證了時(shí)效性和穩(wěn)定性。

需要說(shuō)明的是,在本申請(qǐng)的描述中,術(shù)語(yǔ)“第一”、“第二”等僅用于描述目的,而不能理解為指示或暗示相對(duì)重要性。此外,在本申請(qǐng)的描述中,除非另有說(shuō)明,“多個(gè)”的含義是兩個(gè)或兩個(gè)以上。

流程圖中或在此以其他方式描述的任何過(guò)程或方法描述可以被理解為,表示包括一個(gè)或更多個(gè)用于實(shí)現(xiàn)特定邏輯功能或過(guò)程的步驟的可執(zhí)行指令的代碼的模塊、片段或部分,并且本申請(qǐng)的優(yōu)選實(shí)施方式的范圍包括另外的實(shí)現(xiàn),其中可以不按所示出或討論的順序, 包括根據(jù)所涉及的功能按基本同時(shí)的方式或按相反的順序,來(lái)執(zhí)行功能,這應(yīng)被本申請(qǐng)的實(shí)施例所屬技術(shù)領(lǐng)域的技術(shù)人員所理解。

應(yīng)當(dāng)理解,本申請(qǐng)的各部分可以用硬件、軟件、固件或它們的組合來(lái)實(shí)現(xiàn)。在上述實(shí)施方式中,多個(gè)步驟或方法可以用存儲(chǔ)在存儲(chǔ)器中且由合適的指令執(zhí)行系統(tǒng)執(zhí)行的軟件或固件來(lái)實(shí)現(xiàn)。例如,如果用硬件來(lái)實(shí)現(xiàn),和在另一實(shí)施方式中一樣,可用本領(lǐng)域公知的下列技術(shù)中的任一項(xiàng)或他們的組合來(lái)實(shí)現(xiàn):具有用于對(duì)數(shù)據(jù)信號(hào)實(shí)現(xiàn)邏輯功能的邏輯門電路的離散邏輯電路,具有合適的組合邏輯門電路的專用集成電路,可編程門陣列(Programmable Gate Array;以下簡(jiǎn)稱:PGA),現(xiàn)場(chǎng)可編程門陣列(Field Programmable Gate Array;以下簡(jiǎn)稱:FPGA)等。

本技術(shù)領(lǐng)域的普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法攜帶的全部或部分步驟是可以通過(guò)程序來(lái)指令相關(guān)的硬件完成,所述的程序可以存儲(chǔ)于一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),包括方法實(shí)施例的步驟之一或其組合。

此外,本申請(qǐng)各個(gè)實(shí)施例中的各功能模塊可以集成在一個(gè)處理模塊中,也可以是各個(gè)模塊單獨(dú)物理存在,也可以兩個(gè)或兩個(gè)以上模塊集成在一個(gè)模塊中。上述集成的模塊既可以采用硬件的形式實(shí)現(xiàn),也可以采用軟件功能模塊的形式實(shí)現(xiàn)。所述集成的模塊如果以軟件功能模塊的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),也可以存儲(chǔ)在一個(gè)計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中。

上述提到的存儲(chǔ)介質(zhì)可以是只讀存儲(chǔ)器,磁盤或光盤等。

在本說(shuō)明書的描述中,參考術(shù)語(yǔ)“一個(gè)實(shí)施例”、“一些實(shí)施例”、“示例”、“具體示例”、或“一些示例”等的描述意指結(jié)合該實(shí)施例或示例描述的具體特征、結(jié)構(gòu)、材料或者特點(diǎn)包含于本申請(qǐng)的至少一個(gè)實(shí)施例或示例中。在本說(shuō)明書中,對(duì)上述術(shù)語(yǔ)的示意性表述不一定指的是相同的實(shí)施例或示例。而且,描述的具體特征、結(jié)構(gòu)、材料或者特點(diǎn)可以在任何的一個(gè)或多個(gè)實(shí)施例或示例中以合適的方式結(jié)合。

盡管上面已經(jīng)示出和描述了本申請(qǐng)的實(shí)施例,可以理解的是,上述實(shí)施例是示例性的,不能理解為對(duì)本申請(qǐng)的限制,本領(lǐng)域的普通技術(shù)人員在本申請(qǐng)的范圍內(nèi)可以對(duì)上述實(shí)施例進(jìn)行變化、修改、替換和變型。

當(dāng)前第1頁(yè)1 2 3 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1