一种分布式ID的机器标识回收方法及系统技术方案

技术编号:39058485 阅读:15 留言:0更新日期:2023-10-12 19:51
本申请提供了一种分布式ID的机器标识回收方法及系统,其特征在于,包括:S1、获取分布式ID服务端的第一信息,其中第一信息包括机器标识和第一标准时间;S2、向分布式ID服务端发送第一心跳请求,其中第一心跳请求包括应用IP地址、应用的机器标识、SDK应用标准时间;S3、基于SDK应用标准时间与第一标准时间判断是否满足预设时间条件,如果满足则基于第一心跳请求回收应用的机器标识。使用本发明专利技术可以对已分配但长时间未使用的分布式ID的机器标识进行回收,解决雪花算法中机器标识有限,只分配不回收的问题的技术问题,提高机器标识的利用率。提高机器标识的利用率。提高机器标识的利用率。

【技术实现步骤摘要】
一种分布式ID的机器标识回收方法及系统


[0001]本专利技术涉及分布式ID相关的
,尤其是涉及一种分布式ID的机器标识回收方法及系统。

技术介绍

[0002]目前很多的应用场景都需要生成分布式ID,以生成某些订单、交易的唯一编号,所述分布式ID的组成部分包括机器标识,现有技术往往提供了一些机器标识分配使用的技术方案,暂未提供节点回收的方案。因雪花算法中机器标识位数量是有限的,只使用不回收,最终会发生机器标识用完的情况,而且长期未使用的机器标识会占用内存。
[0003]针对以上机器标识无法复用以及长期占用内存的技术问题,本申请提出了一种分布式ID的机器标识回收方法及系统,使用本专利技术可以对已分配但长时间未使用的分布式ID的机器标识进行回收,解决雪花算法中机器标识有限,只分配不回收的问题,提高机器标识的利用率。
[0004]值得说明的是,本申请所涉及数据采集及迁移行为都已经经过用户的同意,并且为申请人进行正常的经营活动所必需。对于采集后的数据申请人进行了匿名化、保密等脱敏处理,并相应设置了数据的访问权限以确保不会泄露用户的隐私,本申请涉及的数据合规措施仅做列举,其他相关的数据合规措施申请人也有设置。申请人所进行的数据处理活动符合数据安全法与个人信息保护法等法律法规的规定。

技术实现思路

