專利名稱:一種訪問緩存服務(wù)器的方法、系統(tǒng)及緩存智能調(diào)度器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及互聯(lián)網(wǎng)及內(nèi)容分發(fā)網(wǎng)絡(luò)技術(shù)領(lǐng)域,尤其涉及一種訪問緩存服務(wù)器的方法、系統(tǒng)及緩存智能調(diào)度器。
背景技術(shù):
目前,為了提高用戶對服務(wù)器的訪問效率,緩存(Cache)服務(wù)器對服務(wù)器上的數(shù)據(jù)進(jìn)行保存。當(dāng)用戶需要對服務(wù)器中的數(shù)據(jù)進(jìn)行訪問時,由DNS將用戶引導(dǎo)到與該用戶距離最近的Cache服務(wù)器上,使得用戶從該Cache服務(wù)器中,或通過該Cache服務(wù)器從服務(wù)器中獲取相關(guān)數(shù)據(jù)。如圖1所示,具體過程如下步驟11,用戶向Cache服務(wù)器A發(fā)出訪問請求,該訪問請求用于指示該用戶需要獲取的數(shù)據(jù);步驟12,Cache服務(wù)器A在接收到該訪問請求后,判斷自身是否保存用戶所需的數(shù)據(jù),在確定保存時,進(jìn)行步驟13 ;否則,進(jìn)行步驟14 ;步驟13,將該訪問請求所指示的數(shù)據(jù)發(fā)送給用戶;步驟14,Cache服務(wù)器A向服務(wù)器發(fā)送該訪問請求;步驟15,服務(wù)器接收到該訪問請求后,將該訪問請求所指示的數(shù)據(jù)發(fā)送給Cache 服務(wù)器A;步驟16,Cache服務(wù)器A將接收到的數(shù)據(jù)保存,并轉(zhuǎn)發(fā)給用戶。在上述步驟中,預(yù)先在域名系統(tǒng)(Domain Name System,DNS)中保存用戶與Cache 服務(wù)器、Cache服務(wù)器與服務(wù)器以及用戶與服務(wù)器之間的對應(yīng)關(guān)系。本發(fā)明人發(fā)現(xiàn),現(xiàn)有技術(shù)中對Cache服務(wù)器的訪問方式存在如下問題第一,當(dāng)用戶需要對某一 Cache服務(wù)器進(jìn)行訪問時,如果該Cache服務(wù)器未保存該用戶所需的數(shù)據(jù),該Cache服務(wù)器就需要訪問服務(wù)器,并從中獲取所需數(shù)據(jù),因此,該方法使得每一個Cache服務(wù)器都會對服務(wù)器進(jìn)行訪問,增加了服務(wù)器的工作量;例如存在Cache 服務(wù)器A和Cache服務(wù)器B,用戶所需的數(shù)據(jù)保存在Cache服務(wù)器B上,但由于Cache服務(wù)器A距離用戶較較近,因此DNS將用戶引導(dǎo)到Cache服務(wù)器A上,Cache服務(wù)器A訪問服務(wù)器,服務(wù)器將相關(guān)數(shù)據(jù)發(fā)送給Cache服務(wù)器A,Cache服務(wù)器A保存并將該數(shù)據(jù)轉(zhuǎn)發(fā)給用戶, 可見,該方法即便Cache服務(wù)器B上保存有用戶所需的數(shù)據(jù),Cache服務(wù)器A也必須對服務(wù)器進(jìn)行訪問,因此,增加了服務(wù)器的工作量;第二,服務(wù)器需要將自身的數(shù)據(jù)保存在各個Cache服務(wù)器中,使得所有Cache服務(wù)器都保存了部分或全部相同的數(shù)據(jù),大大浪費了存儲資源。
發(fā)明內(nèi)容
本發(fā)明實施例提供一種訪問緩存服務(wù)器的方法、系統(tǒng)及緩存智能調(diào)度器,用于解決如何避免浪費緩存服務(wù)器存儲資源的問題。一種訪問緩存服務(wù)器的方法,所述方法包括
第一緩存服務(wù)器接收終端發(fā)來的指示終端所需數(shù)據(jù)的訪問請求,根據(jù)所述訪問請求判斷自身是否保存該終端所需數(shù)據(jù),在確定未保存時,向緩存智能調(diào)度器發(fā)送查詢請求;所述緩存智能調(diào)度器根據(jù)所述查詢請求以及預(yù)先保存的數(shù)據(jù)索引關(guān)系查找出存儲終端所需數(shù)據(jù)的第二緩存服務(wù)器,并將所述第二緩存服務(wù)器信息發(fā)送給所述第一緩存服務(wù)器;所述第一緩存服務(wù)器將接收到的所述第二緩存服務(wù)器信息發(fā)送給所述終端;所述終端連接到所述第二緩存服務(wù)器去獲取所需數(shù)據(jù)。一種緩存服務(wù)器,所述緩存服務(wù)器包括第一接收記錄模塊,用于接收終端發(fā)來的指示終端所需數(shù)據(jù)的訪問請求;以及接收緩存智能調(diào)度器發(fā)送的其他緩存服務(wù)器信息;所述其它緩存服務(wù)器為所述智能調(diào)度服務(wù)器在接收到查詢請求后,查找出的存儲有所述終端所需數(shù)據(jù)的對應(yīng)緩存服務(wù)器;判斷模塊,用于根據(jù)所述第一接收記錄模塊接收到的所述訪問請求判斷自身是否保存所述終端所需的數(shù)據(jù);第一發(fā)送模塊,用于在所述判斷模塊確定未保存終端所需數(shù)據(jù)時,向所述緩存智能調(diào)度器發(fā)送所述查詢請求;以及將所述第一接收記錄模塊接收的所述其他緩存服務(wù)器信息發(fā)送給所述終端。一種緩存智能調(diào)度器,所述緩存智能調(diào)度器包括第二接收記錄模塊,用于接收第一緩存服務(wù)器發(fā)來的查詢請求;所述查詢請求為所述第一緩存服務(wù)器在接收到終端發(fā)來的指示終端所需數(shù)據(jù)的訪問請求后,判斷自身沒有存儲該終端所需數(shù)據(jù)時發(fā)送的;查找模塊,用于根據(jù)第二接收記錄模塊接收到的所述查詢請求以及預(yù)先保存的數(shù)據(jù)索引關(guān)系查找出存儲所述終端所需數(shù)據(jù)的第二緩存服務(wù)器;第二發(fā)送模塊,用于將所述查找模塊查找到的第二緩存服務(wù)器信息發(fā)送給所述第一緩存服務(wù)器。一種訪問系統(tǒng),所述系統(tǒng)包括至少兩個緩存服務(wù)器,用于接收終端發(fā)來的指示終端所需數(shù)據(jù)的訪問請求;根據(jù)所述訪問請求判斷自身是否保存該終端所需數(shù)據(jù),在確定未保存時,向緩存智能調(diào)度器發(fā)送查詢請求;以及接收所述緩存智能調(diào)度器發(fā)送的、存儲有所述終端所需數(shù)據(jù)的其他緩存服務(wù)器信息發(fā)送給所述終端,所述其他緩存服務(wù)器為所述至少兩個緩存服務(wù)器中的一個;所述緩存智能調(diào)度器,用于接收所述查詢請求;根據(jù)所述查詢請求以及預(yù)先保存的數(shù)據(jù)索引關(guān)系查找出存儲終端所需數(shù)據(jù)的所述其他緩存服務(wù)器;將查找出的其他緩存服務(wù)器信息發(fā)送給發(fā)送所述查詢請求的緩存服務(wù)器??梢?,采用本發(fā)明實施例提供的方法,當(dāng)緩存服務(wù)器確定自身并未保存終端所需的數(shù)據(jù)時,直接向緩存智能調(diào)度器發(fā)起查詢請求;緩存智能調(diào)度器確定終端所需的數(shù)據(jù)保存在哪一臺緩存服務(wù)器上之后,將確定的緩存服務(wù)器的相關(guān)信息發(fā)送給該終端,當(dāng)該終端接收到信息后,與該信息所對應(yīng)的緩存服務(wù)器連接,并從中獲取所需數(shù)據(jù);可見,該方法可使得當(dāng)緩存服務(wù)器未保存某一數(shù)據(jù)時,并不需要從服務(wù)器中獲取并保存該數(shù)據(jù),因此,大大減小了緩存服務(wù)器所需要保存的數(shù)據(jù)的數(shù)量,避免了浪費緩存服務(wù)器的存儲資源。
圖1為現(xiàn)有技術(shù)中終端訪問緩存服務(wù)器的過程流程示意圖;圖2為本發(fā)明實施例提供的終端訪問緩存服務(wù)器的過程流程示意圖;圖3為本發(fā)明實施例提供的詳細(xì)的終端訪問緩存服務(wù)器的過程流程示意圖;圖4為本發(fā)明實施例提供的一種緩存服務(wù)器的結(jié)構(gòu)示意圖;圖5為本發(fā)明實施例提供的一種緩存智能調(diào)度器的結(jié)構(gòu)示意圖;圖6為本發(fā)明實施例提供的一種訪問緩存服務(wù)器的系統(tǒng)結(jié)構(gòu)示意圖。
具體實施例方式本發(fā)明實施例提供一種訪問緩存服務(wù)器的方法,該方法可當(dāng)緩存服務(wù)器確定自身并未保存終端所需的數(shù)據(jù)時,直接向緩存智能調(diào)度器發(fā)起查詢請求;緩存智能調(diào)度器確定終端所需的數(shù)據(jù)保存在哪一臺緩存服務(wù)器上之后,將確定的緩存服務(wù)器的相關(guān)信息發(fā)送給該終端,當(dāng)該終端接收到信息后,與該信息所對應(yīng)的緩存服務(wù)器連接,并從中獲取所需數(shù)據(jù);可見,該方法可使得當(dāng)緩存服務(wù)器未保存某一數(shù)據(jù)時,并不需要從服務(wù)器中獲取并保存該數(shù)據(jù),因此,大大減小了緩存服務(wù)器所需要保存的數(shù)據(jù)的數(shù)量,避免了浪費緩存服務(wù)器的存儲資源。如圖2所示,具體過程如下步驟21,第一緩存服務(wù)器接收終端發(fā)來的指示終端所需數(shù)據(jù)的訪問請求,根據(jù)所述訪問請求判斷自身是否保存該終端所需數(shù)據(jù),在確定未保存時,向緩存智能調(diào)度器發(fā)送查詢請求;步驟22,所述緩存智能調(diào)度器根據(jù)所述查詢請求以及預(yù)先保存的數(shù)據(jù)索引關(guān)系查找出存儲終端所需數(shù)據(jù)的第二緩存服務(wù)器,并將所述第二緩存服務(wù)器信息發(fā)送給所述第一緩存服務(wù)器;步驟23,所述第一緩存服務(wù)器將接收到的所述第二緩存服務(wù)器信息發(fā)送給所述終端;步驟M,所述終端連接到所述第二緩存服務(wù)器去獲取所需數(shù)據(jù)。具體的,緩存智能調(diào)度器預(yù)先保存有數(shù)據(jù)索引關(guān)系,該數(shù)據(jù)索引關(guān)系用于指明數(shù)據(jù)屬于那一緩存服務(wù)器;具體的,步驟M的具體操作如下所述終端連接到所述第二緩存服務(wù)器,請求獲取數(shù)據(jù);所述第二緩存服務(wù)器判斷出本地存儲有所述終端所需數(shù)據(jù)時,傳送所述數(shù)據(jù)給所述終端。較佳的,由于服務(wù)器在向緩存服務(wù)器發(fā)送數(shù)據(jù)的過程中,有可能產(chǎn)生數(shù)據(jù)錯誤或丟失的現(xiàn)象;此時緩存智能調(diào)度器的數(shù)據(jù)索引關(guān)系所記錄的信息,與緩存服務(wù)器實際保存的數(shù)據(jù)不符,為了避免該現(xiàn)象,當(dāng)終端無法從第二緩存服務(wù)中獲取數(shù)據(jù)時,即所述第二緩存服務(wù)器判斷出本地沒有存儲所述終端所需數(shù)據(jù)時,向所述緩存智能調(diào)度器發(fā)送數(shù)據(jù)獲取失敗報告;所述緩存智能調(diào)度器刪除本地保存的數(shù)據(jù)索引關(guān)系中相對應(yīng)的索引記錄。具體的,在步驟22中所述緩存智能調(diào)度器根據(jù)所述查詢請求以及預(yù)先保存的數(shù)據(jù)索引關(guān)系查找出存儲終端所需數(shù)據(jù)的第二緩存服務(wù)器具體包括所述緩存智能調(diào)度器根據(jù)所述查詢請求以及預(yù)先保存的數(shù)據(jù)索引關(guān)系,查找出存儲終端所需數(shù)據(jù)的一個或多個緩存服務(wù)器;若查找出一個緩存服務(wù)器時,將查找出的緩存服務(wù)器作為第二緩存服務(wù)器;若查找出多個緩存服務(wù)器時,根據(jù)預(yù)先設(shè)置的選擇方法從所述多個緩存服務(wù)器中選擇出一個緩存服務(wù)器,并將選擇出的緩存服務(wù)器作為第二緩存服務(wù)器。較佳的,所述若查找出多個緩存服務(wù)器時,根據(jù)預(yù)先設(shè)置的選擇方法從所述多個緩存服務(wù)器中選擇出一個緩存服務(wù)器,并將選擇出的緩存服務(wù)器作為第二緩存服務(wù)器包括從查找出的多個緩存服務(wù)器中選擇處于空閑狀態(tài)的一個或多個緩存服務(wù)器;若選擇出一個處于空閑狀態(tài)的緩存服務(wù)器時,將選擇出的該緩存服務(wù)器作為第二緩存服務(wù)器;若選擇出多個處于空閑狀態(tài)的緩存服務(wù)器時,從中選擇出權(quán)重最高的一個緩存服務(wù)器作為第二緩存服務(wù)器。具體的,當(dāng)?shù)谝痪彺娣?wù)器根據(jù)所述訪問請求判斷自身保存有該終端所需數(shù)據(jù)時,向所述終端發(fā)送所述數(shù)據(jù)。以下以具體實施例介紹本發(fā)明實施例提供一中訪問緩存服務(wù)器的方法,該方法中涉及到緩存智能調(diào)度器,在該緩存智能調(diào)度器中預(yù)先保存數(shù)據(jù)索引關(guān)系,該數(shù)據(jù)索引關(guān)系用于指示數(shù)據(jù)屬于哪一個緩存服務(wù)器,即數(shù)據(jù)與緩存服務(wù)器的對應(yīng)關(guān)系;如圖3,該方法具體過程如下步驟301,緩存服務(wù)器將從服務(wù)器獲取到的數(shù)據(jù)進(jìn)行保存;步驟302,當(dāng)終端需要獲取數(shù)據(jù)時,DNS引導(dǎo)終端連接到與其最近的一臺緩存服務(wù)器A上;步驟303,終端向緩存服務(wù)器A發(fā)送訪問請求;該訪問請求用于指示終端所需的數(shù)據(jù);步驟304,緩存服務(wù)器A接收到訪問請求;較佳的,為了在后續(xù)操作中能夠保證緩存服務(wù)器A準(zhǔn)確的向終端返回數(shù)據(jù)或者其他信息,在緩存服務(wù)器A接收到訪問請求的同時記錄該終端的信息;該信息可以是位置信息,例如終端的IP地址等、或唯一表示終端身份的終端標(biāo)識;步驟305,緩存服務(wù)器A判斷自身是否保存該終端所需數(shù)據(jù);如果確定保存,則進(jìn)行步驟306 ;否則進(jìn)行步驟307 ;步驟306,緩存服務(wù)器A將該訪問請求所指示的終端所需的數(shù)據(jù)發(fā)送給終端。較佳的,緩存服務(wù)器A可根據(jù)預(yù)先記錄的終端信息,將該訪問請求所指示的終端所需的數(shù)據(jù)發(fā)送給終端,并向緩存智能調(diào)度器發(fā)送數(shù)據(jù)獲取成功的報告;較佳的,為了保證緩存智能調(diào)度器中保存的數(shù)據(jù)索引關(guān)系符合緩存服務(wù)器中保存數(shù)據(jù)的實際情況,在本步驟后緩存服務(wù)器A,向緩存智能調(diào)度器發(fā)送數(shù)據(jù)獲取成功的報告;步驟307,緩存服務(wù)器A向緩存智能調(diào)度器發(fā)送查詢請求,該查詢請求用于指示緩存智能調(diào)度器查詢存儲終端所需數(shù)據(jù)的緩存服務(wù)器;步驟308,緩存智能調(diào)度器接收到該查詢請求后,根據(jù)該查詢請求以及預(yù)先保存的數(shù)據(jù)索引關(guān)系查找出存儲終端所需數(shù)據(jù)所的緩存服務(wù)器B ;較佳的,為了保證在后續(xù)操作中緩存智能調(diào)度器能夠準(zhǔn)確的向緩存服務(wù)器返回相關(guān)信息,緩存智能調(diào)度器接收到該查詢請求后,記錄發(fā)送查詢請求的緩存服務(wù)器A的信息, 該信息可以是緩存服務(wù)器IP地址、位置信息或唯一標(biāo)識該緩存服務(wù)器的標(biāo)識;步驟309,緩存智能調(diào)度器將查找出的緩存服務(wù)器B的信息發(fā)送給緩存服務(wù)器A ;較佳的,緩存智能調(diào)度器根據(jù)預(yù)先記錄的緩存服務(wù)器A的信息,將查找出的緩存服務(wù)器B的信息發(fā)送給緩存服務(wù)器A ;步驟310,緩存服務(wù)器A將接收到的緩存服務(wù)器B的信息發(fā)送給終端;較佳的,緩存服務(wù)器A根據(jù)預(yù)先記錄的終端的信息,將將接收到的緩存服務(wù)器B的信息發(fā)送給終端;步驟311,終端連接緩存服務(wù)器B上,并從中獲取所需數(shù)據(jù);較佳的,由于服務(wù)器在向緩存服務(wù)器發(fā)送數(shù)據(jù)的過程中,有可能產(chǎn)生數(shù)據(jù)錯誤或丟失的現(xiàn)象;此時緩存智能調(diào)度器的數(shù)據(jù)索引關(guān)系所記錄的信息,與緩存服務(wù)器實際保存的數(shù)據(jù)不符,為了避免該現(xiàn)象,當(dāng)終端無法成功從緩存服務(wù)器B中獲取數(shù)據(jù)時,該緩存服務(wù)器B向緩存智能調(diào)度器發(fā)送數(shù)據(jù)獲取失敗的報告;在步驟306和步驟311之后,緩存服務(wù)器 A向緩存智能調(diào)度器發(fā)送數(shù)據(jù)獲取成功或失敗的報告;當(dāng)緩存智能調(diào)度器接收到數(shù)據(jù)獲取失敗的報告時,除本地保存的數(shù)據(jù)索引關(guān)系中相對應(yīng)的索引記錄。較佳的,為了提高終端獲取數(shù)據(jù)的速度,在上述方法中,根據(jù)所述查詢請求以及預(yù)先保存的數(shù)據(jù)索引關(guān)系查找出終端所需數(shù)據(jù)所在的緩存服務(wù)器的位置信息具體包括所述緩存智能調(diào)度器根據(jù)所述查詢請求以及預(yù)先保存的數(shù)據(jù)索引關(guān)系,查找出存儲終端所需數(shù)據(jù)的一個或多個緩存服務(wù)器;若查找出一個緩存服務(wù)器時,將查找出的緩存服務(wù)器作為緩存服務(wù)器B ;若查找出多個緩存服務(wù)器時,根據(jù)預(yù)先設(shè)置的選擇方法從所述多個緩存服務(wù)器中選擇出一個緩存服務(wù)器,并將選擇出的緩存服務(wù)器作為緩存服務(wù)器B。具體的,若查找出多個緩存服務(wù)器時,根據(jù)預(yù)先設(shè)置的選擇方法從所述多個緩存服務(wù)器中選擇出一個緩存服務(wù)器,并將選擇出的緩存服務(wù)器作為緩存服務(wù)器B包括從查找出的多個緩存服務(wù)器中選擇處于空閑狀態(tài)的一個或多個緩存服務(wù)器;若選擇出一個處于空閑狀態(tài)的緩存服務(wù)器時,將選擇出的該緩存服務(wù)器作為緩存服務(wù)器B ;若選擇出多個處于空閑狀態(tài)的緩存服務(wù)器時,從中選擇出權(quán)重最高的一個緩存服務(wù)器作為緩存服務(wù)器B。如圖4所示,本發(fā)明實施例一種緩存服務(wù)器,所述緩存服務(wù)器包括第一接收記錄模塊41,用于接收終端發(fā)來的指示終端所需數(shù)據(jù)的訪問請求;以及接收緩存智能調(diào)度器發(fā)送的其他緩存服務(wù)器信息;所述其它緩存服務(wù)器為所述智能調(diào)度服務(wù)器在接收到查詢請求后,查找出的存儲有所述終端所需數(shù)據(jù)的對應(yīng)緩存服務(wù)器;判斷模塊42,用于根據(jù)所述第一接收記錄模塊41接收到的所述訪問請求判斷自身是否保存所述終端所需的數(shù)據(jù);第一發(fā)送模塊43,用于在所述判斷模塊42確定未保存終端所需數(shù)據(jù)時,向所述緩存智能調(diào)度器發(fā)送所述查詢請求;以及將所述第一接收記錄模塊41接收的所述其他緩存服務(wù)器信息發(fā)送給所述終端。所述第一接收記錄模塊41還用于接收終端發(fā)來的請求獲取數(shù)據(jù)的請求;
所述第一發(fā)送模塊43還用于當(dāng)所述判斷模塊42判斷本地保存有所述終端所需的數(shù)據(jù)時,發(fā)送所述數(shù)據(jù)給所述終端。所述第一發(fā)送模塊43還用于,當(dāng)所述判斷模塊42判斷出本地沒有存儲所述終端所需數(shù)據(jù)時,向所述緩存智能調(diào)度器發(fā)送數(shù)據(jù)獲取失敗報告。如圖5所示,本發(fā)明實施例提供一種緩存智能調(diào)度器,所述緩存智能調(diào)度器包括第二接收記錄模塊51,用于接收第一緩存服務(wù)器發(fā)來的查詢請求;所述查詢請求為所述第一緩存服務(wù)器在接收到終端發(fā)來的指示終端所需數(shù)據(jù)的訪問請求后,判斷自身沒有存儲該終端所需數(shù)據(jù)時發(fā)送的;查找模塊52,用于根據(jù)第二接收記錄模塊51接收到的所述查詢請求以及預(yù)先保存的數(shù)據(jù)索引關(guān)系查找出存儲所述終端所需數(shù)據(jù)的第二緩存服務(wù)器;第二發(fā)送模塊53,用于將所述查找模塊52查找到的第二緩存服務(wù)器信息發(fā)送給所述第一緩存服務(wù)器。所述第二接收記錄模塊51,還用于接收第二緩存服務(wù)器發(fā)送的數(shù)據(jù)獲取失敗報
生 P=I ;所述緩存智能調(diào)度器還包括刪除模塊M,用于在所述第二接收記錄模塊51接收到數(shù)據(jù)獲取失敗報告后,刪除本地保存的數(shù)據(jù)索引關(guān)系中相對應(yīng)的索引記錄。所述查找模塊52具體用于根據(jù)所述查詢請求以及預(yù)先保存的數(shù)據(jù)索引關(guān)系,查找出終端所需數(shù)據(jù)所在的一個或多個緩存服務(wù)器;若查找出一個緩存服務(wù)器時,將查找出的緩存服務(wù)器作為第二緩存服務(wù)器;若查找出多個緩存服務(wù)器時,根據(jù)預(yù)先設(shè)置的選擇方法從所述多個緩存服務(wù)器中選擇出一個緩存服務(wù)器,并將選擇出的緩存服務(wù)器作為第二緩存服務(wù)器。如圖6所示,本發(fā)明實施例提供一種訪問緩存服務(wù)器的系統(tǒng),所述系統(tǒng)包括至少兩個緩存服務(wù)器61,用于接收終端發(fā)來的指示終端所需數(shù)據(jù)的訪問請求;根據(jù)所述訪問請求判斷自身是否保存該終端所需數(shù)據(jù),在確定未保存時,向緩存智能調(diào)度器發(fā)送查詢請求;以及接收所述緩存智能調(diào)度器發(fā)送的、存儲有所述終端所需數(shù)據(jù)的其他緩存服務(wù)器61信息發(fā)送給所述終端,所述其他緩存服務(wù)器61為所述至少兩個緩存服務(wù)器61 中的一個;所述緩存智能調(diào)度器62,用于接收所述查詢請求;根據(jù)所述查詢請求以及預(yù)先保存的數(shù)據(jù)索引關(guān)系查找出存儲終端所需數(shù)據(jù)的所述其他緩存服務(wù)器61 ;將查找出的其他緩存服務(wù)器61信息發(fā)送給發(fā)送所述查詢請求的緩存服務(wù)器61。所述緩存服務(wù)器61還用于當(dāng)判斷本地保存有所述終端所需的數(shù)據(jù)時,發(fā)送所述數(shù)據(jù)給所述終端。綜上所述,有益效果采用本發(fā)明實施例提供的方法,當(dāng)緩存服務(wù)器確定自身并未保存終端所需的數(shù)據(jù)時,直接向緩存智能調(diào)度器發(fā)起查詢請求;緩存智能調(diào)度器確定終端所需的數(shù)據(jù)保存在哪一臺緩存服務(wù)器上之后,將確定的緩存服務(wù)器的相關(guān)位置信息發(fā)送給該終端,當(dāng)該終端接收到位置信息后,與該位置信息所對應(yīng)的緩存服務(wù)器連接,并從中獲取所需數(shù)據(jù);可見,該方法可使得當(dāng)緩存服務(wù)器未保存某一數(shù)據(jù)時,并不需要從服務(wù)器中獲取并保存該數(shù)據(jù),因此,大大減小了緩存服務(wù)器所需要保存的數(shù)據(jù)的數(shù)量,避免了浪費緩存服務(wù)器的存儲資源。同時,由于緩存智能調(diào)度器能夠從選擇出的多個緩存服務(wù)器中選擇出一個空閑的且權(quán)重最高的最優(yōu)緩存服務(wù)器,該方法可以達(dá)到緩存服務(wù)器負(fù)載均衡的效果。本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實施例可提供為方法、系統(tǒng)、或計算機程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實施例、完全軟件實施例、或結(jié)合軟件和硬件方面的實施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(zhì)(包括但不限于磁盤存儲器、CD-ROM、光學(xué)存儲器等)上實施的計算機程序產(chǎn)品的形式。本發(fā)明是參照根據(jù)本發(fā)明實施例的方法、設(shè)備(系統(tǒng))、和計算機程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個機器,使得通過計算機或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。這些計算機程序指令也可存儲在能引導(dǎo)計算機或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。這些計算機程序指令也可裝載到計算機或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計算機或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計算機實現(xiàn)的處理,從而在計算機或其他可編程設(shè)備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。盡管已描述了本發(fā)明的優(yōu)選實施例,但本領(lǐng)域內(nèi)的技術(shù)人員一旦得知了基本創(chuàng)造性概念,則可對這些實施例作出另外的變更和修改。所以,所附權(quán)利要求意欲解釋為包括優(yōu)選實施例以及落入本發(fā)明范圍的所有變更和修改。顯然,本領(lǐng)域的技術(shù)人員可以對本發(fā)明進(jìn)行各種改動和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動和變型在內(nèi)。
權(quán)利要求
1.一種訪問緩存服務(wù)器的方法,其特征在于,所述方法包括第一緩存服務(wù)器接收終端發(fā)來的指示終端所需數(shù)據(jù)的訪問請求,根據(jù)所述訪問請求判斷自身是否保存該終端所需數(shù)據(jù),在確定未保存時,向緩存智能調(diào)度器發(fā)送查詢請求;所述緩存智能調(diào)度器根據(jù)所述查詢請求以及預(yù)先保存的數(shù)據(jù)索引關(guān)系查找出存儲終端所需數(shù)據(jù)的第二緩存服務(wù)器,并將所述第二緩存服務(wù)器信息發(fā)送給所述第一緩存服務(wù)器;所述第一緩存服務(wù)器將接收到的所述第二緩存服務(wù)器信息發(fā)送給所述終端;所述終端連接到所述第二緩存服務(wù)器去獲取所需數(shù)據(jù)。
2.如權(quán)利要求1所述的方法,其特征在于,所述終端連接到所述第二緩存服務(wù)器去獲取所需數(shù)據(jù),具體包括所述終端連接到所述第二緩存服務(wù)器,請求獲取數(shù)據(jù);所述第二緩存服務(wù)器判斷出本地存儲有所述終端所需數(shù)據(jù)時,傳送所述數(shù)據(jù)給所述終端。
3.如權(quán)利要求2所述的方法,其特征在于,所述第二緩存服務(wù)器判斷出本地沒有存儲所述終端所需數(shù)據(jù)時,向所述緩存智能調(diào)度器發(fā)送數(shù)據(jù)獲取失敗報告;所述緩存智能調(diào)度器刪除本地保存的數(shù)據(jù)索引關(guān)系中相對應(yīng)的索引記錄。
4.如權(quán)利要求1所述的方法,其特征在于,所述緩存智能調(diào)度器根據(jù)所述查詢請求以及預(yù)先保存的數(shù)據(jù)索引關(guān)系查找出存儲終端所需數(shù)據(jù)的第二緩存服務(wù)器具體包括所述緩存智能調(diào)度器根據(jù)所述查詢請求以及預(yù)先保存的數(shù)據(jù)索引關(guān)系,查找出存儲終端所需數(shù)據(jù)的一個或多個緩存服務(wù)器;若查找出一個緩存服務(wù)器時,將查找出的緩存服務(wù)器作為第二緩存服務(wù)器;若查找出多個緩存服務(wù)器時,根據(jù)預(yù)先設(shè)置的選擇方法從所述多個緩存服務(wù)器中選擇出一個緩存服務(wù)器,并將選擇出的緩存服務(wù)器作為第二緩存服務(wù)器。
5.如權(quán)利要求4所述的方法,其特征在于,所述若查找出多個緩存服務(wù)器時,根據(jù)預(yù)先設(shè)置的選擇方法從所述多個緩存服務(wù)器中選擇出一個緩存服務(wù)器,并將選擇出的緩存服務(wù)器作為第二緩存服務(wù)器包括從查找出的多個緩存服務(wù)器中選擇處于空閑狀態(tài)的一個或多個緩存服務(wù)器;若選擇出一個處于空閑狀態(tài)的緩存服務(wù)器時,將選擇出的該緩存服務(wù)器作為第二緩存服務(wù)器;若選擇出多個處于空閑狀態(tài)的緩存服務(wù)器時,從中選擇出權(quán)重最高的一個緩存服務(wù)器作為第二緩存服務(wù)器。
6.如權(quán)利要求1所述的方法,其特征在于,第一緩存服務(wù)器根據(jù)所述訪問請求判斷自身保存有該終端所需數(shù)據(jù)時,向所述終端發(fā)送所述數(shù)據(jù)。
7.一種緩存服務(wù)器,其特征在于,所述緩存服務(wù)器包括第一接收記錄模塊,用于接收終端發(fā)來的指示終端所需數(shù)據(jù)的訪問請求;以及接收緩存智能調(diào)度器發(fā)送的其他緩存服務(wù)器信息;所述其它緩存服務(wù)器為所述智能調(diào)度服務(wù)器在接收到查詢請求后,查找出的存儲有所述終端所需數(shù)據(jù)的對應(yīng)緩存服務(wù)器;判斷模塊,用于根據(jù)所述第一接收記錄模塊接收到的所述訪問請求判斷自身是否保存所述終端所需的數(shù)據(jù);第一發(fā)送模塊,用于在所述判斷模塊確定未保存終端所需數(shù)據(jù)時,向所述緩存智能調(diào)度器發(fā)送所述查詢請求;以及將所述第一接收記錄模塊接收的所述其他緩存服務(wù)器信息發(fā)送給所述終端。
8.如權(quán)利要求7所述的緩存服務(wù)器,其特征在于,所述第一接收記錄模塊還用于接收終端發(fā)來的請求獲取數(shù)據(jù)的請求;所述第一發(fā)送模塊還用于當(dāng)所述判斷模塊判斷本地保存有所述終端所需的數(shù)據(jù)時,發(fā)送所述數(shù)據(jù)給所述終端。
9.如權(quán)利要求7所述的緩存服務(wù)器,其特征在于,所述第一發(fā)送模塊還用于,當(dāng)所述判斷模塊判斷出本地沒有存儲所述終端所需數(shù)據(jù)時,向所述緩存智能調(diào)度器發(fā)送數(shù)據(jù)獲取失敗報告。
10.一種緩存智能調(diào)度器,其特征在于,所述緩存智能調(diào)度器包括第二接收記錄模塊,用于接收第一緩存服務(wù)器發(fā)來的查詢請求;所述查詢請求為所述第一緩存服務(wù)器在接收到終端發(fā)來的指示終端所需數(shù)據(jù)的訪問請求后,判斷自身沒有存儲該終端所需數(shù)據(jù)時發(fā)送的;查找模塊,用于根據(jù)第二接收記錄模塊接收到的所述查詢請求以及預(yù)先保存的數(shù)據(jù)索引關(guān)系查找出存儲所述終端所需數(shù)據(jù)的第二緩存服務(wù)器;第二發(fā)送模塊,用于將所述查找模塊查找到的第二緩存服務(wù)器信息發(fā)送給所述第一緩存服務(wù)器。
11.如權(quán)利要求9所述的緩存智能調(diào)度器,其特征在于,所述第二接收記錄模塊,還用于接收第二緩存服務(wù)器發(fā)送的數(shù)據(jù)獲取失敗報告;所述緩存智能調(diào)度器還包括刪除模塊,用于在所述第二接收記錄模塊接收到數(shù)據(jù)獲取失敗報告后,刪除本地保存的數(shù)據(jù)索引關(guān)系中相對應(yīng)的索引記錄。
12.如權(quán)利要求9所述的緩存智能調(diào)度器,其特征在于,所述查找模塊具體用于根據(jù)所述查詢請求以及預(yù)先保存的數(shù)據(jù)索引關(guān)系,查找出終端所需數(shù)據(jù)所在的一個或多個緩存服務(wù)器;若查找出一個緩存服務(wù)器時,將查找出的緩存服務(wù)器作為第二緩存服務(wù)器;若查找出多個緩存服務(wù)器時,根據(jù)預(yù)先設(shè)置的選擇方法從所述多個緩存服務(wù)器中選擇出一個緩存服務(wù)器,并將選擇出的緩存服務(wù)器作為第二緩存服務(wù)器。
13.一種訪問系統(tǒng),其特征在于,所述系統(tǒng)包括至少兩個緩存服務(wù)器,用于接收終端發(fā)來的指示終端所需數(shù)據(jù)的訪問請求;根據(jù)所述訪問請求判斷自身是否保存該終端所需數(shù)據(jù),在確定未保存時,向緩存智能調(diào)度器發(fā)送查詢請求;以及接收所述緩存智能調(diào)度器發(fā)送的、存儲有所述終端所需數(shù)據(jù)的其他緩存服務(wù)器信息發(fā)送給所述終端,所述其他緩存服務(wù)器為所述至少兩個緩存服務(wù)器中的一個;所述緩存智能調(diào)度器,用于接收所述查詢請求;根據(jù)所述查詢請求以及預(yù)先保存的數(shù)據(jù)索引關(guān)系查找出存儲終端所需數(shù)據(jù)的所述其他緩存服務(wù)器;將查找出的其他緩存服務(wù)器信息發(fā)送給發(fā)送所述查詢請求的緩存服務(wù)器。
14.如權(quán)利要求13所述的系統(tǒng),其特征在于,所述緩存服務(wù)器還用于當(dāng)判斷本地保存有所述終端所需的數(shù)據(jù)時,發(fā)送所述數(shù)據(jù)給所述終端。
全文摘要
本發(fā)明涉及互聯(lián)網(wǎng)及內(nèi)容分發(fā)網(wǎng)絡(luò)技術(shù)領(lǐng)域,尤其涉及一種訪問緩存服務(wù)器的方法、系統(tǒng)及緩存智能調(diào)度器,用于解決如何避免浪費緩存服務(wù)器存儲資源的問題;該方法包括第一緩存服務(wù)器根據(jù)接收到的訪問請求,確定自身未保存終端所需數(shù)據(jù)時,向緩存智能調(diào)度器發(fā)送查詢請求;緩存智能調(diào)度器根據(jù)所述查詢請求以及預(yù)先保存的數(shù)據(jù)索引關(guān)系查找出存儲終端所需數(shù)據(jù)的第二緩存服務(wù)器,并將所述第二緩存服務(wù)器信息發(fā)送給所述第一緩存服務(wù)器;所述第一緩存服務(wù)器將接收到的所述第二緩存服務(wù)器信息發(fā)送給所述終端;所述終端連接到所述第二緩存服務(wù)器去獲取所需數(shù)據(jù)??梢?,采用本發(fā)明提供的方法,能夠避免浪費緩存服務(wù)器存儲資源。
文檔編號H04L29/06GK102333130SQ201110338610
公開日2012年1月25日 申請日期2011年10月31日 優(yōu)先權(quán)日2011年10月31日
發(fā)明者宗劼, 岳強, 栗偉, 田江波, 鐘東, 黃勇, 黃超生 申請人:北京藍(lán)汛通信技術(shù)有限責(zé)任公司