单调递增序列生成方法、装置以及设备制造方法及图纸

技术编号:34898473 阅读:25 留言:0更新日期:2022-09-10 13:58
本说明书实施例公开了单调递增序列生成方法、装置以及设备。通过在主节点中生成全局映射表,并将所述全局映射表定期推送至从节点,其中,所述全局映射表用于存储所述系统中全量节点与数据桶的全局映射关系;在主节点或者从节点中均可以根据所述全局映射关系,采用分布式锁获取自身所对应的数据桶,其中,同一用户的信息流被预先划分至同一数据桶中;以及,在主节点或者从节点中均可以在对所述自身所对应的数据桶中的信息流生成单调递增序列。从而实现除了容灾场景下的服务迁移流程弱依赖分布式存储之外,序列生成服务主流程不依赖其它任何第三方服务。其它任何第三方服务。其它任何第三方服务。

【技术实现步骤摘要】
单调递增序列生成方法、装置以及设备


[0001]本说明书涉及互联网
,尤其涉及单调递增序列生成方式、装置以及设备。

技术介绍

[0002]随着互联网的发展,同步命令(Synchronize)服务被广泛应用于音乐、视频等多媒体和文本内容之间的同步中,以及,在客户端和服务端之间的内容下载和更新也会依赖于该服务。同步命令服务依赖单调递增的序列号来标记一条唯一且有序的消息,从而实现对于信息流的增量有序的数据推送,避免冲突。现有的单调递增序列的生成方式中一般依赖于第三方仲裁服务,若第三方仲裁服务产生故障,则可能导致生成的序列不可用,并难以维护。
[0003]基于此,需要一种更稳定的单调递增序列生成方案。

技术实现思路

