国产精品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>

      一種磁盤io資源分配方法和裝置制造方法

      文檔序號:6511857閱讀:230來源:國知局
      一種磁盤io資源分配方法和裝置制造方法
      【專利摘要】本發(fā)明實(shí)施例公開了一種磁盤IO資源分配方法和裝置,所述方法包括:預(yù)先設(shè)置至少一個(gè)策略組,所述策略組包括至少一個(gè)磁盤分區(qū);首先,為各個(gè)策略組分別分配令牌個(gè)數(shù)和策略模式;其次,接收任一磁盤IO請求,所述磁盤IO請求包括磁盤分區(qū)標(biāo)識;獲取所述磁盤分區(qū)標(biāo)識對應(yīng)的策略組;最后,判斷所述策略組的令牌個(gè)數(shù)是否大于零,如果是,為所述磁盤IO請求分配所述策略組的資源,并根據(jù)所述策略組的策略模式減少所述策略組的令牌個(gè)數(shù);如果否,則當(dāng)滿足新一輪令牌發(fā)放條件時(shí),執(zhí)行新一輪令牌發(fā)放。本發(fā)明采用新的令牌分配方式,避免了資源分配過程中磁盤IO資源的浪費(fèi),同時(shí),由于采用策略分組方式,減少了磁盤IO請求的擁堵,提高了磁盤IO資源的利用率。
      【專利說明】一種磁盤IO資源分配方法和裝置
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及數(shù)據(jù)處理【技術(shù)領(lǐng)域】,具體涉及一種磁盤IO資源分配方法和裝置。
      【背景技術(shù)】
      [0002]近些年,隨著物理機(jī)單機(jī)的性能不斷提升和虛擬化技術(shù)的不斷成熟,用戶可以在一臺物理機(jī)上面部署多臺虛擬機(jī),啟用多個(gè)類型的應(yīng)用。系統(tǒng)將資源平均分配給各個(gè)虛擬機(jī),而無法根據(jù)應(yīng)用服務(wù)的實(shí)際資源需求為虛擬機(jī)進(jìn)行合理有效的資源分配。實(shí)際應(yīng)用中,對于磁盤IO資源的分配就是采用上述平均分配的方式。
      [0003]通常,系統(tǒng)接收到磁盤IO請求后,根據(jù)磁盤IO請求,確定該IO請求所需求的磁盤分區(qū)后,直接將該磁盤分區(qū)的資源分配給該IO請求。可見,該資源方法是以磁盤分區(qū)為控制對象,當(dāng)該需求磁盤分區(qū)不存在可用資源時(shí),該磁盤IO請求即得不到響應(yīng)。
      [0004]所以,上述資源分配方法會造成磁盤IO請求的擁堵,同時(shí)不能有效的利用資源。

      【發(fā)明內(nèi)容】

      [0005]為了充分利用空閑資源,從而提高資源利用率,本發(fā)明提供了一種基于IaaS平臺的資源調(diào)度方法和裝置。
      [0006]本發(fā)明提供了一種磁盤IO資源分配方法,所述方法包括:
      [0007]預(yù)先設(shè)置至少一個(gè)策略組,所述策略組包括至少一個(gè)磁盤分區(qū);
      [0008]為各個(gè)策略組分別分配令牌個(gè)數(shù)和策略模式;
      [0009]接收任一磁盤IO請求,所述磁盤IO請求包括磁盤分區(qū)標(biāo)識,所述磁盤分區(qū)標(biāo)識用于唯一標(biāo)識磁盤分區(qū);
      [0010]獲取所述磁盤分區(qū)標(biāo)識對應(yīng)的策略組;
      [0011]判斷所述策略組的令牌個(gè)數(shù)是否大于零,如果是,則為所述磁盤IO請求分配所述策略組的資源,并根據(jù)所述策略組的策略模式減少所述策略組的令牌個(gè)數(shù);如果否,則當(dāng)滿足新一輪令牌發(fā)放條件時(shí),執(zhí)行新一輪令牌發(fā)放。
      [0012]優(yōu)選地,所述當(dāng)滿足新一輪令牌發(fā)放條件時(shí),執(zhí)行新一輪令牌發(fā)放,包括:
      [0013]當(dāng)滿足新一輪令牌發(fā)放條件時(shí),將所有策略組的令牌個(gè)數(shù)增加預(yù)設(shè)個(gè)數(shù)。
      [0014]優(yōu)選地,所述方法還包括:
      [0015]為所述磁盤IO請求分配所述策略組的資源,并根據(jù)所述策略組的策略模式減少所述令牌個(gè)數(shù)。
      [0016]優(yōu)選地,所述獲取所述磁盤分區(qū)標(biāo)識對應(yīng)的策略組,包括:
      [0017]獲取所述磁盤IO請求中的磁盤分區(qū)標(biāo)識;
      [0018]根據(jù)所述磁盤分區(qū)標(biāo)識查找對應(yīng)的磁盤分區(qū);
      [0019]獲取所述磁盤分區(qū)對應(yīng)的策略組。
      [0020]優(yōu)選地,所述當(dāng)滿足新一輪令牌發(fā)放條件時(shí),執(zhí)行新一輪令牌發(fā)放,包括:
      [0021]當(dāng)所有策略組的令牌個(gè)數(shù)均為零時(shí),執(zhí)行新一輪令牌發(fā)放;[0022]或者,
      [0023]當(dāng)所有策略組的令牌個(gè)數(shù)不都為零時(shí),判斷令牌個(gè)數(shù)最多的策略組是否處于預(yù)設(shè)的繁忙狀態(tài),如果否,則執(zhí)行新一輪令牌發(fā)放。
      [0024]優(yōu)選地,所述方法還包括:
      [0025]每隔預(yù)設(shè)頻率的時(shí)長獲取一次資源分配日志;
      [0026]根據(jù)所述資源分配日志,為各個(gè)策略組分別分配令牌個(gè)數(shù)和策略模式。
      [0027]本發(fā)明還提供了一種磁盤IO資源分配系統(tǒng),所述系統(tǒng)包括:
      [0028]設(shè)置單元,用于預(yù)先設(shè)置至少一個(gè)策略組,所述策略組包括至少一個(gè)磁盤分區(qū);
      [0029]第一分配單元,用于為各個(gè)策略組分別分配令牌個(gè)數(shù)和策略模式;
      [0030]接收單元,用于接收任一磁盤IO請求,所述磁盤IO請求包括磁盤分區(qū)標(biāo)識,所述磁盤分區(qū)標(biāo)識用于唯一標(biāo)識磁盤分區(qū);
      [0031]第一獲取單元,用于獲取所述磁盤分區(qū)標(biāo)識對應(yīng)的策略組;
      [0032]判斷單元,用于判斷所述策略組的令牌個(gè)數(shù)是否大于零;
      [0033]第二分配單元,用于在所述判斷單元的結(jié)果為是時(shí),為所述磁盤IO請求分配所述策略組的資源,并根據(jù)所述策略組的策略模式減少所述策略組的令牌個(gè)數(shù);
      [0034]令牌發(fā)放單元,用于在所述判斷單元的結(jié)果為否,且滿足新一輪令牌發(fā)放條件時(shí),執(zhí)行新一輪令牌發(fā)放。
      [0035]優(yōu)選地,所述令牌發(fā)放單元,包括:
      [0036]第一發(fā)放子單元,用于當(dāng)滿足新一輪令牌發(fā)放條件時(shí),將所有策略組的令牌個(gè)數(shù)增加預(yù)設(shè)個(gè)數(shù)。
      [0037]優(yōu)選地,所述系統(tǒng)還包括:
      [0038]第三分配單元,用于為所述磁盤IO請求分配所述策略組的資源,并根據(jù)所述策略組的策略模式減少所述令牌個(gè)數(shù)。
      [0039]優(yōu)選地,所述第一獲取單元,包括:
      [0040]第一獲取子單元,用于獲取所述磁盤IO請求中的磁盤分區(qū)標(biāo)識;
      [0041]查找子單元,用于根據(jù)所述磁盤分區(qū)標(biāo)識查找對應(yīng)的磁盤分區(qū);
      [0042]第二獲取子單元,用于獲取所述磁盤分區(qū)對應(yīng)的策略組。
      [0043]優(yōu)選地,所述令牌發(fā)放單元,包括:
      [0044]第二發(fā)放子單元,用于當(dāng)所有策略組的令牌個(gè)數(shù)均為零時(shí),執(zhí)行新一輪令牌發(fā)放;
      [0045]或者,
      [0046]判斷子單元,用于當(dāng)所有策略組的令牌個(gè)數(shù)不都為零時(shí),判斷令牌個(gè)數(shù)最多的策略組是否處于預(yù)設(shè)的繁忙狀態(tài);
      [0047]第三發(fā)放子單元,用于在所述判斷子單元的結(jié)果為否時(shí),執(zhí)行新一輪令牌發(fā)放。
      [0048]優(yōu)選地,所述系統(tǒng)還包括:
      [0049]第二獲取單元,用于每隔預(yù)設(shè)頻率的時(shí)長獲取一次資源分配日志;
      [0050]第四分配單元,用于根據(jù)所述資源分配日志,為各個(gè)策略組分別分配令牌個(gè)數(shù)和策略模式。
      [0051]本發(fā)明預(yù)先設(shè)置至少一個(gè)策略組,所述策略組包括至少一個(gè)磁盤分區(qū);首先,為各個(gè)策略組分別分配令牌個(gè)數(shù)和策略模式;其次,接收任一磁盤IO請求,所述磁盤IO請求包括磁盤分區(qū)標(biāo)識;并獲取所述磁盤分區(qū)標(biāo)識對應(yīng)的策略組;最后,判斷所述策略組的令牌個(gè)數(shù)是否大于零,如果是,則為所述磁盤IO請求分配所述策略組的資源,并根據(jù)所述策略組的策略模式減少所述策略組的令牌個(gè)數(shù);如果否,則當(dāng)滿足新一輪令牌發(fā)放條件時(shí),執(zhí)行新一輪令牌發(fā)放。本發(fā)明采用了新的令牌分配方式,避免了資源分配過程中磁盤IO資源的浪費(fèi),同時(shí),由于采用了策略分組方式,在磁盤IO資源分配上更加靈活可以為一臺虛擬機(jī)分配磁盤IO資源,也可以讓幾個(gè)部署相關(guān)應(yīng)用的虛擬機(jī)共享一定比例磁盤IO資源,減少了磁盤IO請求的擁堵,提高了磁盤IO資源的利用率。
      【專利附圖】

      【附圖說明】
      [0052]為了更清楚地說明本申請實(shí)施例中的技術(shù)方案,下面將對實(shí)施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
      [0053]圖1為本發(fā)明實(shí)施例一提供的磁盤IO資源分配方法流程圖;
      [0054]圖2為本發(fā)明實(shí)施例一提供的執(zhí)行新一輪令牌發(fā)放的方法流程圖;
      [0055]圖3為本發(fā)明實(shí)施例二磁盤IO資源分配裝置結(jié)構(gòu)圖。
      【具體實(shí)施方式】
      [0056]下面將結(jié)合本申請實(shí)施例中的附圖,對本申請實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本申請一部分實(shí)施例,而不是全部的實(shí)施例?;诒旧暾堉械膶?shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都屬于本申請保護(hù)的范圍。
      [0057]本發(fā)明實(shí)施例采用了更加科學(xué)的令牌分配方式,可以解決現(xiàn)有技術(shù)的系統(tǒng)資源浪費(fèi)問題,從而可以更加合理高效的使用系統(tǒng)資源。同時(shí),本發(fā)明還采用了策略分組方式,可將相關(guān)磁盤分區(qū)加入到一個(gè)策略組里面,策略組包含I個(gè)或者多個(gè)磁盤分區(qū),然后再為策略組分配策略,即本發(fā)明的控制對象不是磁盤分區(qū)而是策略組,從全局角度為各個(gè)虛擬機(jī)進(jìn)行磁盤IO帶寬分配和控制,從而可以支持為擁有多個(gè)分區(qū)的虛擬機(jī)分配一定比例的磁盤IO帶寬,并支持多個(gè)虛擬機(jī)共享一定比例帶寬。
      [0058]實(shí)施例一
      [0059]參考圖1,圖1為本實(shí)施例提供的磁盤IO資源分配方法流程圖,具體可以包括:
      [0060]步驟101:預(yù)先設(shè)置至少一個(gè)策略組,所述策略組包括至少一個(gè)磁盤分區(qū);
      [0061]本實(shí)施例中,磁盤包括若干個(gè)磁盤分區(qū),若干個(gè)磁盤分區(qū)組成一個(gè)策略組。本實(shí)施例預(yù)先設(shè)置若干個(gè)策略組,每個(gè)策略組包括至少一個(gè)磁盤分區(qū)。本實(shí)施例的控制對象不是磁盤分區(qū)而是策略組。
      [0062]步驟102:為各個(gè)策略組分別分配令牌個(gè)數(shù)和策略模式;
      [0063]本實(shí)施例中,在設(shè)置若干個(gè)策略組之后,為所有策略組分別分配令牌個(gè)數(shù)和策略方式。
      [0064]其中,可以為各個(gè)策略組分配權(quán)重系數(shù),根據(jù)各個(gè)策略組的權(quán)重系數(shù)為各個(gè)策略組分配令牌個(gè)數(shù),例如,預(yù)先設(shè)置兩個(gè)策略組A和B,將包含有2048個(gè)令牌的基礎(chǔ)令牌池為策略組A和B進(jìn)行分配,策略組A和B的權(quán)重系數(shù)分別為80%和20%,為策略組A分配80%的磁盤IO資源,對應(yīng)的令牌個(gè)數(shù)為:2048*80%=1638 ;為策略組B分配20%的磁盤IO資源,對應(yīng)的令牌個(gè)數(shù)為:2048*20%=410。
      [0065]另外,為各個(gè)策略組分別分配一種策略模式,具體的,策略模式可以包括weight和sector-weight兩種模式,其中,weight模式不關(guān)心磁盤IO請求要請求的扇區(qū)的大小,對于任何一個(gè)磁盤IO請求的損耗均為一個(gè)令牌;而sector-weight模式會根據(jù)磁盤IO請求扇區(qū)的大小來損耗相應(yīng)的令牌,一個(gè)扇區(qū)中的512字節(jié)對應(yīng)一個(gè)令牌,也就是說,當(dāng)磁盤IO請求需要的資源不大于512字節(jié)時(shí),則一個(gè)磁盤IO請求的損耗為一個(gè)令牌,相應(yīng)的,當(dāng)磁盤IO請求需要的資源大于512字節(jié)且不大于1024字節(jié)時(shí),則一個(gè)磁盤IO請求的損耗為兩個(gè)令牌,依此類推。用戶在為各個(gè)策略組分配策略模式時(shí)可以選擇兩種模式的任何一種,同時(shí),策略模式也不僅限于上述兩種模式。
      [0066]步驟103:接收任一磁盤IO請求,所述磁盤IO請求包括磁盤分區(qū)標(biāo)識,所述磁盤分區(qū)標(biāo)識用于唯一標(biāo)識磁盤分區(qū);
      [0067]本實(shí)施例中,接收任意一個(gè)磁盤IO請求,所述磁盤IO請求用于為輸入輸出等命令提供磁盤資源,其中,磁盤IO請求可以包括磁盤分區(qū)標(biāo)識,磁盤分區(qū)標(biāo)識用于唯一標(biāo)識磁盤分區(qū),也就是說,可以根據(jù)磁盤分區(qū)標(biāo)識唯一確定磁盤分區(qū)。
      [0068]步驟104:獲取所述磁盤分區(qū)標(biāo)識對應(yīng)的策略組;
      [0069]本實(shí)施例中,由于磁盤分區(qū)標(biāo)識可以用于唯一確定磁盤分區(qū),同時(shí)任意一個(gè)策略組包括若干個(gè)磁盤分區(qū),即策略組與磁盤分區(qū)具有對應(yīng)關(guān)系,所以,首先可以根據(jù)磁盤分區(qū)標(biāo)識確定磁盤分區(qū),其次可以根據(jù)磁盤分區(qū)確定該磁盤分區(qū)所在的策略組。
      [0070]實(shí)際操作中,獲取磁盤分區(qū)標(biāo)識對應(yīng)的策略組的方法可以包括:
      [0071]首先,獲取所述磁盤IO請求中的磁盤分區(qū)標(biāo)識;
      [0072]其次,根據(jù)所述磁盤分區(qū)標(biāo)識查找對應(yīng)的磁盤分區(qū);
      [0073]最后,獲取所述磁盤分區(qū)對應(yīng)的策略組。
      [0074]步驟105:判斷所述策略組的令牌個(gè)數(shù)是否大于零,如果是,則進(jìn)入步驟106,如果否,則進(jìn)入步驟107。
      [0075]本實(shí)施例中,在磁盤IO請求需要訪問的策略組確定后,首先判斷該策略組持有的令牌個(gè)數(shù)是否大于零,如果該策略組持有的令牌個(gè)數(shù)大于零,則進(jìn)入步驟106,否則,進(jìn)入步驟 107。
      [0076]其中,應(yīng)用程序發(fā)出的磁盤I O請求可以通過所請求策略組持有的令牌來進(jìn)行磁盤IO操作,并消耗相應(yīng)的令牌。也就是說,通過令牌個(gè)數(shù)的增減能夠體現(xiàn)該策略組所持有的磁盤資源的情況。
      [0077]步驟106:為所述磁盤IO請求分配所述策略組的資源,并根據(jù)所述策略組的策略模式減少所述策略組的令牌個(gè)數(shù);
      [0078]本實(shí)施例中,當(dāng)該磁盤IO請求需要訪問的策略組持有的令牌個(gè)數(shù)大于零時(shí),為該磁盤IO請求分配該策略組的資源,從而該磁盤IO請求對應(yīng)的應(yīng)用程序可以正常運(yùn)行。并且,根據(jù)該策略組的策略模式減少該策略組所持有的令牌個(gè)數(shù),也就是說,通過減少該策略組所持有的令牌個(gè)數(shù)體現(xiàn)該策略組的資源被分配。例如,當(dāng)該策略組的策略模式為weight模式時(shí),如果該策略組持有的令牌個(gè)數(shù)大于零,將該策略組持有的令牌個(gè)數(shù)減少I個(gè)。如果減后小于O,則設(shè)置該策略組持有令牌數(shù)為O。
      [0079]步驟107:當(dāng)滿足新一輪令牌發(fā)放條件時(shí),執(zhí)行新一輪令牌發(fā)放。
      [0080]為避免策略組因?yàn)榱钆票挥霉?,長時(shí)間不能提交新的磁盤IO請求,而導(dǎo)致系統(tǒng)資源浪費(fèi)及服務(wù)異常,本實(shí)施例會發(fā)放新一輪的令牌以供所有策略組使用。
      [0081]本實(shí)施例中,當(dāng)該磁盤IO請求需要訪問的策略組持有的令牌個(gè)數(shù)不大于零,即等于零時(shí),判斷當(dāng)前狀態(tài)是否滿足新一輪令牌發(fā)放條件,如果滿足,則執(zhí)行新一輪令牌發(fā)放。
      [0082]如果當(dāng)前狀態(tài)不滿足新一輪令牌發(fā)放條件時(shí),可以將當(dāng)前的磁盤I O請求放入該策略組對應(yīng)的block_bios隊(duì)列中,其中,該block_bios隊(duì)列可以按照磁盤I O請求的時(shí)間順序存儲未被響應(yīng)的磁盤I O請求,當(dāng)滿足block_bios隊(duì)列中的磁盤I O請求的響應(yīng)條件時(shí),依照請求時(shí)間順序?qū)υ揵lock_bios隊(duì)列中的磁盤I O請求進(jìn)行響應(yīng)。
      [0083]實(shí)際操作中,執(zhí)行新一輪令牌發(fā)放的操作主要表現(xiàn)在:當(dāng)滿足新一輪令牌發(fā)放條件時(shí),將所有策略組的令牌個(gè)數(shù)增加預(yù)設(shè)個(gè)數(shù)。也就是說,將策略組持有的令牌個(gè)數(shù)增加后,相應(yīng)的該策略組就具有處理磁盤I O請求的能力。其中,新一輪令牌的發(fā)放也是依據(jù)預(yù)先制定的策略,在新一輪的令牌分配中,假設(shè)策略組A和B的權(quán)重系數(shù)仍然分別為80%和20%,則策略組A將在原來持有的令牌個(gè)數(shù)的基礎(chǔ)上增加1638個(gè),而策略組B將在原來持有的令牌數(shù)目上增加410個(gè)。
      [0084]參考圖2,圖2為執(zhí)行新一輪令牌發(fā)放的方法流程圖,具體可以包括:
      [0085]步驟201:判斷所有策略組的令牌個(gè)數(shù)是否均為零,如果否,則進(jìn)入步驟202,如果是,則進(jìn)入步驟203。
      [0086]步驟202:判斷令牌個(gè)數(shù)最多的策略組是否處于預(yù)設(shè)的繁忙狀態(tài),如果是,則進(jìn)入步驟204,如果否,則進(jìn)入步驟203。
      [0087]步驟203:執(zhí)行新一輪令牌發(fā)放。
      [0088]步驟204:將磁盤IO請求加入當(dāng)前策略組的隊(duì)列,等待被處理。
      [0089]實(shí)際操作中,新一輪令牌發(fā)放條件可以存在兩種設(shè)置方法,第一個(gè)條件為:當(dāng)所有策略組的令牌個(gè)數(shù)均為零時(shí),執(zhí)行新一輪令牌發(fā)放;第二個(gè)條件為:當(dāng)所有策略組的令牌個(gè)數(shù)不都為零時(shí),判斷令牌個(gè)數(shù)最多的策略組是否處于預(yù)設(shè)的繁忙狀態(tài),如果否,則執(zhí)行新一輪令牌發(fā)放。如果持有令牌最多策略組,其I O請求也非常繁忙,則不會分配新一輪令牌,優(yōu)先保證持有令牌最多的策略組進(jìn)行磁盤IO讀寫操作。本實(shí)施例可以在滿足上述兩個(gè)條件中的任意一個(gè)時(shí),執(zhí)行新一輪令牌發(fā)放。具體的條件的設(shè)置不限于上述兩種。
      [0090]其中,預(yù)設(shè)的繁忙狀態(tài)的標(biāo)準(zhǔn)可以是:5分鐘內(nèi),當(dāng)前策略組所提交的IO請求個(gè)數(shù)與所有策略組提交IO請求總個(gè)數(shù)的比值是否大于當(dāng)前策略組初始分配令牌個(gè)數(shù)與所有策略組初始分配令牌個(gè)數(shù)的比值,如果大于,說明該當(dāng)前策略組處于繁忙狀態(tài)。
      [0091]進(jìn)一步的,在執(zhí)行新一輪令牌發(fā)放之后,本實(shí)施例可以對為完成響應(yīng)的磁盤IO請求分配資源,具體的:
      [0092]為所述磁盤IO請求分配所述策略組的資源,并根據(jù)所述策略組的策略模式減少所述令牌個(gè)數(shù)。
      [0093]另外,本實(shí)施例可以向用戶反饋磁盤IO資源分配日志,用戶可以預(yù)先設(shè)置需要獲取資源分配日志的頻率,并且對各個(gè)策略組的磁盤IO操作信息進(jìn)行統(tǒng)計(jì),例如包含預(yù)設(shè)頻率段內(nèi)讀寫IO的個(gè)數(shù)和讀寫磁盤空間總大小,進(jìn)行了多少輪令牌分配,其中可以包括多少次令牌有富裕,多少次令牌不夠用等。按照預(yù)先設(shè)定的頻率定期將資源分配日志通過netlink方式傳輸?shù)綉?yīng)用層,以便用戶進(jìn)行分析判斷,從而可以更加真實(shí)的了解到各個(gè)策略組磁盤IO資源使用情況。
      [0094]具體的,本實(shí)施例可以每隔預(yù)設(shè)頻率的時(shí)長獲取一次資源分配日志;根據(jù)所述資源分配日志,為各個(gè)策略組分別分配令牌個(gè)數(shù)和策略模式。
      [0095]本實(shí)施例預(yù)先設(shè)置至少一個(gè)策略組,所述策略組包括至少一個(gè)磁盤分區(qū);首先,為各個(gè)策略組分別分配令牌個(gè)數(shù)和策略模式;其次,接收任一磁盤IO請求,所述磁盤IO請求包括磁盤分區(qū)標(biāo)識;并獲取所述磁盤分區(qū)標(biāo)識對應(yīng)的策略組;最后,判斷所述策略組的令牌個(gè)數(shù)是否大于零,如果是,則為所述磁盤IO請求分配所述策略組的資源,并根據(jù)所述策略組的策略模式減少所述策略組的令牌個(gè)數(shù);如果否,則當(dāng)滿足新一輪令牌發(fā)放條件時(shí),執(zhí)行新一輪令牌發(fā)放。本實(shí)施例采用了新的令牌分配方式,避免了資源分配過程中磁盤IO資源的浪費(fèi),同時(shí),由于采用了策略分組方式,在磁盤IO資源分配上更加靈活可以為一臺虛擬機(jī)分配磁盤IO資源,也可以讓幾個(gè)部署相關(guān)應(yīng)用的虛擬機(jī)共享一定比例磁盤IO資源,減少了磁盤IO請求的擁堵,提高了磁盤IO資源的利用率。
      [0096]實(shí)施例二
      [0097]參考圖3,圖3為本實(shí)施例提供的磁盤IO資源分配裝置結(jié)構(gòu)圖,所述裝置可以包括:
      [0098]設(shè)置單元301,用于預(yù)先設(shè)置至少一個(gè)策略組,所述策略組包括至少一個(gè)磁盤分區(qū);
      [0099]第一分配單元302,用于為各個(gè)策略組分別分配令牌個(gè)數(shù)和策略模式;
      [0100]接收單元303,用于接收任一磁盤IO請求,所述磁盤IO請求包括磁盤分區(qū)標(biāo)識,所述磁盤分區(qū)標(biāo)識用于唯一標(biāo)識磁盤分區(qū);
      [0101]第一獲取單元304,用于獲取所述磁盤分區(qū)標(biāo)識對應(yīng)的策略組;
      [0102]判斷單元305,用于判斷所述策略組的令牌個(gè)數(shù)是否大于零;
      [0103]第二分配單元306,用于在所述判斷單元的結(jié)果為是時(shí),為所述磁盤IO請求分配所述策略組的資源,并根據(jù)所述策略組的策略模式減少所述策略組的令牌個(gè)數(shù);
      [0104]令牌發(fā)放單元307,用于在所述判斷單元的結(jié)果為否,且滿足新一輪令牌發(fā)放條件時(shí),執(zhí)行新一輪令牌發(fā)放。
      [0105]其中,所述令牌發(fā)放單元,可以包括:
      [0106]第一發(fā)放子單元,用于當(dāng)滿足新一輪令牌發(fā)放條件時(shí),將所有策略組的令牌個(gè)數(shù)增加預(yù)設(shè)個(gè)數(shù)。
      [0107]其中,所述系統(tǒng)還可以包括:
      [0108]第三分配單元,用于為所述磁盤IO請求分配所述策略組的資源,并根據(jù)所述策略組的策略模式減少所述令牌個(gè)數(shù)。
      [0109]具體的,所述第一獲取單元,可以包括:
      [0110]第一獲取子單元,用于獲取所述磁盤IO請求中的磁盤分區(qū)標(biāo)識;
      [0111]查找子單元,用于根據(jù)所述磁盤分區(qū)標(biāo)識查找對應(yīng)的磁盤分區(qū);
      [0112]第二獲取子單元,用于獲取所述磁盤分區(qū)對應(yīng)的策略組。[0113]具體的,所述令牌發(fā)放單元,可以包括:
      [0114]第二發(fā)放子單元,用于當(dāng)所有策略組的令牌個(gè)數(shù)均為零時(shí),執(zhí)行新一輪令牌發(fā)放;
      [0115]或者,
      [0116]判斷子單元,用于當(dāng)所有策略組的令牌個(gè)數(shù)不都為零時(shí),判斷令牌個(gè)數(shù)最多的策略組是否處于預(yù)設(shè)的繁忙狀態(tài);
      [0117]第三發(fā)放子單元,用于在所述判斷子單元的結(jié)果為否時(shí),執(zhí)行新一輪令牌發(fā)放。
      [0118]進(jìn)一步的,所述系統(tǒng)還可以包括:
      [0119]第二獲取單元,用于每隔預(yù)設(shè)頻率的時(shí)長獲取一次資源分配日志;
      [0120]第四分配單元,用于根據(jù)所述資源分配日志,為各個(gè)策略組分別分配令牌個(gè)數(shù)和策略模式。
      [0121]本實(shí)施例提供的磁盤IO資源分配裝置的工作原理為:
      [0122]設(shè)置單元預(yù)先設(shè)置至少一個(gè)策略組,所述策略組包括至少一個(gè)磁盤分區(qū);第一分配單元為各個(gè)策略組分別分配令牌個(gè)數(shù)和策略模式;接收單元接收任一磁盤IO請求,所述磁盤IO請求包括磁盤分區(qū)標(biāo)識,所述磁盤分區(qū)標(biāo)識用于唯一標(biāo)識磁盤分區(qū);第一獲取單元獲取所述磁盤分區(qū)標(biāo)識對應(yīng)的策略組;判斷單元判斷所述策略組的令牌個(gè)數(shù)是否大于零;第二分配單元在所述判斷單元的結(jié)果為是時(shí),為所述磁盤IO請求分配所述策略組的資源,并根據(jù)所述策略組的策略模式減少所述策略組的令牌個(gè)數(shù);令牌發(fā)放單元在所述判斷單元的結(jié)果為否,且滿足新一輪令牌發(fā)放條件時(shí),執(zhí)行新一輪令牌發(fā)放。
      [0123]其中,所述令牌發(fā)放單元包括第一發(fā)放子單元,當(dāng)滿足新一輪令牌發(fā)放條件時(shí),第一發(fā)放子單元將所有策略組令牌個(gè)數(shù)增加預(yù)設(shè)個(gè)數(shù)。所述系統(tǒng)還可以包括第三分配單元,第三分配單元為所述磁盤IO請求分配所述策略組的資源,并根據(jù)所述策略組的策略模式減少所述令牌個(gè)數(shù)。
      [0124]具體的,所述第一獲取單元包括第一獲取子單元,第一獲取子單元獲取所述磁盤IO請求中的磁盤分區(qū)標(biāo)識;查找子單元根據(jù)所述磁盤分區(qū)標(biāo)識查找對應(yīng)的磁盤分區(qū);第二獲取子單元獲取所述磁盤分區(qū)對應(yīng)的策略組。
      [0125]具體的,所述令牌發(fā)放單元包括,當(dāng)所有策略組的令牌個(gè)數(shù)均為零時(shí),第二發(fā)放子單元執(zhí)行新一輪令牌發(fā)放;或者,當(dāng)所有策略組的令牌個(gè)數(shù)不都為零時(shí),判斷子單元判斷令牌個(gè)數(shù)最多的策略組是否處于預(yù)設(shè)的繁忙狀態(tài);在所述判斷子單元的結(jié)果為否時(shí),第三發(fā)放子單元執(zhí)行新一輪令牌發(fā)放。
      [0126]進(jìn)一步的,所述系統(tǒng)包括第二獲取單元和第四分配單元,第二獲取單元每隔預(yù)設(shè)頻率的時(shí)長獲取一次資源分配日志;第四分配單元根據(jù)所述資源分配日志,為各個(gè)策略組分別分配令牌個(gè)數(shù)和策略模式。
      [0127]本實(shí)施例預(yù)先設(shè)置至少一個(gè)策略組,所述策略組包括至少一個(gè)磁盤分區(qū);首先,為各個(gè)策略組分別分配令牌個(gè)數(shù)和策略模式;其次,接收任一磁盤IO請求,所述磁盤IO請求包括磁盤分區(qū)標(biāo)識;并獲取所述磁盤分區(qū)標(biāo)識對應(yīng)的策略組;最后,判斷所述策略組的令牌個(gè)數(shù)是否大于零,如果是,則為所述磁盤IO請求分配所述策略組的資源,并根據(jù)所述策略組的策略模式減少所述策略組的令牌個(gè)數(shù);如果否,則當(dāng)滿足新一輪令牌發(fā)放條件時(shí),執(zhí)行新一輪令牌發(fā)放。本實(shí)施例采用了新的令牌分配方式,避免了資源分配過程中磁盤IO資源的浪費(fèi),同時(shí),由于采用了策略分組方式,在磁盤IO資源分配上更加靈活可以為一臺虛擬機(jī)分配磁盤IO資源,也可以讓幾個(gè)部署相關(guān)應(yīng)用的虛擬機(jī)共享一定比例磁盤IO資源,減少了磁盤IO請求的擁堵,提高了磁盤IO資源的利用率。
      [0128]對于系統(tǒng)實(shí)施例而言,由于其基本對應(yīng)于方法實(shí)施例,所以相關(guān)之處參見方法實(shí)施例的部分說明即可。以上所描述的系統(tǒng)實(shí)施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部模塊來實(shí)現(xiàn)本實(shí)施例方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動的情況下,即可以理解并實(shí)施。
      [0129]需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來,而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個(gè)……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。
      [0130]以上對本發(fā)明實(shí)施例所提供的磁盤IO資源分配方法和裝置進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體個(gè)例對本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時(shí),對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在【具體實(shí)施方式】及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制?!?br> 【權(quán)利要求】
      1.一種磁盤IO資源分配方法,其特征在于,所述方法包括: 預(yù)先設(shè)置至少一個(gè)策略組,所述策略組包括至少一個(gè)磁盤分區(qū); 為各個(gè)策略組分別分配令牌個(gè)數(shù)和策略模式; 接收任一磁盤IO請求,所述磁盤IO請求包括磁盤分區(qū)標(biāo)識,所述磁盤分區(qū)標(biāo)識用于唯一標(biāo)識磁盤分區(qū); 獲取所述磁盤分區(qū)標(biāo)識對應(yīng)的策略組; 判斷所述策略組的令牌個(gè)數(shù)是否大于零,如果是,則為所述磁盤IO請求分配所述策略組的資源,并根據(jù)所述策略組的策略模式減少所述策略組的令牌個(gè)數(shù);如果否,則當(dāng)滿足新一輪令牌發(fā)放條件時(shí),執(zhí)行新一輪令牌發(fā)放。
      2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述當(dāng)滿足新一輪令牌發(fā)放條件時(shí),執(zhí)行新一輪令牌發(fā)放,包括: 當(dāng)滿足新一輪令牌發(fā)放條件時(shí),將所有策略組的令牌個(gè)數(shù)增加預(yù)設(shè)個(gè)數(shù)。
      3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述方法還包括: 為所述磁盤IO請求分配所述策略組的資源,并根據(jù)所述策略組的策略模式減少所述令牌個(gè)數(shù)。
      4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述獲取所述磁盤分區(qū)標(biāo)識對應(yīng)的策略組,包括: 獲取所述磁盤IO請求中的磁 盤分區(qū)標(biāo)識; 根據(jù)所述磁盤分區(qū)標(biāo)識查找對應(yīng)的磁盤分區(qū); 獲取所述磁盤分區(qū)對應(yīng)的策略組。
      5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述當(dāng)滿足新一輪令牌發(fā)放條件時(shí),執(zhí)行新一輪令牌發(fā)放,包括: 當(dāng)所有策略組的令牌個(gè)數(shù)均為零時(shí),執(zhí)行新一輪令牌發(fā)放; 或者, 當(dāng)所有策略組的令牌個(gè)數(shù)不都為零時(shí),判斷令牌個(gè)數(shù)最多的策略組是否處于預(yù)設(shè)的繁忙狀態(tài),如果否,則執(zhí)行新一輪令牌發(fā)放。
      6.根據(jù)權(quán)利要求1-5中任一所述的方法,其特征在于,所述方法還包括: 每隔預(yù)設(shè)頻率的時(shí)長獲取一次資源分配日志; 根據(jù)所述資源分配日志,為各個(gè)策略組分別分配令牌個(gè)數(shù)和策略模式。
      7.—種磁盤IO資源分配系統(tǒng),其特征在于,所述系統(tǒng)包括: 設(shè)置單元,用于預(yù)先設(shè)置至少一個(gè)策略組,所述策略組包括至少一個(gè)磁盤分區(qū); 第一分配單元,用于為各個(gè)策略組分別分配令牌個(gè)數(shù)和策略模式; 接收單元,用于接收任一磁盤IO請求,所述磁盤IO請求包括磁盤分區(qū)標(biāo)識,所述磁盤分區(qū)標(biāo)識用于唯一標(biāo)識磁盤分區(qū); 第一獲取單元,用于獲取所述磁盤分區(qū)標(biāo)識對應(yīng)的策略組; 判斷單元,用于判斷所述策略組的令牌個(gè)數(shù)是否大于零; 第二分配單元,用于在所述判斷單元的結(jié)果為是時(shí),為所述磁盤IO請求分配所述策略組的資源,并根據(jù)所述策略組的策略模式減少所述策略組的令牌個(gè)數(shù); 令牌發(fā)放單元,用于在所述判斷單元的結(jié)果為否,且滿足新一輪令牌發(fā)放條件時(shí),執(zhí)行新一輪令牌發(fā)放。
      8.根據(jù)權(quán)利要求7所述的系統(tǒng),其特征在于,所述令牌發(fā)放單元,包括: 第一發(fā)放子單元,用于當(dāng)滿足新一輪令牌發(fā)放條件時(shí),將所有策略組的令牌個(gè)數(shù)增加預(yù)設(shè)個(gè)數(shù)。
      9.根據(jù)權(quán)利要求8所述的系統(tǒng),其特征在于,所述系統(tǒng)還包括: 第三分配單元,用于為所述磁盤IO請求分配所述策略組的資源,并根據(jù)所述策略組的策略模式減少所述令牌個(gè)數(shù)。
      10.根據(jù)權(quán)利要求7所述的系統(tǒng),其特征在于,所述第一獲取單元,包括: 第一獲取子單元,用于獲取所述磁盤IO請求中的磁盤分區(qū)標(biāo)識; 查找子單元,用于根據(jù)所述磁盤分區(qū)標(biāo)識查找對應(yīng)的磁盤分區(qū); 第二獲取子單元,用于獲取所述磁盤分區(qū)對應(yīng)的策略組。
      11.根據(jù)權(quán)利要求7所述的系統(tǒng),其特征在于,所述令牌發(fā)放單元,包括: 第二發(fā)放子單元,用于當(dāng)所有策略組的令牌個(gè)數(shù)均為零時(shí),執(zhí)行新一輪令牌發(fā)放; 或者, 判斷子單元,用于當(dāng)所有策略組 的令牌個(gè)數(shù)不都為零時(shí),判斷令牌個(gè)數(shù)最多的策略組是否處于預(yù)設(shè)的繁忙狀態(tài); 第三發(fā)放子單元,用于在所述判斷子單元的結(jié)果為否時(shí),執(zhí)行新一輪令牌發(fā)放。
      12.根據(jù)權(quán)利要求7-11中任一所述系統(tǒng),其特征在于,所述系統(tǒng)還包括: 第二獲取單元,用于每隔預(yù)設(shè)頻率的時(shí)長獲取一次資源分配日志; 第四分配單元,用于根據(jù)所述資源分配日志,為各個(gè)策略組分別分配令牌個(gè)數(shù)和策略模式。
      【文檔編號】G06F3/06GK103440113SQ201310422054
      【公開日】2013年12月11日 申請日期:2013年9月16日 優(yōu)先權(quán)日:2013年9月16日
      【發(fā)明者】欒利剛 申請人:北京搜狐新媒體信息技術(shù)有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
      1