[发明专利]一种生成ID的方法及装置在审
| 申请号: | 201711346352.2 | 申请日: | 2017-12-15 |
| 公开(公告)号: | CN108089916A | 公开(公告)日: | 2018-05-29 |
| 发明(设计)人: | 翟磊;余云鹏 | 申请(专利权)人: | 北京搜狐新媒体信息技术有限公司 |
| 主分类号: | G06F9/46 | 分类号: | G06F9/46;G06F9/50 |
| 代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 王宝筠 |
| 地址: | 100190 北京市海淀*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 唯一标识符 分布式服务 分布式系统 方法生成 键值存储 时间戳 读写 预设 全局 | ||
1.一种生成ID的方法,其特征在于,包括:
通过读写预设的键值存储系统,获取机器唯一标识符;
根据所述机器唯一标识符生成ID;其中,所述ID包括所述机器唯一标识符、生成所述ID时的时间戳以及所述ID的序列号。
2.根据权利要求1所述的方法,其特征在于,所述通过读写预设的键值存储系统,获取机器唯一标识符,包括:
获取分布式独占锁;
获取预设的键值存储系统中以预设字符为前缀的所有键值;
根据获取得到的所有键值,从预设的机器标识符集合内查找一个未被占用的机器标识符,作为机器唯一标识符;
为所述机器唯一标识符添加前缀形成键值,并将形成的键值存储到所述预设的键值存储系统中;
释放所述分布式独占锁。
3.根据权利要求2所述的方法,其特征在于,在为所述机器唯一标识符添加前缀形成键值,并将形成的键值存储到所述预设的键值存储系统中时,该方法还包括:
为存储到所述预设的键值存储系统的键值设置时间戳和超时时长。
4.根据权利要求3所述的方法,其特征在于,该方法还包括:
按照预设的周期向所述预设的键值存储系统发送心跳信息;其中,所述预设的周期的时长小于所述超时时长。
5.根据权利要求1所述的方法,其特征在于,所述根据所述机器唯一标识符生成ID,包括:
根据所述机器唯一标识符,生成设定长度整型数作为ID。
6.一种生成ID的装置,其特征在于,包括:
标识符获取单元,用于通过读写预设的键值存储系统,获取机器唯一标识符;
ID生成单元,用于根据所述机器唯一标识符生成ID;其中,所述ID包括所述机器唯一标识符、生成所述ID时的时间戳以及所述ID的序列号。
7.根据权利要求6所述的装置,其特征在于,所述标识符获取单元通过读写预设的键值存储系统,获取机器唯一标识符时,具体用于:
获取分布式独占锁;获取预设的键值存储系统中以预设字符为前缀的所有键值;根据获取得到的所有键值,从预设的机器标识符集合内查找一个未被占用的机器标识符,作为机器唯一标识符;为所述机器唯一标识符添加前缀形成键值,并将形成的键值存储到所述预设的键值存储系统中;释放所述分布式独占锁。
8.根据权利要求7所述的装置,其特征在于,所述标识符获取单元在为所述机器唯一标识符添加前缀形成键值,并将形成的键值存储到所述预设的键值存储系统中时,还用于:
为存储到所述预设的键值存储系统的键值设置时间戳和超时时长。
9.根据权利要求8所述的装置,其特征在于,该装置还包括:
心跳信息发送单元,用于按照预设的周期向所述预设的键值存储系统发送心跳信息;其中,所述预设的周期的时长小于所述超时时长。
10.根据权利要求6所述的装置,其特征在于,所述ID生成单元根据所述机器唯一标识符生成ID时,具体用于:
根据所述机器唯一标识符,生成设定长度整型数作为ID。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京搜狐新媒体信息技术有限公司,未经北京搜狐新媒体信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711346352.2/1.html,转载请声明来源钻瓜专利网。





