[發明專利]一種基于Redis分布式鎖重復通知解決的方法在審
| 申請號: | 202011249924.7 | 申請日: | 2020-11-10 |
| 公開(公告)號: | CN112463403A | 公開(公告)日: | 2021-03-09 |
| 發明(設計)人: | 陳思達;吳海波;郭勇;郭倩;鄔偉林 | 申請(專利權)人: | 銀盛支付服務股份有限公司 |
| 主分類號: | G06F9/54 | 分類號: | G06F9/54;G06F16/242;G06F16/2455 |
| 代理公司: | 深圳市深可信專利代理有限公司 44599 | 代理人: | 張勇 |
| 地址: | 518000 廣東省深圳市龍華*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 redis 分布式 重復 通知 解決 方法 | ||
1.一種基于Redis分布式鎖重復通知解決的方法,其特征在于:包括以下的步驟:
S1、采用Redis集合作為過濾器;
S2、存儲消息ID,Redis內部存儲判斷消息ID的ID值是否為整數,將消息ID存儲在Redis集合中;
S3、檢查消息是否重復;
S4、通知消息隊列。
2.如權利要求1所述的一種基于Redis分布式鎖重復通知解決的方法,其特征在于:所述步驟S2中,當判斷消息ID的ID值是整數時,則采用intset數組的結構存儲消息ID;當判斷消息ID的ID值是非整數或元素個數超過512個時,則采用hastable的字典結構存儲消息ID。
3.如權利要求2所述的一種基于Redis分布式鎖重復通知解決的方法,其特征在于:所述步驟S3,包括對消息ID進行讀和寫的過程。
4.如權利要求3所述的一種基于Redis分布式鎖重復通知解決的方法,其特征在于:
所述進行讀的過程包括:采用intset數組的結構存儲消息ID時,遍歷數組每個整數元素,判斷是否相等;采用hashtable的字典結構存儲消息ID時,遍歷整個字典的鍵,判斷是否相等;
所述進行寫的過程包括:采用intset數組的結構存儲消息ID時,擴展數組的大小,將數組現有的所有元素都轉成與新元素相同類型的元素,新元素添加到元素數組中;采用hashtable的字典結構存儲消息ID時,hashtable新建一個數據塊,將新元素作為數據塊的鍵,指向一個NULL的鍵值。
5.如權利要求4所述的一種基于Redis分布式鎖重復通知解決的方法,其特征在于:所述進行讀的過程,當判斷相等時,則該消息ID已存在于Redis集合;當判斷不相等時,則該消息ID未存在于Redis集合。
6.如權利要求5所述的一種基于Redis分布式鎖重復通知解決的方法,其特征在于:當消息ID已存在于Redis集合中,則該消息重復;當消息ID未存在于Redis集合中,則該消息沒有重復。
7.如權利要求6所述的一種基于Redis分布式鎖重復通知解決的方法,其特征在于:當該消息重復時,則通知消息隊列該消息已被處理,無需再次通知該消息;當該消息沒有重復時,則該消息繼續存儲于Redis集合中。
8.如權利要求1所述的一種基于Redis分布式鎖重復通知解決的方法,其特征在于:設置Redis集合的過期時間。
9.如權利要求1所述的一種基于Redis分布式鎖重復通知解決的方法,其特征在于:采用主從模式機制的Redis集群。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于銀盛支付服務股份有限公司,未經銀盛支付服務股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011249924.7/1.html,轉載請聲明來源鉆瓜專利網。





