一種多Region云架構(gòu)的分布式ID生成方法
基本信息

| 申請(qǐng)?zhí)?/td> | CN202110745310.6 | 申請(qǐng)日 | - |
| 公開(kāi)(公告)號(hào) | CN113656491A | 公開(kāi)(公告)日 | 2021-11-16 |
| 申請(qǐng)公布號(hào) | CN113656491A | 申請(qǐng)公布日 | 2021-11-16 |
| 分類(lèi)號(hào) | G06F16/27(2019.01)I | 分類(lèi) | 計(jì)算;推算;計(jì)數(shù); |
| 發(fā)明人 | 阮文龍 | 申請(qǐng)(專(zhuān)利權(quán))人 | 紫光云技術(shù)有限公司 |
| 代理機(jī)構(gòu) | 天津?yàn)I海科緯知識(shí)產(chǎn)權(quán)代理有限公司 | 代理人 | 薛萌萌 |
| 地址 | 300459天津市濱海新區(qū)高新區(qū)塘沽海洋科技園匯祥道399號(hào)6號(hào)樓 | ||
| 法律狀態(tài) | - | ||
摘要

| 摘要 | 本發(fā)明提供了一種多Region云架構(gòu)的分布式ID生成方法,通過(guò)當(dāng)前時(shí)間戳減固定開(kāi)始時(shí)間戳的差值生成時(shí)間戳;從Region模塊的環(huán)境變量中獲取的RegionID;通過(guò)多Region云架構(gòu)獲取的ReplicationID;生成的SequenceID,每個(gè)microserve副本啟動(dòng)的時(shí)候,會(huì)生成一個(gè)存儲(chǔ)鍵值隊(duì)Map,當(dāng)有創(chuàng)建分布式ID的請(qǐng)求過(guò)來(lái)的時(shí)候,首先去Map中獲取是否有該毫秒內(nèi)的分布式ID,如果有,從隊(duì)列里取一個(gè)返回,如果沒(méi)有生成所有的并保存到Map中;如果有請(qǐng)求過(guò)來(lái),回調(diào)用一個(gè)異步線程,清理Map中該毫秒之前的數(shù)據(jù);TimeID、RegionID、ReplicationID、SequenceID依次組合成分布式ID。本發(fā)明所述的保證ID全局唯一性,通過(guò)多種ID確保不出現(xiàn)重復(fù)的ID號(hào),且時(shí)間戳、同一時(shí)間戳內(nèi)的序列ID均呈單調(diào)遞增,并通過(guò)多種ID組合保證ID無(wú)規(guī)則、不規(guī)則,安全性強(qiáng)。 |





