[发明专利]一种基于分布式ID生成的避免ID碰撞的升级方法在审
| 申请号: | 202011478781.7 | 申请日: | 2020-12-15 |
| 公开(公告)号: | CN112506929A | 公开(公告)日: | 2021-03-16 |
| 发明(设计)人: | 李强;胡守云 | 申请(专利权)人: | 北京致远互联软件股份有限公司 |
| 主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/245;G06F16/27 |
| 代理公司: | 北京权智天下知识产权代理事务所(普通合伙) 11638 | 代理人: | 王新爱 |
| 地址: | 100089 北京市*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 分布式 id 生成 避免 碰撞 升级 方法 | ||
1.一种基于分布式ID生成的避免ID碰撞的升级方法,其特征在于:包括以下步骤:
步骤一:高位取从XX年X月X日到现在的毫秒数,预留40bit给毫秒数,每秒的单机高峰并发量小于2W,预留5bit给每毫秒内序列号,5年内机房数小于4个,预留2bit给机房标识,每个机房小于100台机器,预留7bit给每个机房内的服务器标识,剩余10位作为业务线号或进程号使用;
步骤二:建立ID碰撞双缓冲池,将ID碰撞双缓冲池分为碰撞缓冲池和预热缓冲池;
步骤三:碰撞缓冲池初始化时,将碰撞表中ID在范围区间的所有ID填充到缓冲池,预热缓冲池在发ID时,即时检查缓冲池中剩余碰撞ID数量,如小于设定阈值,则触发从碰撞表中加载下一个时段的碰撞ID至新ID碰撞缓冲池;
步骤四:定时记录本机时间至数据库,下次系统启动时候检测是否发生大步长时钟回拨,发现则报警。
2.根据权利要求1所述的一种基于分布式ID生成的避免ID碰撞的升级方法,其特征在于:所述步骤一中每个机房每个机器生成的ID不同。
3.根据权利要求1所述的一种基于分布式ID生成的避免ID碰撞的升级方法,其特征在于:所述步骤一中同一个机器,每个毫秒内生成的ID不同且以序列号区区分。
4.根据权利要求1所述的一种基于分布式ID生成的避免ID碰撞的升级方法,其特征在于:所述步骤一中毫秒数放在最高位以保证生成的ID是趋势递增的。
5.根据权利要求1所述的一种基于分布式ID生成的避免ID碰撞的升级方法,其特征在于:所述步骤一中业务线号或进程号互不相同。
6.根据权利要求1所述的一种基于分布式ID生成的避免ID碰撞的升级方法,其特征在于:所述步骤三中碰撞缓冲池用于缓存一段时间内从ID全局碰撞表中获取到的可能碰撞的ID号范围列表。
7.根据权利要求1所述的一种基于分布式ID生成的避免ID碰撞的升级方法,其特征在于:所述步骤三中预热缓冲池用于缓存一段时间内新生成的ID号范围。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京致远互联软件股份有限公司,未经北京致远互联软件股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011478781.7/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种四通阀及其工业炉窑
- 下一篇:市域铁路信号贯通地线连接器





