[發明專利]基于加鎖限制的數據庫訪問方法、系統、終端及存儲介質有效
| 申請號: | 202110225998.5 | 申請日: | 2021-03-01 |
| 公開(公告)號: | CN113010533B | 公開(公告)日: | 2022-07-26 |
| 發明(設計)人: | 楊磊;湯錦春 | 申請(專利權)人: | 上海鈞正網絡科技有限公司 |
| 主分類號: | G06F16/23 | 分類號: | G06F16/23;G06F16/2455;G06F16/27;G06F21/62 |
| 代理公司: | 上海唯源專利代理有限公司 31229 | 代理人: | 汪家瀚 |
| 地址: | 201199 上海市*** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 加鎖 限制 數據庫 訪問 方法 系統 終端 存儲 介質 | ||
本發明提供基于加鎖限制的數據庫訪問方法、系統、終端及存儲介質,包括:包括:接收多線程訪問請求;若所述多線程訪問請求中的線程獲取到鎖,則對主緩存進行更新操作,以使主緩存數據與數據庫數據一致,并同步更新備份緩存;若所述多線程訪問請求中的線程未獲取到鎖,則讀取所述備份緩存并執行降級策略,以獲取非空值。通過主緩存和備份緩存的雙軌機制,使得未能獲取到鎖的線程不再像現有技術中那樣低效率的等待,而是通過備用緩存來獲取次新結果值或者直接獲取一個固定值。進一步地,還基于分段加鎖機制優化了加鎖粒度,防止加鎖粒度太大而對所有的線程請求都進行加鎖,影響訪問效率;結合備份緩存技術,最大限度地提升了用戶體驗和數據一致性。
技術領域
本發明涉及數據庫技術領域,尤其涉及基于加鎖限制的數據庫訪問方法、系統、終端及存儲介質。
背景技術
緩存雪崩是指由于緩存失效導致數據未加載到內存中,或者緩存時間大面積失效,從而導致所有請求都會去查數據庫,進而導致數據庫、CPU和內存負載過高,甚至宕機。目前解決緩存雪崩的技術方案有如下幾種:
方案1)解決緩存大面積失效的問題,對應方案如下:避免緩存設置相近的有效期,為有效期增加隨機值,統一規劃有效期,失效時間均勻分布。
方案2)解決對熱點數據持續高并發的問題,對應方案如下:使用互斥鎖,例如jvm鎖機制,分布式鎖機制等。
方案3)解決有效期本身的缺陷,對應方案為:緩存永不過期,異步更新。然而上述這些方案雖有不阻塞線程及用戶體驗好且不會出現雪崩效應的優勢,但缺點是不保證數據一致性,代碼復雜度增大(每個value值都要維護異步更新代碼),容易堆積垃圾數據。
發明內容
有鑒于現有技術的上述缺陷,本發明所要解決的技術問題是提供一種既不阻塞線程不導致雪崩效應且能確保數據一致性的數據庫訪問方案。
為實現上述目的,本發明提供了一種基于加鎖限制的數據庫訪問方法,包括:接收多線程訪問請求;若所述多線程訪問請求中的線程獲取到鎖,則對主緩存進行更新操作,以使主緩存數據與數據庫數據一致,并同步更新備份緩存;若所述多線程訪問請求中的線程未獲取到鎖,則讀取所述備份緩存并執行降級策略,以獲取非空值。
在本發明的較佳實施方式中,所述方法還包括:將待訪問數據分為多個數據段,并基于分段加鎖機制為每個數據段配置單獨的鎖,供所述多線程訪問請求訪問對應的數據段。
在本發明的另一較佳實施方式中,所述分段加鎖機制包括ConcurrentHashMap分段加鎖機制。
在本發明的另一較佳實施方式中,所述降級策略包括所述請求中未獲取到鎖的線程從所述備份緩存中獲取次新結果數值。
在本發明的另一較佳實施方式中,所述降級策略包括請求中未獲取到鎖的線程獲取一預設數值。
為實現上述目的,本發明提供了一種基于加鎖限制的數據庫訪問系統,包括請求接收模塊,用于接收多線程訪問請求;緩存更新模塊,用于若所述多線程訪問請求中的線程獲取到鎖,則對主緩存進行更新操作,以使主緩存數據與數據庫數據一致,并同步更新備份緩存;若所述多線程訪問請求中的線程未獲取到鎖,則讀取所述備份緩存并執行降級策略,以獲取非空值。
在本發明的較佳實施方式中,所述系統還包括分段加鎖模塊,用于將待訪問數據分為多個數據段,并基于分段加鎖機制為每個數據段配置單獨的鎖,供所述多線程訪問請求訪問對應的數據段。
在本發明的較佳實施方式中,所述降級策略包括所述請求中未獲取到鎖的線程從所述備份緩存中獲取次新結果數值或者獲取一預設數值。
為實現上述目的,本發明提供了一種計算機可讀存儲介質,其上存儲有計算機程序,所述計算機程序被處理器執行時實現所述的基于加鎖限制的數據庫訪問方法。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于上海鈞正網絡科技有限公司,未經上海鈞正網絡科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110225998.5/2.html,轉載請聲明來源鉆瓜專利網。





