[發明專利]一種業務解耦并實現多級緩存的自動化更新的方法及裝置在審
| 申請號: | 202111354429.7 | 申請日: | 2021-11-16 |
| 公開(公告)號: | CN113836162A | 公開(公告)日: | 2021-12-24 |
| 發明(設計)人: | 張愛平 | 申請(專利權)人: | 湖北省楚建易網絡科技有限公司 |
| 主分類號: | G06F16/23 | 分類號: | G06F16/23;G06F12/0811;G06F12/0866;G06F12/0877;G06F16/2455;G06F16/957 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 430075 湖北省武漢市東湖新技術開發*** | 國省代碼: | 湖北;42 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 業務 實現 多級 緩存 自動化 更新 方法 裝置 | ||
1.一種多級緩存結構方法及裝置,其特征在于,包括:
多層緩存的結構,第一層為進程內緩存空間,第二層為進程外本地緩存,第三層為遠程緩存。多節緩存提供一致的調用方法,共用相同的數據命名空間版本庫。
2.該裝置結構中緩存命名空間的定義規則及聯動方法,其特征在于,包括:
2.1緩存命名空間是一系列鍵值對的集合,key是字符串類型,value是64位的整數,默認為0,其值只能自增;
2.2在上述裝置中版本號的key由數據庫的庫、表、字段及值自動生成無需業務接入,自動匹配規則為:庫名、表名、字段名結合字段值進行組合;
2.3數據庫的插入、更新、刪除操作都會觸發對應庫表生成key的值自增1;
2.4在上述裝置中使用了一個自定義的數據緩存的版本化結構(圖5:數據緩存的版本化結構)。緩存頂級是key、value鍵值對,value由version數據和data內容數據兩部分組成。Version數據是當前緩存的當前版本號,允許有多個條件的版本號;Data數據是業務數據的緩存內容,可以是字符串文本、數組、對象等(不限格式,使用語言支持均可)。
3.該裝置中的業務緩存組件的方法及裝置,其特征在于,包括:
3.1業務緩存組件通過提供不同的方法訪問不同級別的緩存,比如processCache方法訪問第一級緩存,localCache方法訪問第二級緩存,remoteCache方法訪問第三級緩存;
3.2在版本自動更新緩存方法中,緩存方法首先自動生成緩存key,讀取緩存節點判斷是否存在緩存,同時讀取緩存命名空間版本庫得到當前版本條件的最新版本號;
3.3如果緩存存在并且結構是正確的緩存版本數據結構,則判斷當前版本條件與遠程版本條件數量是否一致;如果版本條件數量一致且都完全相等,這時返回緩存的內容。其它情況則進入下述緩存更新子流程(3.4);
3.4如果判斷緩存不存在或者上述版本號不一致的情況(3.3)則進入緩存更新流程,回調傳入的更新方法讀取數據庫的對應庫表取得業務數據,然后生成緩存的版本數據結構并寫入緩存,最后返回業務數據。其中回調方法由業務功能提供,實現了功能、代碼的解耦,支持任意復雜的查詢或者分頁數據的緩存、支持任意的業務場景,做到緩存組件的通用;
3.5其中當業務數據為空或者查詢失敗時均會緩存版本號,從而避免了對數據庫的并發請求,避免了緩存擊穿、緩存穿透、緩存雪崩等情況。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于湖北省楚建易網絡科技有限公司,未經湖北省楚建易網絡科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202111354429.7/1.html,轉載請聲明來源鉆瓜專利網。