[0004]本说明书实施例提供单调递增序列生成方法、装置、设备以及存储介质,用以解决如下技术问题:需要一种更稳定的单调递增序列生成方案。
[0005]为解决上述技术问题,本说明书一个或多个实施例是这样实现的:
[0006]在第一方面,本说明书一个实施例提供一种单调递增序列生成方法,应用于包含多个节点的分布式系统中的主节点,所述方法包括:生成全局映射表,并将所述全局映射表定期推送至从节点,其中,所述全局映射表用于存储所述系统中全量节点与数据桶的全局映射关系;根据所述全局映射关系,采用分布式锁获取自身所对应的数据桶,其中,同一用户的信息流被预先划分至同一数据桶中;对所述自身所对应的数据桶中的信息流生成单调递增序列。
[0007]在第二方面,本说明书实施例提供另一种单调递增序列生成方法,应用于包含多个节点的分布式系统中的从节点,所述方法包括:获取主节点所定期推送的全局映射表,其中,所述全局映射表用于存储所述系统中全量节点与数据桶的全局映射关系;根据所述全局映射关系,采用分布式锁获取自身所对应的数据桶,其中,同一用户的信息流被预先划分至同一数据桶中;对所述自身所对应的数据桶中的信息流生成单调递增序列。
[0008]在第三方面,与第一方面对应的,本说明书实施例提供一种单调递增序列生成装置,应用于包含多个节点的分布式系统中的主节点,所述装置包括:生成模块,生成全局映射表,并将所述全局映射表定期推送至从节点,其中,所述全局映射表用于存储所述系统中全量节点与数据桶的全局映射关系;第一数据桶获取模块,根据所述全局映射关系,采用分布式锁获取自身所对应的数据桶,其中,同一用户的信息流被预先划分至同一数据桶中;第一序列模块,对所述自身所对应的数据桶中的信息流生成单调递增序列。
[0009]在第四方面,与第二方面对应的,本说明书实施例提供另一种单调递增序列生成装置,应用于包含多个节点的分布式系统中的从节点,所述装置包括:全局映射表获取模块,获取主节点所定期推送的全局映射表,其中,所述全局映射表用于存储所述系统中全量
节点与数据桶的全局映射关系;第二数据桶获取模块,根据所述全局映射关系,采用分布式锁获取自身所对应的数据桶,其中,同一用户的信息流被预先划分至同一数据桶中;第二序列模块,对所述自身所对应的数据桶中的信息流生成单调递增序列。
[0010]在第五方面,本说明书实施例提供一种电子设备,包括:
[0011]至少一个处理器;以及,
[0012]与所述至少一个处理器通信连接的存储器;其中,
[0013]所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如第一方面或者第二方面所述的方法。
[0014]在第六方面,本说明书实施例提供一种非易失性计算机存储介质存储有计算机可执行指令,当计算机读取存储介质中的计算机可执行指令后,该指令使得一个或多个处理器执行如第一方面或者第二方面所述的方法。
[0015]本说明书一个或多个实施例采用的上述至少一个技术方案能够达到以下有益效果:通过在主节点中生成全局映射表,并将所述全局映射表定期推送至从节点,其中,所述全局映射表用于存储所述系统中全量节点与数据桶的全局映射关系;在主节点或者从节点中均可以根据所述全局映射关系,采用分布式锁获取自身所对应的数据桶,其中,同一用户的信息流被预先划分至同一数据桶中;以及,在主节点或者从节点中均可以在对所述自身所对应的数据桶中的信息流生成单调递增序列。从而实现除了容灾场景下的服务迁移流程弱依赖分布式存储之外,序列生成服务主流程不依赖其它任何第三方服务,实现稳定的单调递增序列生成。
附图说明
[0016]为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0017]图1为本说明书实施例所提供的一种单调递增序列生成方法的流程示意图;
[0018]图2为本说明书实施例中所提供的一种分布式系统的架构示意图;
[0019]图3为本说明书实施例所提供的另一种单调递增序列生成方法的流程示意图;
[0020]图4为本说明书实施例所提供的一种主节点发生服务迁移的示意图;
[0021]图5为本说明书实施例提供的一种单调递增序列生成装置的结构示意图;
[0022]图6为本说明书实施例提供的另一种单调递增序列生成装置的结构示意图;
[0023]图7为本说明书实施例提供的一种电子设备的结构示意图。
具体实施方式
[0024]本说明书实施例提供单调递增序列生成方法、装置、设备以及存储介质。
[0025]为了使本
的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本说明书实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请
保护的范围。
[0026]在第一方面,如图1所示,图1为本说明书实施例所提供的一种单调递增序列生成方法的流程示意图,应用于包含多个节点的分布式系统中的主节点,图1中的流程可以包括以下步骤:
[0027]S101,生成全局映射表,并将所述全局映射表定期推送至从节点,其中,所述全局映射表用于存储所述系统中全量节点与数据桶的全局映射关系。
[0028]如图2所示,图2为本说明书实施例中所提供的一种分布式系统的架构示意图。在该分布式系统中,包含有主节点和从节点。其中,主节点和从节点可以基于分布式共识算法(例如VSR、Paxos、Raft和Zab等等)从集群中选举得到,主节点一般为一个,从节点为多个。
[0029]主节点和从节点之间可以采用心跳机制来互相确定是否活跃或者发生故障等等。在主节点发生故障时,从节点可以重新选举得到一个新的主节点来维持主节点的相关功能。
[0030]在本说明书实施例中,分布式本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种单调递增序列生成方法,应用于包含多个节点的分布式系统中的主节点,所述方法包括:生成全局映射表,并将所述全局映射表定期推送至从节点,其中,所述全局映射表用于存储所述系统中全量节点与数据桶的全局映射关系;根据所述全局映射关系,采用分布式锁获取自身所对应的数据桶,其中,同一用户的信息流被预先划分至同一数据桶中;对所述自身所对应的数据桶中的信息流生成单调递增序列。2.如权利要求1所述的方法,其中,对所述自身所对应的数据桶中的信息流生成单调递增序列,包括:确定所述数据桶中所包含的信息流的时间戳;根据所述时间戳的先后顺序生成对应于所述信息的单调递增序列。3.如权利要求1所述的方法,还包括:检测所述分布式系统中的从节点的状态,根据所述从节点的状态对所述全局映射表进行更新。4.如权利要求1所述的方法,其中,所述同一用户的信息流被预先划分至同一数据桶中采用如下方式生成:针对任一信息流,获取所述信息流中所包含的用户标识;确定所述用户标识的哈希值据所述哈希值确定所述,根信息流所对应的数据桶。5.一种单调递增序列生成方法,应用于包含多个节点的分布式系统中的从节点,所述方法包括:获取主节点所定期推送的全局映射表,其中,所述全局映射表用于存储所述系统中全量节点与数据桶的全局映射关系;根据所述全局映射关系,采用分布式锁获取自身所对应的数据桶,其中,同一用户的信息流被预先划分至同一数据桶中;对所述自身所对应的数据桶中的信息流生成单调递增序列。6.如权利要求5所述的方法,其中,对所述自身所对应的数据桶中的信息流生成单调递增序列,包括:确定所述数据桶中所包含的信息流的时间戳;根据所述时间戳的先后顺序生成对应于所述信息的单调递增序列。7.如权利要求5所述的方法,其中,所述方法还包括:比较所述全局映射表与本地所维护的局部映射表,确定存在差异的数据桶,其中,所述局部映射表用于存储自身节点与数据桶的局部映射关系;确定对所述存在差异的数据桶所对应的前一节点;向所述前一节点发起服务迁移请求,以便所述前一节点释放所述存在差异的数据桶的分布式锁;接收所述前一节点...

【专利技术属性】
技术研发人员:王琪
申请(专利权)人:支付宝杭州信息技术有限公司
类型:发明
国别省市:

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

1