[发明专利]分布式ID生成方法及系统在审

专利信息
申请号: 202010388539.4 申请日: 2020-05-09
公开(公告)号: CN111580992A 公开(公告)日: 2020-08-25
发明(设计)人: 金家芳;李宁;董朱明;张彦 申请(专利权)人: 上海维信荟智金融科技有限公司
主分类号: G06F9/54 分类号: G06F9/54;H04L29/12
代理公司: 上海知义律师事务所 31304 代理人: 杨楠
地址: 200081 上海市虹*** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 分布式 id 生成 方法 系统
【说明书】:

发明公开了一种分布式ID生成方法及系统,其中,方法包括如下步骤:S1用于接收客户端发送的ID生成请求的步骤;S2用于根据ID生成请求获取当前时间并调用ID生成器的步骤;S3用于根据ID生成器预设的规则生成一个或多个分布式ID的步骤。这样,本发明所提供了一种分布式ID生成方法及系统,针对现有技术存在的缺陷,以REST服务的方式,提高了分布式ID生成的性能和效率,调用者可以根据自己业务需要选择合适的ID生成方式。

技术领域

本发明涉及计算机软件技术领域,尤其涉及一种分布式ID生成方法及系统。

背景技术

随着互联网技术的发展,项目越来越复杂,微服务架构和分布式服务部署已经必不可少,人们在不同业务场景下的产生的进程越来越频繁,在不同的业务需求中需要一些唯一的ID,作为某个数据的标识,如何使这些ID或者主键满足分布式要求,从进行有效的管理是急需解决的问题。目前主要的解决方案有六种:第一种是使用UUID,它的优势在于通过本地生成,不经过网络IO,效率高,但有无序,不是自增序列,生成ID太长,占用空间比较多等缺点;第二种是使用数据库主键自增,优势在于简单方便,有序递增,方便排序和主键索引查找,但有并发性能弱等缺点;第三种是使用redis,优势在于性能笔数据库主键自增的高,能满足有序递增,但有存在数据丢失,生成ID重复的风险,依赖于Redis等缺点;第四种是使用zookeeper,有严重依赖Zookeeper集群,并且性能低等缺点;第五种是使用数据库分段和服务缓存ID,优势在于比主键递增性能高,保证趋势递增,宕机了服务端还可以使用本地step取到的ID,但是依然会影响ID生成;第六种是使用snowFlake,优势在于高性能,低延时,分布式环境保证唯一,趋势性递增,不依赖于数据库或者其他中间件,但需要独立的开发和部署,依赖于机器的时钟。

发明内容

本发明的目的是提供一种分布式ID生成方法及系统。

本发明提供了一种分布式ID生成方法,包括如下步骤:

S1用于接收客户端发送的ID生成请求的步骤;

S2用于根据ID生成请求获取当前时间并调用ID生成器的步骤;

S3用于根据ID生成器预设的规则生成一个或多个分布式ID的步骤。

所述S3用于根据ID生成器预设的规则生成一个或多个分布式ID的步骤包括:S31用于提取本地时间戳、获取工作机器ID、通过自增任意值生成序列号的步骤;S32用于根据时间戳、工作机器ID及序列号生成请求所对应的ID的步骤;S33用于将对应ID发送至后台的步骤。所述对应ID的第一位标识为正负数和41位的时间戳,10位的机器标识码,自增任意值分别转换为二进制依次排列。所述对应ID根据机器码的编号进行压缩,自动生成为19位数字。用于以datetime格式时间加上调用者在同一毫秒内设定长度的序号,当序列号到达长度为设定长度的最大值时,则到下一秒获取ID的步骤。用于以timestamp时间戳格式时间加上调用者在同一毫秒内设定长度的序号,当序列号到达长度为设定长度的最大值时,则到下一秒获取ID的步骤。

本发明提供了一种分布式ID生成系统,包括:用于接收客户端发送的ID生成请求的模块;用于根据ID生成请求获取当前时间并调用ID生成器的模块;用于根据ID生成器预设的规则生成一个或多个分布式ID的模块。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海维信荟智金融科技有限公司,未经上海维信荟智金融科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202010388539.4/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top