[發明專利]緩存處理方法以及緩存處理系統有效
| 申請號: | 200610167180.8 | 申請日: | 2006-12-26 |
| 公開(公告)號: | CN101075241A | 公開(公告)日: | 2007-11-21 |
| 發明(設計)人: | 王海波 | 申請(專利權)人: | 騰訊科技(深圳)有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30;G06F12/08;H04L29/06 |
| 代理公司: | 北京德琦知識產權代理有限公司 | 代理人: | 宋志強;麻海明 |
| 地址: | 518044廣東省深圳市*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 緩存 處理 方法 以及 系統 | ||
技術領域
本發明涉及存儲技術中的緩存(cache)技術領域,特別是一種緩存處理方法以及一種緩存處理系統。
背景技術
隨著互聯網技術的發展,大量的網絡用戶使用瀏覽器訪問互聯網上的WEB服務器,用戶通常通過超文本傳輸協議(HTTP)方式向WEB服務器請求一個URL對應的數據文件,WEB服務器通過HTTP協議對用戶請求作出應答,返回所請求的數據文件。
隨著用戶數量的增大,海量的用戶訪問競相使用有限的WEB服務器帶寬,導致訪問速度下降;同時由于互聯網上運營商的不同或者地理環境的差異,也會導致部分用戶訪問WEB服務器的速度很慢。
WEB加速是一種通過點對點(P2P)的方式加速用戶訪問WEB服務器網頁的方法。用戶終端緩存最近訪問過的WEB服務器的數據文件。其他用戶通過P2P的方式從訪問過相同WEB服務器數據文件的用戶終端那里獲取自身需要的數據文件,并且可以同步使用HTTP方式從WEB服務器獲取數據,來加速對WEB服務器的訪問。
由于WEB訪問的數據文件大多數比較小,而且數量比較多,對于這種形式的大量文件進行數據緩存,其并發磁盤訪問會導致系統開銷較大,從而影響加速效果。同時,由于WEB加速通過P2P的方式來下載cache文件,安全性問題也需要考慮。因此,如何有效地管理緩存成了急需解決的技術問題。
發明內容
有鑒于此,本發明提出了一種緩存處理方法,用以有效管理WEB加速中用戶終端的緩存。本發明的另一個目的是提出一種緩存處理系統。
根據上述目的本發明提出了一種緩存處理方法,該方法包括:
A.當需要從網絡獲取文件時,根據索引在內存緩存模塊中查找,如果查找到對應的緩存條目,則讀取其中的文件,否則執行步驟B;所述索引是對Web文件的統一資源定位符(URL)進行哈希(HASH)后得到的長度統一的HASH值;
B.根據索引在磁盤緩存模塊中查找,如果查找到對應的緩存條目,則在內存緩存模塊中構造新的條目,將所述磁盤緩存模塊中對應的緩存條目中的文件寫入所構造緩存條目中,并讀取所述文件,否則執行步驟C;
C.從網絡中下載獲取所述文件,在內存緩存模塊中構造新的緩存條目,并在該緩存條目中寫入所述文件;
該方法進一步包括:將內存緩存模塊中的緩存條目寫入磁盤緩存模塊;
當寫入大小小于設定閾值的小文件時,將其寫入所包含小文件的大小類別與所要寫入的小文件相同且具有足夠空間的大文件或將其寫入創建的大文件;
當刪除所述小文件時,從其所在的大文件中刪除該小文件,并且當所述大文件中沒有小文件時,刪除所述大文件;
當讀取所述小文件時,從其所在的大文件中讀取該小文件。
步驟B和步驟C中在內存緩存模塊中構造新的緩存條目之前進一步包括判斷內存緩存模塊是否已滿的步驟,如果是,則刪除內存緩存模塊中最久沒有讀取的緩存條目,然后執行構造;否則,直接執行構造。
在刪除內存緩存模塊中所述緩存條目的同時將其寫入磁盤緩存模塊。
所述將內存緩存模塊中的緩存條目寫入磁盤緩存模塊為:將內存緩存模塊中最久沒有被訪問的緩存條目寫入磁盤緩存模塊。
在寫入磁盤緩存模塊之前進一步包括判斷磁盤緩存模塊是否已滿的步驟,如果是,則刪除磁盤緩存模塊中最久沒有被修改的緩存條目,然后執行寫入;否則直接執行寫入。
所述在緩存條目中寫入文件的步驟包括:獲取緩存條目的當前訪問狀態,當緩存條目的當前訪問狀態是寫方式或讀方式時,禁止寫入;當緩存條目的當前訪問狀態是沒有用戶訪問時,在該緩存條目中寫入文件,并記錄緩存條目的當前狀態為寫方式;在寫入結束之后,記錄緩存的當前狀態為沒有用戶訪問。
讀取緩存條目中的文件的步驟包括:獲取緩存條目的當前訪問狀態,當緩存條目的當前訪問狀態是寫方式時,禁止讀取;當緩存條目的當前訪問狀態是讀方式或沒有用戶訪問時,讀取緩存條目中的文件,并將緩存條目的讀用戶數加1;在讀取結束之后,當緩存條目的讀用戶數為0時,記錄緩存條目的當前狀態為沒有用戶訪問。
該方法進一步包括:從磁盤緩存模塊中獲取緩存條目時,讀取其中文件的HASH值,并計算所讀取的文件的HASH值,如果兩個HASH值相同,則認證所述文件為合法,否則認證所述文件為不合法;和/或,認證通過HTTP方式下載的文件為合法;和/或,部分或者全部通過P2P方式下載文件時,下載對應的HASH值,并計算所下載的文件的HASH值,如果兩個HASH值相同,則認證所述文件為合法,否則認證所述文件為不合法。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于騰訊科技(深圳)有限公司,未經騰訊科技(深圳)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200610167180.8/2.html,轉載請聲明來源鉆瓜專利網。





