一種基于Redis的分布式業(yè)務(wù)主鍵生成方法

基本信息

申請(qǐng)?zhí)?/td> CN202111617372.5 申請(qǐng)日 -
公開(kāi)(公告)號(hào) CN114356988A 公開(kāi)(公告)日 2022-04-15
申請(qǐng)公布號(hào) CN114356988A 申請(qǐng)公布日 2022-04-15
分類號(hào) G06F16/2455(2019.01)I;G06F16/23(2019.01)I;G06F16/22(2019.01)I 分類 計(jì)算;推算;計(jì)數(shù);
發(fā)明人 楊志鵬 申請(qǐng)(專利權(quán))人 紫光云(南京)數(shù)字技術(shù)有限公司
代理機(jī)構(gòu) 南京禾易知識(shí)產(chǎn)權(quán)代理有限公司 代理人 詹慶銣
地址 211899江蘇省南京市浦口區(qū)江浦街道浦濱路320號(hào)浦口科創(chuàng)廣場(chǎng)科創(chuàng)總部大廈B座17樓
法律狀態(tài) -

摘要

摘要 本發(fā)明提供一種基于Redis的分布式業(yè)務(wù)主鍵生成方法,包括根據(jù)獲取用于代表當(dāng)前微服務(wù)所在節(jié)點(diǎn)的相關(guān)業(yè)務(wù)標(biāo)識(shí)信息通過(guò)hashslot算法計(jì)算得到當(dāng)前微服務(wù)所在機(jī)器的hash值;判斷當(dāng)前微服務(wù)所在機(jī)器在Redis集群中的業(yè)務(wù)注冊(cè)結(jié)果,得到更新信息;取當(dāng)前微服務(wù)所在各個(gè)機(jī)器的時(shí)間的平均值與更新信息的時(shí)間進(jìn)行比對(duì),得到由當(dāng)前微服務(wù)所在節(jié)點(diǎn)的相關(guān)業(yè)務(wù)標(biāo)識(shí)生成的起始索引;同步開(kāi)啟定時(shí)任務(wù),并在當(dāng)前微服務(wù)所在機(jī)器的本地端緩存依據(jù)注冊(cè)結(jié)果所獲取的workid;啟動(dòng)成功,緩存相關(guān)業(yè)務(wù)標(biāo)識(shí)信息生成工具類。使用內(nèi)存數(shù)據(jù)庫(kù)Redis集群模式,提高分區(qū)容錯(cuò)性,同時(shí)使用Redis Cluster,利用其內(nèi)存的讀寫(xiě)速度快,使得Hash Slot分配在不同的機(jī)器上,提高數(shù)據(jù)的高可用性,提高分區(qū)容錯(cuò)能力。