一种多Region云架构的分布式ID生成方法
基本信息
申请号 | CN202110745310.6 | 申请日 | - |
公开(公告)号 | CN113656491A | 公开(公告)日 | 2021-11-16 |
申请公布号 | CN113656491A | 申请公布日 | 2021-11-16 |
分类号 | G06F16/27(2019.01)I | 分类 | 计算;推算;计数; |
发明人 | 阮文龙 | 申请(专利权)人 | 紫光云技术有限公司 |
代理机构 | 天津滨海科纬知识产权代理有限公司 | 代理人 | 薛萌萌 |
地址 | 300459天津市滨海新区高新区塘沽海洋科技园汇祥道399号6号楼 | ||
法律状态 | - |
摘要
摘要 | 本发明提供了一种多Region云架构的分布式ID生成方法,通过当前时间戳减固定开始时间戳的差值生成时间戳;从Region模块的环境变量中获取的RegionID;通过多Region云架构获取的ReplicationID;生成的SequenceID,每个microserve副本启动的时候,会生成一个存储键值队Map,当有创建分布式ID的请求过来的时候,首先去Map中获取是否有该毫秒内的分布式ID,如果有,从队列里取一个返回,如果没有生成所有的并保存到Map中;如果有请求过来,回调用一个异步线程,清理Map中该毫秒之前的数据;TimeID、RegionID、ReplicationID、SequenceID依次组合成分布式ID。本发明所述的保证ID全局唯一性,通过多种ID确保不出现重复的ID号,且时间戳、同一时间戳内的序列ID均呈单调递增,并通过多种ID组合保证ID无规则、不规则,安全性强。 |
