[發明專利]防止緩存穿透的方法和裝置在審
| 申請號: | 201811600208.1 | 申請日: | 2018-12-26 |
| 公開(公告)號: | CN109710644A | 公開(公告)日: | 2019-05-03 |
| 發明(設計)人: | 金衛 | 申請(專利權)人: | 蘇州思必馳信息科技有限公司 |
| 主分類號: | G06F16/2455 | 分類號: | G06F16/2455 |
| 代理公司: | 北京商專永信知識產權代理事務所(普通合伙) 11400 | 代理人: | 方挺;黃謙 |
| 地址: | 215123 江蘇省蘇州市蘇*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 緩存 緩存查詢 穿透的 第三方 方法和裝置 命中 查詢請求 接收緩存 設置數據 數據提交 信號量 原有的 命中率 預設 吞吐量 合法 后臺 鎖定 查詢 成功 釋放 保證 訪問 | ||
本發明公開防止緩存穿透的方法和裝置,其中,一種防止緩存穿透的方法,包括:接收緩存查詢請求,判斷緩存查詢請求是否合法;若緩存查詢請求合法,則查詢并判斷緩存是否命中緩存查詢請求所對應的數據;若緩存沒有命中,則獲取第三方鎖對緩存查詢請求進行鎖定;判斷緩存查詢請求是否成功獲取第三方鎖,其中,第三方鎖的具有預設釋放時間;若成功獲取第三方鎖,訪問后臺將緩存查詢請求所對應的數據提交到緩存,并設置數據的信號量為已緩存。本實施例的方案能夠使得緩存穿透的可能性幾乎為0,直接效果是緩存的命中率變高,同時極大限度的保證了原有的性能。深層效果是項目的吞吐量直接上升。
技術領域
本發明屬于緩存技術領域,尤其涉及防止緩存穿透的方法和裝置。
背景技術
緩存穿透是指查詢一個一定不存在的數據,由于緩存是不命中時需要從數據庫查詢,查不到數據則不寫入緩存,這將導致這個不存在的數據每次請求都要到數據庫去查詢,造成緩存穿透。
相關技術中,市面上有一些防止緩存穿透的方案,可以解決大部分問題,但是或多或少都存在缺陷。比如緩存預熱、二級緩存、加鎖、bloom filter(布隆過濾器)、使用隊列等。
這些技術可以組合使用,也可以單獨使用,比如緩存預熱、二級緩存、加鎖等組合可以防止高并發情況下的緩存穿透。也可以使用隊列實現一個漏桶算法,可以將涌入的流量削平,按部就班的處理。
防止客戶端惡意攻擊等情況,也可以參考bloom filter的思路。
發明人在實現本申請的過程中發現,上述方案至少存在以下缺陷:
1)無法防止惡意流量;
2)技術本身復雜度高;
3)性能下降;
4)用其他領域的技術來協助,無法根本上防止緩存穿透。
發明內容
本發明實施例提供一種防止緩存穿透的方法和裝置,用于至少解決上述技術問題之一。
第一方面,本發明實施例提供一種防止緩存穿透的方法,包括:接收緩存查詢請求,判斷所述緩存查詢請求是否合法;若所述緩存查詢請求合法,則查詢并判斷緩存是否命中所述緩存查詢請求所對應的數據;若緩存沒有命中,則獲取第三方鎖對所述緩存查詢請求進行鎖定;判斷所述緩存查詢請求是否成功獲取第三方鎖,其中,所述第三方鎖的具有預設釋放時間;若成功獲取第三方鎖,訪問后臺將所述緩存查詢請求所對應的數據提交到緩存,并設置所述數據的信號量為已緩存。
第二方面,本發明實施例提供一種防止緩存穿透的裝置,包括:合法判斷模塊,配置為接收緩存查詢請求,判斷所述緩存查詢請求是否合法;命中判斷模塊,配置為若所述緩存查詢請求合法,則查詢并判斷緩存是否命中所述緩存查詢請求所對應的數據;鎖獲取模塊,配置為若緩存沒有命中,則獲取第三方鎖對所述緩存查詢請求進行鎖定;獲取判斷模塊,配置為判斷所述緩存查詢請求是否成功獲取第三方鎖,其中,所述第三方鎖的具有預設釋放時間;提交緩存模塊,配置為若成功獲取第三方鎖,訪問后臺將所述緩存查詢請求所對應的數據提交到緩存,并設置所述數據的信號量為已緩存。
第三方面,提供一種電子設備,其包括:至少一個處理器,以及與所述至少一個處理器通信連接的存儲器,其中,所述存儲器存儲有可被所述至少一個處理器執行的指令,所述指令被所述至少一個處理器執行,以使所述至少一個處理器能夠執行本發明任一實施例的防止緩存穿透的方法的步驟。
第四方面,本發明實施例還提供一種計算機程序產品,所述計算機程序產品包括存儲在非易失性計算機可讀存儲介質上的計算機程序,所述計算機程序包括程序指令,當所述程序指令被計算機執行時,使所述計算機執行本發明任一實施例的防止緩存穿透的方法的步驟。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于蘇州思必馳信息科技有限公司,未經蘇州思必馳信息科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811600208.1/2.html,轉載請聲明來源鉆瓜專利網。





