国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      服務(wù)器過載保護(hù)方法、服務(wù)器過載保護(hù)系統(tǒng)及服務(wù)器的制造方法

      文檔序號(hào):9711502閱讀:723來源:國知局
      服務(wù)器過載保護(hù)方法、服務(wù)器過載保護(hù)系統(tǒng)及服務(wù)器的制造方法
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及互聯(lián)網(wǎng)技術(shù)領(lǐng)域,特別涉及一種互聯(lián)網(wǎng)服務(wù)器的服務(wù)器過載保護(hù)方法、服務(wù)器過載保護(hù)系統(tǒng)及服務(wù)器。
      【背景技術(shù)】
      [0002]在互聯(lián)網(wǎng)服務(wù)器的工作運(yùn)行過程中,服務(wù)器程序會(huì)面臨來自外部的各種壓力場(chǎng)景,比如面對(duì)海量連接場(chǎng)景,會(huì)存在大量的外部連接;面對(duì)海量數(shù)據(jù)收發(fā)場(chǎng)景,會(huì)存在服務(wù)器程序?qū)PU (Central Processing Unit,中央處理器)、內(nèi)存的需求;當(dāng)外部環(huán)境出現(xiàn)異常,服務(wù)器內(nèi)部的數(shù)據(jù)狀態(tài)變?yōu)闊o效等等。服務(wù)器程序如何面對(duì)這些場(chǎng)景,如何有效的保護(hù)自己,是一個(gè)重要的問題。因此,在互聯(lián)網(wǎng)服務(wù)器程序模塊的設(shè)計(jì)中,過載保護(hù)是非常重要的功能模塊,它直接決定了在異常時(shí)刻,服務(wù)器是否仍然能夠正常工作,并將危害降低到最小。
      [0003]目前互聯(lián)網(wǎng)服務(wù)器的過載保護(hù),并沒有通用的過載保護(hù)方案,一般是由每一個(gè)具體的應(yīng)用模塊自行實(shí)現(xiàn),這些具體的應(yīng)用模塊在實(shí)現(xiàn)時(shí),一般采用一些比較通用的過載保護(hù)實(shí)現(xiàn)理念,比如:負(fù)載均衡機(jī)制、排隊(duì)機(jī)制、拒絕服務(wù)。負(fù)載均衡機(jī)制,是指通過提升服務(wù)器數(shù)量規(guī)模,將接入的請(qǐng)求平均分散到不同的服務(wù)器模塊處理。排隊(duì)機(jī)制,是指對(duì)于接入服務(wù)器的請(qǐng)求,當(dāng)服務(wù)器探測(cè)到超過了自己的處理能力,就將請(qǐng)求掛起,暫停對(duì)請(qǐng)求的處理。拒絕服務(wù),是指對(duì)請(qǐng)求進(jìn)行甄別,認(rèn)為非法或者異常的請(qǐng)求,將其丟棄,不進(jìn)行處理。
      [0004]這些過載保護(hù)理念較為籠統(tǒng),無法處理較為復(fù)雜和特殊的場(chǎng)景,而且這些過載保護(hù)理念均屬于設(shè)計(jì)層面的考慮,難以具體化到服務(wù)器程序?qū)用妗?br>
      【發(fā)明內(nèi)容】

      [0005]基于此,有必要針對(duì)上述現(xiàn)有技術(shù)中提供的問題,提供一種服務(wù)器過載保護(hù)方法、服務(wù)器過載保護(hù)系統(tǒng)及服務(wù)器,其可以基于不同的場(chǎng)景提供不同的過載保護(hù)方案,且簡(jiǎn)單、有效,能夠具體化到服務(wù)器程序?qū)用?,能夠較完善地對(duì)服務(wù)器進(jìn)行過載保護(hù)。
      [0006]為達(dá)到上述目的,本發(fā)明實(shí)施例采用以下技術(shù)方案:
      [0007]—種服務(wù)器過載保護(hù)方法,包括步驟:
      [0008]監(jiān)測(cè)服務(wù)器工作狀態(tài)信息,所述工作狀態(tài)信息包括下述信息中的任意一項(xiàng)或任意組合:設(shè)定數(shù)目個(gè)計(jì)數(shù)單位時(shí)長內(nèi)接收到的請(qǐng)求數(shù)目、各連接的接收速率和/或發(fā)送速率、各連接的上一次活動(dòng)時(shí)間與當(dāng)前時(shí)間的第一時(shí)間差、發(fā)送緩沖區(qū)的數(shù)據(jù)量和/或接收緩沖區(qū)的數(shù)據(jù)量、消息隊(duì)列中已寫入的數(shù)據(jù)量、提取數(shù)據(jù)的時(shí)間與所述數(shù)據(jù)的發(fā)送時(shí)間的第二時(shí)間差、發(fā)送待發(fā)送數(shù)據(jù)的時(shí)間與接收到所述待發(fā)送數(shù)據(jù)的時(shí)間的第三時(shí)間差;
      [0009]分別判斷各所述工作狀態(tài)信息是否滿足對(duì)應(yīng)的預(yù)定過載條件;
      [0010]在所述工作狀態(tài)信息中的任意一個(gè)滿足對(duì)應(yīng)的預(yù)定過載條件時(shí),進(jìn)行對(duì)應(yīng)的過載保護(hù)處理。
      [0011]—種服務(wù)器過載保護(hù)系統(tǒng),包括:
      [0012]檢測(cè)模塊,用于監(jiān)測(cè)服務(wù)器工作狀態(tài)信息,所述工作狀態(tài)信息包括下述信息中的任意一項(xiàng)或任意組合:設(shè)定數(shù)目個(gè)計(jì)數(shù)單位時(shí)長內(nèi)接收到的請(qǐng)求數(shù)目、各連接的接收速率和/或發(fā)送速率、各連接的上一次活動(dòng)時(shí)間與當(dāng)前時(shí)間的第一時(shí)間差、發(fā)送緩沖區(qū)的數(shù)據(jù)量和/或接收緩沖區(qū)的數(shù)據(jù)量、消息隊(duì)列中已寫入的數(shù)據(jù)量、提取數(shù)據(jù)的時(shí)間與所述數(shù)據(jù)的發(fā)送時(shí)間的第二時(shí)間差、發(fā)送待發(fā)送數(shù)據(jù)的時(shí)間與接收到所述待發(fā)送數(shù)據(jù)的時(shí)間的第三時(shí)間差;
      [0013]條件判定模塊,分別判斷各所述工作狀態(tài)信息是否滿足對(duì)應(yīng)的預(yù)定過載條件;
      [0014]過載處理模塊,用于在所述工作狀態(tài)信息中的任意一個(gè)滿足對(duì)應(yīng)的預(yù)定過載條件時(shí),進(jìn)行對(duì)應(yīng)的過載保護(hù)處理。
      [0015]一種服務(wù)器,包括如上所述的服務(wù)器過載保護(hù)系統(tǒng)。
      [0016]根據(jù)如上所述的本發(fā)明實(shí)施例的方案,其是基于工作場(chǎng)景的不同,對(duì)不同的工作狀態(tài)信息進(jìn)行監(jiān)測(cè),且分別設(shè)置有不同的預(yù)定過載條件,并在滿足對(duì)應(yīng)的預(yù)定過載條件時(shí),分別進(jìn)行對(duì)應(yīng)的過載保護(hù)處理,可以基于不同的場(chǎng)景提供不同的過載保護(hù)方案,且簡(jiǎn)單、有效,能夠具體化到服務(wù)器程序?qū)用?,能夠較完善地對(duì)服務(wù)器進(jìn)行過載保護(hù)。
      【附圖說明】
      [0017]圖1是本發(fā)明的服務(wù)器過載保護(hù)方法實(shí)施例的流程示意圖;
      [0018]圖2是本發(fā)明的服務(wù)器過載保護(hù)方法應(yīng)用的MCP++系統(tǒng)的模塊結(jié)構(gòu)示意圖;
      [0019]圖3是本發(fā)明的服務(wù)器過載保護(hù)方法的一個(gè)應(yīng)用示例中的時(shí)間序列示意圖;
      [0020]圖4是本發(fā)明的服務(wù)器過載保護(hù)方法的另一個(gè)應(yīng)用示例中的時(shí)間序列示意圖;
      [0021]圖5是本發(fā)明的服務(wù)器過載保護(hù)系統(tǒng)實(shí)施例的結(jié)構(gòu)示意圖;
      [0022]圖6是能實(shí)現(xiàn)本發(fā)明的一個(gè)計(jì)算機(jī)系統(tǒng)的模塊圖。
      【具體實(shí)施方式】
      [0023]為使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步的詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的【具體實(shí)施方式】?jī)H僅用以解釋本發(fā)明,并不限定本發(fā)明的保護(hù)范圍。
      [0024]圖1中示出了本發(fā)明的服務(wù)器過載保護(hù)方法實(shí)施例的流程示意圖,如圖1所示,本實(shí)施例中的方法包括:
      [0025]步驟S101:監(jiān)測(cè)服務(wù)器工作狀態(tài)信息,所述工作狀態(tài)信息包括下述信息中的任意一項(xiàng)或任意組合:設(shè)定數(shù)目個(gè)計(jì)數(shù)單位時(shí)長內(nèi)接收到的請(qǐng)求數(shù)目、各連接的接收速率和/或發(fā)送速率、各連接的上一次活動(dòng)時(shí)間與當(dāng)前時(shí)間的第一時(shí)間差、發(fā)送緩沖區(qū)的數(shù)據(jù)量和/或接收緩沖區(qū)的數(shù)據(jù)量、消息隊(duì)列中已寫入的數(shù)據(jù)量、提取數(shù)據(jù)的時(shí)間與所述數(shù)據(jù)的發(fā)送時(shí)間的第二時(shí)間差、發(fā)送待發(fā)送數(shù)據(jù)的時(shí)間與接收到所述待發(fā)送數(shù)據(jù)的時(shí)間的第三時(shí)間差;
      [0026]步驟S102:分別判斷各所述工作狀態(tài)信息是否滿足對(duì)應(yīng)的預(yù)定過載條件;
      [0027]步驟S103:在所述工作狀態(tài)信息中的任意一個(gè)滿足對(duì)應(yīng)的預(yù)定過載條件時(shí),進(jìn)行對(duì)應(yīng)的過載保護(hù)處理。
      [0028]根據(jù)如上所述的本發(fā)明實(shí)施例的方案,其是基于工作場(chǎng)景的不同,對(duì)不同的工作狀態(tài)信息進(jìn)行監(jiān)測(cè),且分別設(shè)置有不同的預(yù)定過載條件,并在滿足對(duì)應(yīng)的預(yù)定過載條件時(shí),分別進(jìn)行對(duì)應(yīng)的過載保護(hù)處理,可以基于不同的場(chǎng)景提供不同的過載保護(hù)方案,且簡(jiǎn)單、有效,能夠具體化到服務(wù)器程序?qū)用妫軌蜉^完善地對(duì)服務(wù)器進(jìn)行過載保護(hù)。
      [0029]上述本發(fā)明的服務(wù)器過載保護(hù)方法,可以應(yīng)用于各類型服務(wù)器中,從而可以在不同的場(chǎng)景下為服務(wù)器提供不同的過載保護(hù)服務(wù)。在下述說明中,以服務(wù)器系統(tǒng)類型為MCP++ (Main control, Cache, Proxy,緩存和連接控制模塊)系統(tǒng)為例進(jìn)行說明。圖2中示出了 MCP++系統(tǒng)的模塊結(jié)構(gòu)示意圖。
      [0030]如圖2所示,MCP++系統(tǒng)由三個(gè)模塊構(gòu)成,CO)(Connect1n Cache Daemon,外部連接緩存服務(wù))負(fù)載外部網(wǎng)絡(luò)連接管理,DCC(Daemon Connect1n Cache,內(nèi)部連接緩存服務(wù))負(fù)載對(duì)外發(fā)起網(wǎng)絡(luò)連接。MCD(Main Control Daemon,主控服務(wù))是實(shí)際處理數(shù)據(jù)的模塊。CCD/DCC收發(fā)的數(shù)據(jù),均通過一對(duì)MQ (Message Queue,使用shm(共享內(nèi)存)實(shí)現(xiàn)的環(huán)形消息隊(duì)列)與MCD進(jìn)行通信。MQ是基于Linux系統(tǒng)的SYS V共享內(nèi)存實(shí)現(xiàn)的環(huán)形消息隊(duì)列。數(shù)據(jù)通過放在共享內(nèi)存中,在不同的MCP++內(nèi)部模塊間進(jìn)行傳遞。
      [0031]基于不同的場(chǎng)景,上述工作狀態(tài)信息的不同,以下針對(duì)不同的情況分別進(jìn)行闡述。
      [0032]在上述工作狀態(tài)信息包括設(shè)定數(shù)目個(gè)計(jì)數(shù)單位時(shí)長內(nèi)接收到的請(qǐng)求數(shù)目的情況下,所述對(duì)應(yīng)的預(yù)定過載條件包括:所述請(qǐng)求數(shù)目大于或者等于設(shè)定請(qǐng)求數(shù)目閾值,所述對(duì)應(yīng)的過載保護(hù)處理包括:丟棄在所述設(shè)定數(shù)目個(gè)計(jì)數(shù)單位時(shí)長內(nèi)后續(xù)接收到的請(qǐng)求,直至下一個(gè)設(shè)定數(shù)目個(gè)計(jì)數(shù)單位時(shí)長。
      [0033]這種服務(wù)器保護(hù)方式可以稱之為是單位時(shí)間內(nèi)總請(qǐng)求數(shù)目限制的模式。在該模式下,圖2中所示的MCP++服務(wù)器的CCD模塊,可以限制一段時(shí)間內(nèi)收到的外部請(qǐng)求總數(shù)目,從而實(shí)現(xiàn)對(duì)單位時(shí)間內(nèi)訪問總數(shù)的顯示。
      [0034]在該模式下,需要配置三個(gè)參數(shù),分別是:使用的計(jì)數(shù)單位的個(gè)數(shù)(即上述設(shè)定數(shù)目個(gè)),每個(gè)計(jì)數(shù)單位表示的時(shí)間,在計(jì)數(shù)單位的個(gè)數(shù)*計(jì)數(shù)單位表示的時(shí)間這個(gè)總時(shí)間范圍內(nèi)的最大請(qǐng)求數(shù)(即上述設(shè)定請(qǐng)求數(shù)目閾值)。如果超過該設(shè)定請(qǐng)求數(shù)目閾值則算過載,后續(xù)新請(qǐng)求會(huì)被丟棄。最大請(qǐng)求數(shù)除以計(jì)數(shù)單位,就是每個(gè)計(jì)數(shù)單位時(shí)間范圍內(nèi)允許的請(qǐng)求總數(shù)。在另一個(gè)較佳實(shí)施例中,可以限定每個(gè)計(jì)數(shù)單位的時(shí)間范圍內(nèi)允許的最大請(qǐng)求數(shù)為上述設(shè)定請(qǐng)求數(shù)目閾值,從而能夠更好的支持較多的突發(fā)請(qǐng)求的情況。
      [0035]圖3中示出了一個(gè)具體應(yīng)用示例中的時(shí)間序列示意圖。在圖3所示的時(shí)間序列中,tl-t0、t2-tl、t3-t2……tl2-tll分別代表一個(gè)計(jì)數(shù)單位,假設(shè)上述設(shè)定數(shù)目個(gè)為6,即圖3所示中從t0至t6為一個(gè)總時(shí)間范圍,從t6至tl2代表一個(gè)總時(shí)間范圍,且假設(shè)設(shè)定請(qǐng)求數(shù)目閾值為60。
      [0036]結(jié)合圖3中所示的時(shí)間序列示意圖,以圖2中所示的CCD模塊為例,CCD模塊的請(qǐng)求數(shù)限制是根據(jù)每個(gè)計(jì)數(shù)單位以及一個(gè)總時(shí)間范圍內(nèi)的請(qǐng)求總數(shù)來進(jìn)行限制。CCD模塊每收到一次數(shù)據(jù)記為一次請(qǐng)求,并累加請(qǐng)求計(jì)數(shù)。同時(shí)實(shí)時(shí)檢測(cè)當(dāng)前的系統(tǒng)時(shí)間,看是否過去了一個(gè)計(jì)數(shù)單位表示的時(shí)間。
      [0037]如果還處于一個(gè)計(jì)數(shù)單位表示的時(shí)間范圍內(nèi),但此時(shí)請(qǐng)求數(shù)量達(dá)到了設(shè)定數(shù)目個(gè)計(jì)數(shù)單位時(shí)間范圍內(nèi)的請(qǐng)求總數(shù)(即上述設(shè)定請(qǐng)求數(shù)目閾值),則不再處理后續(xù)請(qǐng)求,丟棄接下來收到的數(shù)據(jù)
      當(dāng)前第1頁1 2 3 4 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1