ID生成方法及装置制造方法及图纸

技术编号:21309095 阅读:38 留言:0更新日期:2019-06-12 11:00
本申请公开了一种ID生成方法及装置,方法通过:接收客户端发起的请求;确定所述请求对应的第一接收次序数值;以及确定接收所述请求的服务器的第一节点ID;以及接收所述请求的时间信息;根据所述第一接收次序数值、第一节点ID以及时间信息确定所述请求对应的ID。达到了通过第一接收次序数值、第一节点ID以及时间信息得到的与所述请求对应的ID的目的,从而能够实现在互联网应用场景中,可以保证ID具有100%的唯一性。同时,在分别使所述第一接收次序数值、第一节点ID以及时间信息占用1‑10bit、1‑12bit和1‑41bit的数据后,使得最红的与所述请求对应的ID最多占用63比特位,因而相对于现有技术中ID需要64比特位的情况,在计算、存储、网络传输方面可以大大节省资源占用。

ID Generation Method and Device

This application discloses an ID generation method and device by receiving a request initiated by a client, determining the first receiving order value corresponding to the request, and determining the first node ID of the server receiving the request, as well as the time information for receiving the request, and determining the request pair according to the first receiving order value, the first node ID and the time information. The corresponding ID. It achieves the purpose of obtaining the ID corresponding to the request through the first receiving order value, the first node ID and the time information, thus realizing the uniqueness of the ID in the Internet application scenario. At the same time, after the first receiving order value, the first node ID and the time information occupy data of 1 10 bit, 1 12 bit and 1 41 bit respectively, the ID corresponding to the request occupies up to 63 bits, which can greatly save resources in computing, storage and network transmission compared with the 64 bits required for ID in the existing technology.

【技术实现步骤摘要】
ID生成方法及装置
本申请涉及计算机
,具体而言,涉及一种ID生成方法及装置。
技术介绍
所有的业务系统,都有生成ID的需求,如订单ID,商品ID等。这个ID会是数据库中的唯一主键,在它上面会建立聚集索引ID生成的核心需求:(1)全局唯一;(2)趋势有序。目前大部分的唯一ID是依赖数据库自增ID,或者使用Snowflake算法生成大于等于64bit的ID,虽然ID的数据量已经足够大,但是,在极端高并发情况下还是没办法保证唯一性。此外,大多数唯一ID都是本地生成的,很难保证全局唯一。针对相关技术中存在的问题,目前尚未提出有效的解决方案。
技术实现思路
本申请的主要目的在于提供一种能够保证ID全局唯一的ID生成方法及装置,以解决相关技术中存在的至少一个技术问题。为了实现上述目的,根据本申请的一个方面,提供了一种ID生成方法。根据本申请的ID生成方法包括:接收客户端发起的请求;确定所述请求对应的第一接收次序数值;其中,所述第一接收次序数值用于表示接收到所述请求的次序;以及确定接收所述请求的服务器的第一节点ID;以及接收所述请求的时间信息;根据所述第一接收次序数值、第一节点ID以及时间信息本文档来自技高网...

【技术保护点】
1.一种ID生成方法,其特征在于,包括:接收客户端发起的请求;确定所述请求对应的第一接收次序数值;其中,所述第一接收次序数值用于表示接收到所述请求的次序;以及确定接收所述请求的服务器的第一节点ID;以及接收所述请求的时间信息;根据所述第一接收次序数值、第一节点ID以及时间信息确定所述请求对应的ID。

【技术特征摘要】
1.一种ID生成方法,其特征在于,包括:接收客户端发起的请求;确定所述请求对应的第一接收次序数值;其中,所述第一接收次序数值用于表示接收到所述请求的次序;以及确定接收所述请求的服务器的第一节点ID;以及接收所述请求的时间信息;根据所述第一接收次序数值、第一节点ID以及时间信息确定所述请求对应的ID。2.根据权利要求1所述的ID生成方法,其特征在于,所述确定接收所述请求的服务器的第一节点ID,包括:预先确定每个服务器的节点ID;确定接收所述请求的服务器;根据每个服务器的节点ID以及接收所述请求的服务器;确定接收所述请求的服务器的所述第一节点ID。3.根据权利要求1所述的ID生成方法,其特征在于,所述确定接收所述请求的次序,并得到对应的第一接收次序数值,包括:确定在接收上一请求时的第二接收次序数值;通过自增变量对所述第二接收次序数值进行递增后得到所述第一接收次序数值;其中,所述自增变量用于生成接收次序数值,每接收一个新的请求,所述接收次序数值就在原有基础上进行一次递增;建立所述请求与所述第一接收次序数值之间的对应关系。4.根据权利要求3所述的ID生成方法,其特征在于,还包括:预先设置所述自增变量的上限阈值;实时确定所述第二接收次序数值是否达到所述上限阈值;若所述第二接收次序数值达到所述上限阈值,则将所述第一接收次序数值回归至最小值。5.根据权利要求3所述的ID生成方法,其特征在于,还包括:预先设置所述自增变量的重置周期;其中,在每个重置周期中,所述自增变量均从最小的接收次序数值开始进行递增;实时确定所述重置周期是否进行更新;若所述重置周期已进行更新,则将所述自增变量的第一接收次序数值回归至最小值。6.根据权利要求1所述的ID生成方法,其特征在于,所述根据所述第一数值、第一节点ID以及时间信息确定所述请求对应的ID,包括:将所述第一数值作为所述请求的第一ID;以及将所述...

【专利技术属性】
技术研发人员:尹传文吴峰郭伟
申请(专利权)人:上海易点时空网络有限公司
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1