【技术实现步骤摘要】
一种基于分布式系统的唯一性ID生成方法
本专利技术涉及一种ID生成方法,具体是一种基于分布式系统的唯一性ID生成方法。
技术介绍
当前为解决分布式系统的唯一ID有以下解决办法:1.使用UUID生成唯一ID;2.使用数据库sequence(序列,一种ID自增策略)3.使用twitter的雪花算法生成全局ID;4.使用MongoDB的objectId来生成全局唯一ID。上述方法存在以下缺点:UUID:无序,过长,难以建立索引。MongoDBObjectId:过长,非纯数字。数据库自增序列:中心生成,有性能瓶颈。雪花算法:中心生成,独立部署ID生成器。
技术实现思路
本专利技术的目的在于提供一种基于分布式系统的唯一性ID生成方法,以解决上述
技术介绍
中提出的问题。为实现上述目的,本专利技术提供如下技术方案:一种基于分布式系统的唯一性ID生成方法,包含以下步骤:A、首先项目应用启动未完成之后,开启同步定时任务,定期调用redis注册,续约instanceId;B、注册一个特定时长的ID服务生成器来生成服务实例,之后归并入步骤A中的同步定时任务中去,当ID服务生成器实例存在时,会对服务进行续约,如果续约不成功进入一个短暂的等待阶段,之后会重新生成一个新的ID服务生成器,避免业务的间断情况,当ID服务生成器实例不存在时,会立即重新生成新的ID服务实例生成器。作为本专利技术再进一步的方案:ID服务实例生成器的生成是根据所在网关的IPV4地址,进行机器唯一服务id的获取工作。作为本专利技术再进一步的方案:ID的具体生成策略:ID为64位的2进制数,最后会将其转化为14位的10进 ...
【技术保护点】
1.一种基于分布式系统的唯一性ID生成方法,其特征在于,包含以下步骤:首先项目应用启动未完成之后,开启同步定时任务,定期调用redis注册,续约 instanceId;然后注册一个特定时长的ID服务生成器来生成服务实例,之后归并入步骤A中的同步定时任务中去,当ID服务生成器实例存在时,会对服务进行续约,如果续约不成功进入一个短暂的等待阶段,之后会重新生成一个新的ID服务生成器,避免业务的间断情况,当ID服务生成器实例不存在时,会立即重新生成新的ID服务实例生成器。
【技术特征摘要】
1.一种基于分布式系统的唯一性ID生成方法,其特征在于,包含以下步骤:首先项目应用启动未完成之后,开启同步定时任务,定期调用redis注册,续约instanceId;然后注册一个特定时长的ID服务生成器来生成服务实例,之后归并入步骤A中的同步定时任务中去,当ID服务生成器实例存在时,会对服务进行续约,如果续约不成功进入一个短暂的等待阶段,之后会重新生成一个新的ID服务生成器,避免业务的间断情况,当ID服务生成器实例不存在时,会立即重新生成新的ID服务实例生成器。2.根据权利要求1所述的基于分布式系统的唯一性ID生成方法,其...
【专利技术属性】
技术研发人员:余童,
申请(专利权)人:深圳市欧辰技术有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。