CN109862097A - Id生成方法及装置 - Google Patents
Id生成方法及装置 Download PDFInfo
- Publication number
- CN109862097A CN109862097A CN201910101396.1A CN201910101396A CN109862097A CN 109862097 A CN109862097 A CN 109862097A CN 201910101396 A CN201910101396 A CN 201910101396A CN 109862097 A CN109862097 A CN 109862097A
- Authority
- CN
- China
- Prior art keywords
- request
- numerical sequence
- server
- node
- receiving
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
本申请公开了一种ID生成方法及装置,方法通过:接收客户端发起的请求;确定所述请求对应的第一接收次序数值;以及确定接收所述请求的服务器的第一节点ID;以及接收所述请求的时间信息;根据所述第一接收次序数值、第一节点ID以及时间信息确定所述请求对应的ID。达到了通过第一接收次序数值、第一节点ID以及时间信息得到的与所述请求对应的ID的目的,从而能够实现在互联网应用场景中,可以保证ID具有100%的唯一性。同时,在分别使所述第一接收次序数值、第一节点ID以及时间信息占用1‑10bit、1‑12bit和1‑41bit的数据后,使得最红的与所述请求对应的ID最多占用63比特位,因而相对于现有技术中ID需要64比特位的情况,在计算、存储、网络传输方面可以大大节省资源占用。
Description
技术领域
本申请涉及计算机技术领域,具体而言,涉及一种ID生成方法及装置。
背景技术
所有的业务系统,都有生成ID的需求,如订单ID,商品ID等。这个ID会是数据库中的唯一主键,在它上面会建立聚集索引ID生成的核心需求:(1)全局唯一;(2)趋势有序。
目前大部分的唯一ID是依赖数据库自增ID,或者使用Snowflake算法生成大于等于64bit的ID,虽然ID的数据量已经足够大,但是,在极端高并发情况下还是没办法保证唯一性。此外,大多数唯一ID都是本地生成的,很难保证全局唯一。
针对相关技术中存在的问题,目前尚未提出有效的解决方案。
发明内容
本申请的主要目的在于提供一种能够保证ID全局唯一的ID生成方法及装置,以解决相关技术中存在的至少一个技术问题。
为了实现上述目的,根据本申请的一个方面,提供了一种ID生成方法。
根据本申请的ID生成方法包括:
接收客户端发起的请求;
确定所述请求对应的第一接收次序数值;其中,所述第一接收次序数值用于表示接收到所述请求的次序;以及
确定接收所述请求的服务器的第一节点ID;以及接收所述请求的时间信息;
根据所述第一接收次序数值、第一节点ID以及时间信息确定所述请求对应的ID。
进一步的,如前述的ID生成方法,所述确定接收所述请求的服务器的第一节点ID,包括:
预先确定每个服务器的节点ID;
确定接收所述请求的服务器;
根据每个服务器的节点ID以及接收所述请求的服务器;确定接收所述请求的服务器的所述第一节点ID。
进一步的,如前述的ID生成方法,所述确定接收所述请求的次序,并得到对应的第一接收次序数值,包括:
确定在接收上一请求时的第二接收次序数值;
通过自增变量对所述第二接收次序数值进行递增后得到所述第一接收次序数值;其中,所述自增变量用于生成接收次序数值,每接收一个新的请求,所述接收次序数值就在原有基础上进行一次递增;
建立所述请求与所述第一接收次序数值之间的对应关系。
进一步的,如前述的ID生成方法,还包括:
预先设置所述自增变量的上限阈值;
实时确定所述第二接收次序数值是否达到所述上限阈值;
若所述第二接收次序数值达到所述上限阈值,则将所述第一接收次序数值回归至最小值。
进一步的,如前述的ID生成方法,还包括:
预先设置所述自增变量的重置周期;其中,在每个重置周期中,所述自增变量均从最小的接收次序数值开始进行递增;
实时确定所述重置周期是否进行更新;
若所述重置周期已进行更新,则将所述自增变量的第一接收次序数值回归至最小值。
进一步的,如前述的ID生成方法,所述根据所述第一数值、第一节点ID以及时间信息确定所述请求对应的ID,包括:
将所述第一数值作为所述请求的第一ID;以及
将所述第一节点ID作为所述请求的第二ID;以及
将所述时间信息作为所述请求的第三ID;
将所述第一ID、第二ID和第三ID进行组合得到所述请求对应的ID。
为了实现上述目的,根据本申请的另一方面,提供了一种ID生成装置。
根据本申请的ID生成装置包括:
请求接收单元,用于接收客户端发起的请求;
自增数值确定单元,用于确定所述请求对应的第一接收次序数值;其中,所述第一接收次序数值用于表示接收到所述请求的次序;
服务器ID确定单元,用于确定接收所述请求的服务器的第一节点ID;
时间信息确定单元,用于确定接收所述请求的时间信息;
ID生成单元,用于根据所述第一接收次序数值、第一节点ID以及时间信息确定所述请求对应的ID。
进一步的,如前述的ID生成装置,所述服务器ID确定单元,包括:
第一服务器ID确定模块,用于预先确定每个服务器的节点ID;
服务器确定模块,用于确定接收所述请求的服务器;
第二服务器ID确定模块,用于根据每个服务器的节点ID以及接收所述请求的服务器;确定接收所述请求的服务器的所述第一节点ID。
进一步的,如前述的ID生成装置,所述自增数值确定单元包括:
第二数值确定模块,用于确定在接收上一请求时的第二接收次序数值;
递增模块,用于通过自增变量对所述第二接收次序数值进行递增后得到所述第一接收次序数值;其中,所述自增变量用于生成接收次序数值,每接收一个新的请求,所述接收次序数值就在原有基础上进行一次递增;
对应模块,用于建立所述请求与所述第一接收次序数值之间的对应关系。
进一步的,如前述的ID生成装置,所述ID生成单元包括:
第一ID确定模块,用于将所述第一数值作为所述请求的第一ID;以及
第二ID确定模块,用于将所述第一节点ID作为所述请求的第二ID;以及
第三ID确定模块,用于将所述时间信息作为所述请求的第三ID;
ID生成模块,用于将所述第一ID、第二ID和第三ID进行组合得到所述请求对应的ID。
在本申请实施例中,采用能够保证ID全局唯一的ID生成方法及装置,通过接收客户端发起的请求;确定所述请求对应的第一接收次序数值;其中,所述第一接收次序数值用于表示接收到所述请求的次序;以及确定接收所述请求的服务器的第一节点ID;以及接收所述请求的时间信息;根据所述第一接收次序数值、第一节点ID以及时间信息确定所述请求对应的ID。达到了通过第一接收次序数值、第一节点ID以及时间信息得到的与所述请求对应的ID的目的,从而实现了在互联网应用场景中,可以保证ID具有100%的唯一性。同时,在分别使所述第一接收次序数值、第一节点ID以及时间信息占用1-10bit、1-12bit和1-41bit的数据后,使得最红的与所述请求对应的ID最多占用63比特位,因而相对于现有技术中ID需要64比特位的情况,在计算、存储、网络传输方面可以大大节省资源占用。
附图说明
构成本申请的一部分的附图用来提供对本申请的进一步理解,使得本申请的其它特征、目的和优点变得更明显。本申请的示意性实施例附图及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请一种实施例的ID生成方法的方法流程示意图;以及图2是根据本申请一种实施例的ID生成装置的功能模块结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本申请中,术语“上”、“下”、“左”、“右”、“前”、“后”、“顶”、“底”、“内”、“外”、“中”、“竖直”、“水平”、“横向”、“纵向”等指示的方位或位置关系为基于附图所示的方位或位置关系。这些术语主要是为了更好地描述本申请及其实施例,并非用于限定所指示的装置、元件或组成部分必须具有特定方位,或以特定方位进行构造和操作。
并且,上述部分术语除了可以用于表示方位或位置关系以外,还可能用于表示其他含义,例如术语“上”在某些情况下也可能用于表示某种依附关系或连接关系。对于本领域普通技术人员而言,可以根据具体情况理解这些术语在本申请中的具体含义。
此外,术语“安装”、“设置”、“设有”、“连接”、“相连”、“套接”应做广义理解。例如,可以是固定连接,可拆卸连接,或整体式构造;可以是机械连接,或电连接;可以是直接相连,或者是通过中间媒介间接相连,又或者是两个装置、元件或组成部分之间内部的连通。对于本领域普通技术人员而言,可以根据具体情况理解上述术语在本申请中的具体含义。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
为了实现上述目的,根据本申请的一个方面,提供了一种ID生成方法。如图1所示,该方法包括如下所述的步骤S1至步骤S4:
S1.接收客户端发起的请求;
具体的,本申请方法中,可以接受所述客户端通过APP、网页端或小程序;以及分别通过Windows操作系统或安卓操作系统或IOS操作系统发起的请求;一般的,通过不同操作系统或不同方式发起的请求会分配给不同的服务器;
S2.确定所述请求对应的第一接收次序数值;其中,所述第一接收次序数值用于表示接收到所述请求的次序;
具体的,所述第一接受次序数值可以是自服务开通后累计的数值,也可以是针对某一固定的时间段内的接收到所述请求的次序;优选的,由于本申请中步骤S3中还获取接收所述请求的时间信息,因此只要确定所述时间信息最小的精度,例如:毫秒;因此只需记录每一毫秒中接收到所述请求的次序即可保证相应ID的唯一性,且相对于记录自服务开通后累计的次序来说能够有效降低数据量;
S3.确定接收所述请求的服务器的第一节点ID;以及接收所述请求的时间信息;
具体的,由于不同的信息可能通过不同的服务器进行接收处理,因此通过确定接收所述请求的服务器的节点ID可以进一步的区分不同的请求;所述时间信息为例如:2019年01月25日09:44:51之类的时间信息,且优选的,只保留其中的数值信息,因此得到的具体时间信息可以为:20190125094451以进一步减少数据量;进一步的,还可以进一步简化为190125094451,至少可以保证在2100年之前均可以进行使用;
S4.根据所述第一接收次序数值、第一节点ID以及时间信息确定所述请求对应的ID。
具体的,可以通过分别将所述第一接收次序数值、第一节点ID以及时间信息进行编码后再通过连接等组合方式进行处理后即可得到与所述请求对应的ID;
在一些实施例中,如前述的ID生成方法,所述确定接收所述请求的服务器的第一节点ID,包括:
预先确定每个服务器的节点ID;也就是说,每个服务器都有与其对应的一个节点ID,除此之外,还可以通过将所述服务器与其机器编码进行对应,优选的,针对不同服务器的节点ID或机器编码各不相同;
确定接收所述请求的服务器;具体的,在一服务器接收到一个请求之后,系统通过监听或会确定接收该请求所对应的服务器;
根据每个服务器的节点ID以及接收所述请求的服务器;确定接收所述请求的服务器的所述第一节点ID;
具体的,所述节点ID可以通过所述服务器自身上传得到,也可以通过系统检索得到服务器与所述节点ID之间的对应关系得到;
优选的,提出一种集群服务机制,集群最多支持4096个服务节点(即设置4096个服务器),使用zookeeper或者etcd等第三方组件实现服务发现机制,每个节点定义一个节点ID,用于生成全局唯一ID的第一节点ID。举例的:每次客户端的请求过来,会被随机分发到不同的服务节点,每个节点根据所述服务器自身的节点ID去填充待生成的所述请求的全局唯一ID的第二字段部分。
在一些实施例中,如前述的ID生成方法,所述确定接收所述请求的次序,并得到对应的第一接收次序数值,包括:
确定在接收上一请求时的第二接收次序数值;
也就是说,当次接收到的请求所对应的接收次序数值是在上一请求的接收次序数值的基础上进行得到的;
通过自增变量对所述第二接收次序数值进行递增后得到所述第一接收次序数值;其中,所述自增变量用于生成接收次序数值,每接收一个新的请求,所述接收次序数值就在原有基础上进行一次递增;
举例的,若依次收到请求A、B、C;且AB均为之前收到的请求,C为当下收到的请求;且自增变量为y;当所述A为50,B为51则C为52;
建立所述请求与所述第一接收次序数值之间的对应关系。
具体的,在上一例子基础上,建立请求C与第一接收次序数值52之间的对应关系;优选的,将52作为第一ID字段写入最终的ID中。
在一些实施例中,如前述的ID生成方法,还包括:
预先设置所述自增变量的上限阈值;
具体的,若不给所述自增变量设定上限阈值,当同一时间中出现过多的请求时,则会导致请求的对应的自增变量的数值过大,增加了ID的数据量;
实时确定所述第二接收次序数值是否达到所述上限阈值;
若所述第二接收次序数值达到所述上限阈值,则将所述第一接收次序数值回归至最小值。
具体的,对本申请实施例的一种应用方法为:提供一种同一服务节点内多进程生成全局唯一ID的第三段资源竞争问题,使用共享内存存储多进程共享自增变量,使用自旋锁保证变量使用的唯一性。即:如果同一毫秒内自增变量值超过1024,则尝试使该自增变量从1开始重新生成与请求对应的接收次序数值,优选的,重试的次数最多为3次。
在一些实施例中,如前述的ID生成方法,还包括:
预先设置所述自增变量的重置周期;其中,在每个重置周期中,所述自增变量均从最小的接收次序数值开始进行递增;
也是就是说,将时间以固定周期进行拆分,以秒为例,无论前一秒中最后一个请求对应的接受次序数值为多大,后一秒接收到的第一个请求的接收次序数值均默认为最小的接收次序数值(例如1),之后接收到的请求所对应的接受次序数值均在此基础上进递增;
实时确定所述重置周期是否进行更新;
也就是说,需要实时确定当下接收到的请求的时间,并确定该时间与上一请求的时间是否属于同一个重置周期中;
若所述重置周期已进行更新,则将所述自增变量的第一接收次序数值回归至最小值。
具体的,在所述重置周期与时间信息的最大精度对应的基础上,即:当所述时间信息精确到毫秒时,所述重置周期为1毫秒,当所述时间信息精确到秒时,所述重置周期为1秒;举例的,当所述时间信息精确到毫秒时,只需记录每一毫秒的重置周期中接收到所述请求的次序即可保证最终结合时间信息的相应ID具有唯一性,且相对于记录自服务开通后累计的次序来说能够有效降低数据量;
在一些实施例中,如前述的ID生成方法,所述根据所述第一数值、第一节点ID以及时间信息确定所述请求对应的ID,包括:
将所述第一数值作为所述请求的第一ID;以及
将所述第一节点ID作为所述请求的第二ID;以及
将所述时间信息作为所述请求的第三ID;
优选的,在将所述第一数值作为所述请求的第一ID之前;以及
将所述第一节点ID作为所述请求的第二ID之前;以及
将所述时间信息作为所述请求的第三ID之前;
还可以分别将所述第一数值、第一节点ID和时间信息进行二进行编码;且所述第一ID占用1-10bit;第二ID占用1-12bit;所述第三ID占用1-41bit;
将所述第一ID、第二ID和第三ID进行组合得到所述请求对应的ID;
因此最终的所述请求对应的ID占用最多63比特位的数据量,相对于现有技术来说可以在计算、存储、网络传输方面可以大大节省资源占用。同时能够保证绝对唯一性:在互联网应用场景中,可以保证100%的唯一性。理论上,该集群服务可以支撑400万(1024*4096)个唯一ID/毫秒。也就是说,这种集群支撑的QPS可高达40亿。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
根据本发明实施例,还提供了一种用于实施上述ID生成方法的ID生成装置,如图2所示,该装置包括:
请求接收单元1,用于接收客户端发起的请求;
自增数值确定单元2,用于确定所述请求对应的第一接收次序数值;其中,所述第一接收次序数值用于表示接收到所述请求的次序;
服务器ID确定单元3,用于确定接收所述请求的服务器的第一节点ID;
时间信息确定单元4,用于确定接收所述请求的时间信息;
ID生成单元5,用于根据所述第一接收次序数值、第一节点ID以及时间信息确定所述请求对应的ID。
具体的,本发明实施例的装置中各模块实现其功能的具体过程可参见方法实施例中的相关描述,此处不再赘述。
在一些实施例中,如前述的ID生成装置,所述服务器ID确定单元,包括:
第一服务器ID确定模块,用于预先确定每个服务器的节点ID;
服务器确定模块,用于确定接收所述请求的服务器;
第二服务器ID确定模块,用于根据每个服务器的节点ID以及接收所述请求的服务器;确定接收所述请求的服务器的所述第一节点ID。
具体的,本发明实施例的装置中各模块实现其功能的具体过程可参见方法实施例中的相关描述,此处不再赘述。
在一些实施例中,如前述的ID生成装置,所述自增数值确定单元包括:
第二数值确定模块,用于确定在接收上一请求时的第二接收次序数值;
递增模块,用于通过自增变量对所述第二接收次序数值进行递增后得到所述第一接收次序数值;其中,所述自增变量用于生成接收次序数值,每接收一个新的请求,所述接收次序数值就在原有基础上进行一次递增;
对应模块,用于建立所述请求与所述第一接收次序数值之间的对应关系。
具体的,本发明实施例的装置中各模块实现其功能的具体过程可参见方法实施例中的相关描述,此处不再赘述。
在一些实施例中,如前述的ID生成装置,所述ID生成单元包括:
第一ID确定模块,用于将所述第一数值作为所述请求的第一ID;以及
第二ID确定模块,用于将所述第一节点ID作为所述请求的第二ID;以及
第三ID确定模块,用于将所述时间信息作为所述请求的第三ID;
ID生成模块,用于将所述第一ID、第二ID和第三ID进行组合得到所述请求对应的ID。
具体的,本发明实施例的装置中各模块实现其功能的具体过程可参见方法实施例中的相关描述,此处不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
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;以及
将所述第一节点ID作为所述请求的第二ID;以及
将所述时间信息作为所述请求的第三ID;
将所述第一ID、第二ID和第三ID进行组合得到所述请求对应的ID。
7.一种ID生成装置,其特征在于,包括:
请求接收单元,用于接收客户端发起的请求;
自增数值确定单元,用于确定所述请求对应的第一接收次序数值;其中,所述第一接收次序数值用于表示接收到所述请求的次序;
服务器ID确定单元,用于确定接收所述请求的服务器的第一节点ID;
时间信息确定单元,用于确定接收所述请求的时间信息;
ID生成单元,用于根据所述第一接收次序数值、第一节点ID以及时间信息确定所述请求对应的ID。
8.根据权利要求7所述的ID生成装置,其特征在于,所述服务器ID确定单元,包括:
第一服务器ID确定模块,用于预先确定每个服务器的节点ID;
服务器确定模块,用于确定接收所述请求的服务器;
第二服务器ID确定模块,用于根据每个服务器的节点ID以及接收所述请求的服务器;确定接收所述请求的服务器的所述第一节点ID。
9.根据权利要求7所述的ID生成装置,其特征在于,所述自增数值确定单元包括:
第二数值确定模块,用于确定在接收上一请求时的第二接收次序数值;
递增模块,用于通过自增变量对所述第二接收次序数值进行递增后得到所述第一接收次序数值;其中,所述自增变量用于生成接收次序数值,每接收一个新的请求,所述接收次序数值就在原有基础上进行一次递增;
对应模块,用于建立所述请求与所述第一接收次序数值之间的对应关系。
10.根据权利要求7所述的ID生成装置,其特征在于,所述ID生成单元包括:
第一ID确定模块,用于将所述第一数值作为所述请求的第一ID;以及
第二ID确定模块,用于将所述第一节点ID作为所述请求的第二ID;以及
第三ID确定模块,用于将所述时间信息作为所述请求的第三ID;
ID生成模块,用于将所述第一ID、第二ID和第三ID进行组合得到所述请求对应的ID。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910101396.1A CN109862097A (zh) | 2019-01-31 | 2019-01-31 | Id生成方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910101396.1A CN109862097A (zh) | 2019-01-31 | 2019-01-31 | Id生成方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109862097A true CN109862097A (zh) | 2019-06-07 |
Family
ID=66897367
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910101396.1A Pending CN109862097A (zh) | 2019-01-31 | 2019-01-31 | Id生成方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109862097A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110247828A (zh) * | 2019-07-30 | 2019-09-17 | 北京达佳互联信息技术有限公司 | 识别码分配方法及装置 |
CN111241042A (zh) * | 2019-12-31 | 2020-06-05 | 苏州浪潮智能科技有限公司 | 一种基于Etcd的分布锁实现方法、系统及设备 |
CN111708775A (zh) * | 2020-05-21 | 2020-09-25 | 四川虹美智能科技有限公司 | 自增id生成方法、装置及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6751667B1 (en) * | 2000-10-06 | 2004-06-15 | Hewlett-Packard Development Company, L.P. | System for generating unique identifiers in a computer network |
CN102769667A (zh) * | 2012-06-29 | 2012-11-07 | 北京奇虎科技有限公司 | 一种id生成方法、装置和系统 |
CN105653639A (zh) * | 2015-12-25 | 2016-06-08 | 北京奇虎科技有限公司 | Id生成方法及装置 |
CN107864233A (zh) * | 2017-11-08 | 2018-03-30 | 千寻位置网络有限公司 | 全局唯一id结构及生成方法 |
CN108089916A (zh) * | 2017-12-15 | 2018-05-29 | 北京搜狐新媒体信息技术有限公司 | 一种生成id的方法及装置 |
CN109240848A (zh) * | 2018-07-27 | 2019-01-18 | 阿里巴巴集团控股有限公司 | 一种数据对象标识生成方法及装置 |
-
2019
- 2019-01-31 CN CN201910101396.1A patent/CN109862097A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6751667B1 (en) * | 2000-10-06 | 2004-06-15 | Hewlett-Packard Development Company, L.P. | System for generating unique identifiers in a computer network |
CN102769667A (zh) * | 2012-06-29 | 2012-11-07 | 北京奇虎科技有限公司 | 一种id生成方法、装置和系统 |
CN105653639A (zh) * | 2015-12-25 | 2016-06-08 | 北京奇虎科技有限公司 | Id生成方法及装置 |
CN107864233A (zh) * | 2017-11-08 | 2018-03-30 | 千寻位置网络有限公司 | 全局唯一id结构及生成方法 |
CN108089916A (zh) * | 2017-12-15 | 2018-05-29 | 北京搜狐新媒体信息技术有限公司 | 一种生成id的方法及装置 |
CN109240848A (zh) * | 2018-07-27 | 2019-01-18 | 阿里巴巴集团控股有限公司 | 一种数据对象标识生成方法及装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110247828A (zh) * | 2019-07-30 | 2019-09-17 | 北京达佳互联信息技术有限公司 | 识别码分配方法及装置 |
CN111241042A (zh) * | 2019-12-31 | 2020-06-05 | 苏州浪潮智能科技有限公司 | 一种基于Etcd的分布锁实现方法、系统及设备 |
CN111241042B (zh) * | 2019-12-31 | 2022-11-11 | 苏州浪潮智能科技有限公司 | 一种基于Etcd的分布锁实现方法、系统及设备 |
CN111708775A (zh) * | 2020-05-21 | 2020-09-25 | 四川虹美智能科技有限公司 | 自增id生成方法、装置及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107995215B (zh) | 智能家居设备的控制方法、装置及云平台服务器 | |
CN109862097A (zh) | Id生成方法及装置 | |
CN109697133A (zh) | Id生成方法、装置及系统 | |
CN103312549B (zh) | 一种事务管理方法及装置和系统 | |
CN104462222A (zh) | 一种卡口车辆通行数据的分布式存储方法及系统 | |
KR20200037850A (ko) | 분산 데이터 저장 시스템 | |
CN110290168A (zh) | 数据发送方法、装置、服务器及存储介质 | |
CN102904977A (zh) | 网络地址分配方法、服务器和节点 | |
CN112650812A (zh) | 一种数据分片存储方法、装置、计算机设备和存储介质 | |
CN113361913A (zh) | 一种通信业务编排方法、装置、计算机设备及存储介质 | |
CN105471626A (zh) | 一种分配内存存储数据的方法和系统 | |
CN112699136B (zh) | 一种跨链存证方法及相关装置 | |
CN109636551A (zh) | 业务订单生成方法及装置 | |
CN104244242A (zh) | 一种物联网设备的网络号码编配方法和相应的认证方法 | |
CN108108473B (zh) | 数据查询方法以及服务器 | |
CN110704198A (zh) | 数据操作方法、装置、存储介质以及处理器 | |
CN105281944B (zh) | 网络协议地址的设定方法及服务管理系统 | |
CN104657240B (zh) | 多内核操作系统的失效控制方法及装置 | |
CN114173396B (zh) | 终端联网时间的确定方法和装置、电子设备和存储介质 | |
CN108829709A (zh) | 分布式数据库管理方法、装置、存储介质和处理器 | |
KR101725192B1 (ko) | 자원 템플릿 관리를 통한 자원 정보 관리 및 데이터 저장 시스템 | |
CN109818767B (zh) | 一种Redis集群容量调整的方法、装置及存储介质 | |
CN110471801A (zh) | 一种存储设备的量产过程信息的管理方法和装置以及设备 | |
CN109344573A (zh) | 一种激活方法及装置 | |
CN112702751A (zh) | 无线通信模型的训练和升级方法、网络设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190607 |