[發明專利]一種數據回寫方法、裝置、電子設備和存儲介質在審
| 申請號: | 202110648654.5 | 申請日: | 2021-06-10 |
| 公開(公告)號: | CN113377792A | 公開(公告)日: | 2021-09-10 |
| 發明(設計)人: | 趙旭奇 | 申請(專利權)人: | 上海微盟企業發展有限公司 |
| 主分類號: | G06F16/23 | 分類號: | G06F16/23;G06F16/2455;G06F9/54;G06Q10/08 |
| 代理公司: | 北京集佳知識產權代理有限公司 11227 | 代理人: | 豆貝貝 |
| 地址: | 200441 上海市寶山*** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 數據 方法 裝置 電子設備 存儲 介質 | ||
本申請公開了一種數據回寫方法、裝置、電子設備和存儲介質,該方法包括:當檢測到緩存中的庫存數據發生扣減時,判斷當前時刻與上一延遲消息的發送時刻的時間間隔是否超過預設時間閾值;若是,則生成當前時刻的延遲消息,并發送當前時刻的延遲消息至延遲消息隊列;當數據庫消費延遲消息隊列中的當前時刻的延遲消息后,則查看當前緩存中剩余庫存數據,并將剩余庫存數據回寫至數據庫。該方法只有在當前時刻與上一延遲消息的時間間隔超過預設時間閾值時,才生成新的即當前時刻的延遲消息,能夠減少寫消息的次數,且基于延時消息將一段時間內的積累數據一次回寫到數據庫,能夠減少數據庫鎖資源競爭壓力。
技術領域
本申請涉及計算機網絡存儲技術領域,特別涉及一種數據回寫方法、裝置、電子設備和存儲介質。
背景技術
當前,在庫存扣減過程中,通常利用緩存來提升系統性能,當緩存中的庫存發生扣減時,再更新數據庫中的庫存數量,即要保持緩存中的數量與數據庫中的數據最終一致性。
相關技術中當緩存中的庫存一發生扣減時,就會寫消息,數據庫根據該消息更新庫存數據,使緩存與數據庫數據同步一致。這種方式并沒有減少數據庫操作,且每次發生庫存扣減就會寫消息給數據庫,容易造成消息堆積,加大了數據庫鎖資源競爭壓力,導致數據庫層面由于鎖資源競爭導致降低系統性能。
發明內容
本申請的目的是提供一種數據回寫方法、裝置、電子設備和存儲介質,能夠減少寫消息的次數,且基于延時消息將一段時間內的積累數據一次回寫到數據庫,能夠減少數據庫鎖資源競爭壓力。其具體方案如下:
第一方面,本申請公開了一種數據回寫方法,包括:
當檢測到緩存中的庫存數據發生扣減時,判斷當前時刻與上一延遲消息的發送時刻的時間間隔是否超過預設時間閾值;
若是,則生成所述當前時刻的延遲消息,并發送所述當前時刻的延遲消息至延遲消息隊列;
當數據庫消費所述延遲消息隊列中的當前時刻的延遲消息后,則查看當前緩存中所述剩余庫存數據,并將所述剩余庫存數據回寫至所述數據庫。
可選的,所述判斷當前時刻與上一延遲消息的發送時刻的時間間隔是否超過預設時間閾值,包括:
檢測當前業務系統中是否有消息標識;所述消息標識存在的時長為所述預設時間閾值;
若未檢測到所述當前業務系統中有所述消息標識,則所述當前時刻與所述上一延遲消息的發送時刻的時間間隔超過所述預設時間閾值;
若檢測到所述當前業務系統中有所述消息標識,則所述當前時刻與所述上一延遲消息的發送時刻的時間間隔未超過所述預設時間閾值。
可選的,在所述發送所述當前時刻的延遲消息至延遲消息隊列之后,還包括:
刷新所述消息標識,生成更新后的消息標識。
可選的,在所述查看當前緩存中所述剩余庫存數據之前,還包括:
判斷當前緩存中是否有剩余庫存數據;
若否,則根據所述當前時刻的延遲消息中的剩余庫存數量,并將所述當前時刻的延遲消息中的剩余庫存數量回寫至所述數據庫。
第二方面,本申請公開了一種數據回寫裝置,包括:
第一判斷模塊,用于當檢測到緩存中的庫存數據發生扣減時,判斷當前時刻與上一延遲消息的發送時刻的時間間隔是否超過預設時間閾值;
生成模塊,用于若是,則生成所述當前時刻的延遲消息,并發送所述當前時刻的延遲消息至延遲消息隊列;
第一回寫模塊,用于當數據庫消費所述延遲消息隊列中的當前時刻的延遲消息后,
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于上海微盟企業發展有限公司,未經上海微盟企業發展有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110648654.5/2.html,轉載請聲明來源鉆瓜專利網。
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