[0005]为解决现有状况的不足,本专利技术针对以上
技术介绍
的缺陷,本专利技术提出了一种分布式ID的机器标识回收方法及系统。包括:
[0006]本申请第一方面提出了一种分布式ID的机器标识回收方法,其特征在于,包括:
[0007]S1、获取分布式ID服务端的第一信息,其中第一信息包括机器标识和第一标准时间;
[0008]S2、向分布式ID服务端发送第一心跳请求,其中第一心跳请求包括应用IP地址、应用的机器标识、SDK应用标准时间;
[0009]S3、基于SDK应用标准时间与第一标准时间判断是否满足预设时间条件,如果满足则基于第一心跳请求回收应用的机器标识。
[0010]进一步的,所述步骤S1包括:
[0011]S11、应用SDK向分布式ID服务端发送获取机器标识和第一标准时间的请求;
[0012]S12、应用SDK获取机器标识和第一标准时间后,基于雪花算法根据机器标识与第一标准时间生成分布式ID。
[0013]进一步的,所述步骤S2包括应用使用状态下,用户SDK定时向分布式ID服务端发送心跳请求,其中心跳请求包括应用IP地址、应用的机器标识、SDK应用标准时间,所述SDK应用标准时间为SDK应用为防止本地时钟回拨计算获得的时间。
[0014]进一步的,其特征在于,所述步骤S3还包括:
[0015]S31、分布式ID服务端创建空闲机器标识表和已分配机器标识表,其中空闲机器标识表用来存储空闲未使用的机器标识,已分配机器标识表用来存储已分配给SDK应用的机器标识、应用IP地址、SDK应用标准时间、应用心跳时间;
[0016]S32、基于第一心跳请求更新应用心跳时间和\或SDK应用标准时间,所述应用心跳时间为应用向分布式ID服务端发送请求的最新时间;
[0017]S33、定时查询已分配机器标识表,判断SDK应用标准时间与第一标准时间的时间间隔是否大于第一预设时间和\或应用心跳时间与第一标准时间的时间间隔是否超过第二预设时间,如果满足则基于第一心跳请求删除已分配机器标识表的闲置机器标识,将所述闲置机器标识添加到空闲机器标识表。
[0018]进一步的,所述空闲机器标识表和已分配机器标识表创建于关系型数据库或基于内存的分布式缓存数据据库。
[0019]进一步的,所述方法还包括收到第一心跳请求后将第一心跳请求信息进行存储。
[0020]本申请第二方面提出了一种分布式ID的机器标识回收装置,其特征在于,包括:
[0021]第一获取模块,用于获取分布式ID服务端的第一信息,其中第一信息包括机器标识和第一标准时间;
[0022]发送请求模块,用于向分布式ID服务端发送第一心跳请求,其中第一心跳请求包括应用IP地址、应用的机器标识、SDK应用标准时间;
[0023]判断回收模块,用于基于SDK应用标准时间与第一标准时间判断是否满足预设时间条件,如果满足则基于第一心跳请求回收应用的机器标识。
[0024]本申请第三方面提出了一种电子设备,其特征在于,包括:处理器,以及与所述处理器通信连接的存储器;
[0025]所述存储器存储计算机执行指令;
[0026]所述处理器执行所述存储器存储的计算机执行指令,以实现上述分布式ID的机器标识回收的方法。
[0027]本申请第四方面提出了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现上述分布式ID的机器标识回收的方法。
[0028]本申请第五方面提出了一种计算机程序产品,其特征在于,包括计算机程序,该计算机程序被处理器执行时实现上述分布式ID的机器标识回收的方法。
[0029]本专利技术的有益效果为:本专利技术可以对已分配但长时间未使用的分布式ID的机器标识进行回收,解决雪花算法中机器标识有限,只分配不回收的问题,提高机器标识的利用率。
附图说明
[0030]图1为本专利技术的分布式ID的机器标识回收方法的流程示意图。
[0031]图2为本专利技术的分布式ID的机器标识回收装置的结构框图。
[0032]图3为本专利技术的实施例提供的电子设备的结构示意图。
具体实施方式
[0033]为了更清楚的理解本专利技术的内容,将结合附图和实施例详细说明。
[0034]但是应该理解,这些描述只是示例性的,而并非要限制本专利技术的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本专利技术的概念。在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本专利技术。这里使用的词语“一”、“一个(种)”和“该”等也应包括“多个”、“多种”的意思,除非上下文另外明确指出。此外,在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
[0035]在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。本专利技术是已有专利技术的改进,所以对于本申请未描述的部分以现有技术来实现。
[0036]目前很多的应用场景都需要生成分布式ID,以生成某些订单、交易的唯一编号,所述分布式ID的组成部分包括机器标识,现有技术往往提供了一些机器标识分配使用的技术方案,暂未提供节点回收的方案。因雪花算法中机器标识位数量是有限的,只使用不回收,最终会发生机器标识用完的情况,而且长期未使用的机器标识会占用内存。本专利技术的主要原理是,通过定期查询应用于分布本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种分布式ID的机器标识回收方法,其特征在于,包括:S1、获取分布式ID服务端的第一信息,其中第一信息包括机器标识和第一标准时间;S2、向分布式ID服务端发送第一心跳请求,其中第一心跳请求包括应用IP地址、应用的机器标识、SDK应用标准时间;S3、基于SDK应用标准时间与第一标准时间判断是否满足预设时间条件,如果满足则基于第一心跳请求回收应用的机器标识。2.根据权利要求1所述的方法,其特征在于,所述步骤S1包括:S11、应用SDK向分布式ID服务端发送获取机器标识和第一标准时间的请求;S12、应用SDK获取机器标识和第一标准时间后,基于雪花算法根据机器标识与第一标准时间生成分布式ID。3.根据权利要求1所述的方法,其特征在于,所述步骤S2包括应用使用状态下,用户SDK定时向分布式ID服务端发送心跳请求,其中心跳请求包括应用IP地址、应用的机器标识、SDK应用标准时间,所述SDK应用标准时间为SDK应用为防止本地时钟回拨计算获得的时间。4.根据权利要求1所述的方法,其特征在于,所述步骤S3还包括:S31、分布式ID服务端创建空闲机器标识表和已分配机器标识表,其中空闲机器标识表用来存储空闲未使用的机器标识,已分配机器标识表用来存储已分配给SDK应用的机器标识、应用IP地址、SDK应用标准时间、应用心跳时间;S32、基于第一心跳请求更新应用心跳时间和\或SDK应用标准时间,所述应用心跳时间为应用向分布式ID服务端发送请求的最新时间;S33、定时查询已分配机器标识表,判断SDK应用标准时间与第一标准时间的时间间隔是否大于第一预设时间和\或应用心跳...

【专利技术属性】
技术研发人员:赵琨孙炎森徐晓剑滕其武张战锋姜涛李兴荆梦雨
申请(专利权)人:中信银行股份有限公司
类型:发明
国别省市:

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

1