[发明专利]生成标识符的方法、装置、系统和介质在审
申请号: | 201810499663.0 | 申请日: | 2018-05-22 |
公开(公告)号: | CN110580305A | 公开(公告)日: | 2019-12-17 |
发明(设计)人: | 卞祥;沈志明;金晓明;周龙亭 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
主分类号: | G06F16/901 | 分类号: | G06F16/901;G06F16/903;G06F16/907 |
代理公司: | 11021 中科专利商标代理有限责任公司 | 代理人: | 吕雁葭 |
地址: | 100195 北京市海淀区杏石口路6*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 标识符 标识信息 标识符生成 方法生成 业务生成 业务提供 响应 服务 | ||
本公开提供了一种生成标识符的方法、装置、系统和介质。所述生成标识符的方法包括:获取表征第一标识符的生成时间的第一时间信息,获取用于生成所述第一标识符的实例的标识信息,获取所述第一标识符的序列号,基于所述第一时间信息、所述实例的标识信息、以及所述第一标识符的序列号生成所述第一标识符。本公开还可提供了了一种用于生成标识符的方法、装置、系统和介质。所述用于生成标识符的方法包括接收为特定业务生成标识符的请求,响应于所述请求,确定为所述特定业务提供标识符生成服务的一个或多个实例,以及通过所述一个或多个实例中的一个实例根据本公开提供的生成标识符的方法生成标识符。
技术领域
本公开涉及互联网技术领域,更具体地,涉及一种生成标识符的方法、装置、系统和介质,以及一种用于生成标识符的方法、装置、系统和介质。
背景技术
几乎所有的系统,都需要对大量的数据和消息进行唯一的标识。现有的标识符生成方案中常用的有UUID(Universally Unique Identifier,通用唯一识别码)或MySQL数据库的自增长标识机制。
在实现本公开构思的过程中,发明人发现现有技术中至少存在如下问题:UUID是16进制的字符串,不是整数,字段比较长,不好做数据库的索引字段,而且字符串无法排序,更无法保证生成的标识符的递增趋势;MySQL自增长标识机制中标识符的生成性能依赖于MySQL数据库的读写性能。
发明内容
有鉴于此,本公开提供了一种能够生成整数标识符的标识符生成方法、装置、介质和系统。本公开还提供了一种不依赖于数据库的、可水平扩展的用于生成标识符的方法、装置、介质和系统
本公开的第一方面提供了一种生成标识符的方法。所述方法包括获取表征第一标识符的生成时间的第一时间信息,其中所述第一时间信息为[0,2M)范围内的一个整数,获取用于生成所述第一标识符的实例的标识信息,其中所述实例的标识信息为[0,2N)范围内的一个整数,获取所述第一标识符的序列号,其中所述第一标识符的序列号为[0,2R)范围内的一个整数,以及基于所述第一时间信息、所述实例的标识信息、以及所述第一标识符的序列号生成所述第一标识符,其中所述第一标识符为[0,2M+N+R+x)范围内的一个整数,其中M,N和R均为大于等于1的正整数,以及x为大于等于0的整数。
根据本公开的实施例,基于所述第一时间信息、所述实例的标识信息、以及所述第一标识符的序列号生成所述第一标识符,包括通过位操作生成所述第一标识符;具体为:
ID=time<<(R+N)|machine_id<<R|seq,
其中,ID为所述第一标识符,time为所述第一时间信息,machine_id为所述实例的标识信息,seq为所述第一标识符的序列号。
根据本公开的实施例,所述第一时间信息的计量单位包括毫秒;和/或M=41,N=10,R=12。
根据本公开的实施例,所述方法还包括接收生成所述第一标识符的请求信息。所述获取表征第一标识符的生成时间的第一时间信息包括:响应于接收到的所述请求信息,获取表征当前时刻的当前时间信息、以及表征第二标识符的生成时间的第二时间信息,其中所述第二标识符为所述实例在当前时刻之前生成的标识符;比较所述当前时间信息与所述第二时间信息的大小,其中所述当前时间信息与所述第二时间信息均为从同一计时起点开始,以预定的计时单位累计得到的整数;基于所述比较的结果确定所述第一时间信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810499663.0/2.html,转载请声明来源钻瓜专利网。