全局序列号生成方法、装置、设备、介质和产品制造方法及图纸

技术编号:32646287 阅读:31 留言:0更新日期:2022-03-12 18:28
本公开提供了一种全局序列号生成方法,可以应用于大数据技术领域。该全局序列号生成方法包括:接收任务请求,并记录接收时刻;基于所述任务请求和所述接收时刻,获取相关序列码;基于所述接收时刻,通过上锁处理生成第一时间戳;以及基于所述相关序列码和所述第一时间戳生成所述全局序列号。本公开还提供了一种全局序列号生成装置、设备、存储介质和程序产品。存储介质和程序产品。存储介质和程序产品。

【技术实现步骤摘要】
全局序列号生成方法、装置、设备、介质和产品


[0001]本公开涉及大数据领域,具体分布式数据处理领域,更具体地涉及一种全局序列号生成方法、装置、设备、介质和程序产品。

技术介绍

[0002]开发人员在研发的过程中都用到过全局唯一序列码,例如UUID、数据库自增序列或是分布式场景中的雪花算法等。而数据库自增序列性能低,难于拓展,容易导致技术瓶颈。对于UUID,虽然简单且无网络消耗,但是由于序列码无序,查询效率低,不能趋势递增。雪花算法能大致满足产生的先后并且简单高效,但是严重依赖于服务器的时钟,如果时钟错误,则不能保证全局唯一性。

技术实现思路

[0003]鉴于上述问题,本公开提供了提高生成效率的同时保证全局唯一性的全局序列号生成的方法、装置、设备、介质和程序产品。
[0004]根据本公开的第一个方面,提供了一种全局序列号生成的方法,包括:接收任务请求,并记录接收时刻;基于所述任务请求和所述接收时刻,获取相关序列码;基于所述接收时刻,通过上锁处理生成第一时间戳;以及基于所述相关序列码和所述第一时间戳生成所述全局序列号。...

【技术保护点】

【技术特征摘要】
1.一种全局序列号生成的方法,其特征在于,所述方法包括:接收任务请求,并记录接收时刻;基于所述任务请求和所述接收时刻,获取相关序列码;基于所述接收时刻,通过上锁处理生成第一时间戳;以及基于所述相关序列码和所述第一时间戳生成所述全局序列号。2.根据权利要求1所述的方法,其特征在于,所述基于所述任务请求和所述接收时刻获取相关序列码,包括:基于所述任务请求获取服务器标识,其中,所述服务器标识包括地址标识;基于所述接收时刻生成第二时间戳,其中所述第二时间戳的最低位的单位大于所述第一时间戳最高位的单位;生成随机码;以及基于所述服务器标识、所述第二时间戳以及所述随机码通过排序生成所述相关序列码。3.根据权利要求2所述的方法,其特征在于,所述服务器标识还包括服务组标识,所述服务组标识用于反映服务器所处的服务组,其中,对于同一服务器包括多个服务组标识。4.根据权利要求1所述的方法,其特征在于,所述基于所述接收时刻,通过上锁处理生成第一时间戳,包括:获取第二任务请求,记录第二时刻;对所述第二任务请求进行上锁,用以确保并发任务时所述第二任务请求在该时刻的唯一性;获取第一时刻,所述第一时刻对应第一任务请求,所述第一任务请求包括所述第二任务请求的上一个任务请求;判断所述第二时刻是否大于第一时刻;以及在所述第二时刻大于所述第一时刻的情况下,采用第二时刻作为所述第一时间戳。5.根据权利要求4所述的方法,其特征在于,所述方法还包括:在所述第二时刻不大于所述第一时刻的情况下,对所述第一时刻的数值加上固定预设数值,得到第三时刻;以及采用所述第三时刻作为所述第一时间戳。6.根据权利要求1所述的方法,其特征在于,所述第一时间戳包括毫秒级信息。7.根据权利要求2所述的方...

【专利技术属性】
技术研发人员:邢玉博刘伟张洋迟世超
申请(专利权)人:中国工商银行股份有限公司
类型:发明
国别省市:

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

1