CN115344410B - 判断事件执行顺序的方法、装置、存储介质及电子设备 - Google Patents

判断事件执行顺序的方法、装置、存储介质及电子设备 Download PDF

Info

Publication number
CN115344410B
CN115344410B CN202211260851.0A CN202211260851A CN115344410B CN 115344410 B CN115344410 B CN 115344410B CN 202211260851 A CN202211260851 A CN 202211260851A CN 115344410 B CN115344410 B CN 115344410B
Authority
CN
China
Prior art keywords
time
events
determining
reference node
node
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.)
Active
Application number
CN202211260851.0A
Other languages
English (en)
Other versions
CN115344410A (zh
Inventor
郭进伟
肖金亮
李欣泽
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Oceanbase Technology Co Ltd
Original Assignee
Beijing Oceanbase Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Oceanbase Technology Co Ltd filed Critical Beijing Oceanbase Technology Co Ltd
Priority to CN202211260851.0A priority Critical patent/CN115344410B/zh
Publication of CN115344410A publication Critical patent/CN115344410A/zh
Application granted granted Critical
Publication of CN115344410B publication Critical patent/CN115344410B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本说明书公开了一种判断事件执行顺序的方法、装置、存储介质及电子设备,在本说明书提供的方法中,业务节点与基准节点进行消息交互,在此过程中确定业务节点与基准节点的时间偏差,根据不同业务节点执行不同事件的本地时刻及不同业务节点与基准节点的时间偏差,可以判断由不同业务节点分别执行的不同事件的执行顺序。从上述方法可以看出,当需要对分布式系统中不同节点上执行的不同事件的先后顺序进行排序时,即使不同节点之间存在时间偏差,本方法也可以对该不同事件执行的先后顺序进行排序,且通过业务节点与基准节点的消息交互就可以确定时间偏差,进而判断不同事件的执行顺序,不需要依赖专有硬件,具有普适性。

Description

判断事件执行顺序的方法、装置、存储介质及电子设备
技术领域
本申请涉及计算机领域,特别涉及一种判断事件执行顺序的方法、装置、存储介质及电子设备。
背景技术
随着通信技术的和移动互联网的发展,分布式系统的应用越来越广泛。
分布式系统是由一组通过网络进行通信、为了完成共同的任务而协调工作的计算机节点组成的系统。通过分布式系统执行一个任务时,一个任务可能会涉及到多个节点,即该任务可能会产生多个请求分别在不同节点上执行,这些节点上可能会产生多个事件。
当分布式系统出错时,即分布式系统任务执行不符合预期时,可以通过对事件执行的先后关系进行判断,据此来分析执行任务逻辑的合理性。
本说明书提供了一种判断事件执行顺序的方法、装置、存储介质及电子设备。
发明内容
本说明书提供一种判断事件执行顺序的方法、装置、存储介质及电子设备,以至少部分的解决上述问题。
本说明书采用下述技术方案:
本说明书提供了一种判断事件执行顺序的方法,分布式系统包括业务节点和基准节点,所述方法应用于业务节点,所述方法包括:
业务节点向基准节点发送消息,并确定发送所述消息时所述业务节点的本地时刻,作为第一时刻;
接收所述基准节点针对所述消息返回的响应,并提取所述响应中携带的所述基准节点接收到所述消息时所述基准节点的本地时刻,作为第二时刻;
确定接收到所述响应时所述业务节点的本地时刻,作为第三时刻;
根据所述第一时刻、第二时刻、第三时刻,确定所述业务节点与所述基准节点的时间偏差;
在判断由不同业务节点分别执行的不同事件的执行顺序时,根据所述不同业务节点执行不同事件的本地时刻,以及所述不同业务节点与所述基准节点的时间偏差,判断所述不同事件的执行顺序。
可选地,业务节点向基准节点发送消息,具体包括:
所述业务节点按预设周期,向所述基准节点发送消息;
确定所述业务节点与所述基准节点的时间偏差之后,所述方法还包括:
记录所述时间偏差,并将所述第一时刻记录为所述时间偏差对应的时间戳。
可选地,根据所述不同业务节点执行不同事件的本地时刻,以及所述不同业务节点与所述基准节点的时间偏差,判断所述不同事件的执行顺序,具体包括:
针对所述不同事件中的每个事件,确定执行该事件的业务节点执行该事件的本地时刻,作为执行时刻;
确定执行该事件的业务节点记录的与所述执行时刻最接近且在所述执行时刻之前的时间戳对应的时间偏差,作为第一时间偏差;确定执行该事件的业务节点记录的与所述执行时刻最接近且在所述执行时刻之后的时间戳对应的时间偏差,作为第二时间偏差;
根据所述执行时刻、所述第一时间偏差、所述第二时间偏差,确定该事件的实际执行时刻;
根据确定的所述不同事件的实际执行时刻,判断所述不同事件的执行顺序。
可选地,根据所述第一时刻、第二时刻、第三时刻,确定所述业务节点与所述基准节点的时间偏差,具体包括:
根据所述第一时刻、第二时刻、第三时刻的先后关系,确定所述业务节点与所述基准节点的时间偏差范围。
可选地,根据所述不同业务节点执行不同事件的本地时刻,以及所述不同业务节点与所述基准节点的时间偏差,判断所述不同事件的执行顺序,具体包括:
针对所述不同事件中的每个事件,根据执行该事件的业务节点执行该事件的本地时刻,以及该业务节点与所述基准节点的时间偏差范围,确定该事件的实际执行时刻范围;
针对所述不同事件中的任意两个事件,判断该两个事件的实际执行时刻范围是否存在交集;
若是,根据该两个事件的实际执行时刻范围的交并比,判断该两个事件的执行顺序;
若否,比较该两个事件的实际执行时刻范围的先后顺序,判断该两个事件的执行顺序。
可选地,根据该两个事件的实际执行时刻范围的交并比,判断该两个事件的执行顺序,具体包括:
判断该两个事件的实际执行时刻范围的交并比是否大于预设阈值;
若是,确定该两个事件为同时执行;
若否,比较该两个事件实际执行时刻范围中的指定时刻,确定实际执行时刻范围的指定时刻在前的事件执行顺序在前,实际执行时刻范围的指定时刻在后的事件执行顺序在后。
可选地,根据所述第一时刻、第二时刻、第三时刻的先后关系,确定所述业务节点与所述基准节点的时间偏差范围,具体包括:
若所述第一时刻在第二时刻之前,且第二时刻在第三时刻之前,根据所述第一时刻和所述第三时刻,确定所述业务节点与所述基准节点的第一时间偏差范围;
若所述第一时刻在第二时刻之后,根据所述第一时刻、第二时刻、第三时刻,确定所述业务节点与所述基准节点的第二时间偏差范围;
若所述第二时刻在第三时刻之后,根据所述第一时刻、第二时刻、第三时刻,确定所述业务节点与所述基准节点的第三时间偏差范围。
本说明书提供了一种判断事件执行先后顺序的装置,分布式系统包括业务节点和基准节点,所述装置应用于业务节点,所述装置包括:
发送模块,用于向基准节点发送消息,并确定发送所述消息时所述装置的本地时刻,作为第一时刻;
提取模块,用于接收所述基准节点针对所述消息返回的响应,并提取所述响应中携带的所述基准节点接收到所述消息时所述基准节点的本地时刻,作为第二时刻;
接收模块,用于确定接收到所述响应时所述装置的本地时刻,作为第三时刻;
确定模块,用于根据所述第一时刻、第二时刻、第三时刻,确定所述装置与所述基准节点的时间偏差;
判断模块,用于在判断由不同业务节点分别执行的不同事件的执行顺序时,根据所述不同业务节点执行不同事件的本地时刻,以及所述不同业务节点与所述基准节点的时间偏差,判断所述不同事件的执行顺序。
可选地,所述发送模块具体用于,按预设周期,向所述基准节点发送消息;
所述确定模块还用于,在确定所述装置与所述基准节点的时间偏差之后,记录所述时间偏差,并将所述第一时刻记录为所述时间偏差对应的时间戳。
可选地,所述判断模块具体用于,针对所述不同事件中的每个事件,确定执行该事件的业务节点执行该事件的本地时刻,作为执行时刻;确定执行该事件的业务节点记录的与所述执行时刻最接近且在所述执行时刻之前的时间戳对应的时间偏差,作为第一时间偏差;确定执行该事件的业务节点记录的与所述执行时刻最接近且在所述执行时刻之后的时间戳对应的时间偏差,作为第二时间偏差;根据所述执行时刻、所述第一时间偏差、所述第二时间偏差,确定该事件的实际执行时刻;根据确定的所述不同事件的实际执行时刻,判断所述不同事件的执行顺序。
可选地,所述确定模块具体用于,根据所述第一时刻、第二时刻、第三时刻的先后关系,确定所述装置与所述基准节点的时间偏差范围。
可选地,所述判断模块具体用于,针对所述不同事件中的每个事件,根据执行该事件的业务节点执行该事件的本地时刻,以及该业务节点与所述基准节点的时间偏差范围,确定该事件的实际执行时刻范围;针对所述不同事件中的任意两个事件,判断该两个事件的实际执行时刻范围是否存在交集;若是,根据该两个事件的实际执行时刻范围的交并比,判断该两个事件的执行顺序;若否,比较该两个事件的实际执行时刻范围的先后顺序,判断该两个事件的执行顺序。
可选地,所述判断模块具体用于,判断该两个事件的实际执行时刻范围的交并比是否大于预设阈值;若是,确定该两个事件为同时执行;若否,比较该两个事件实际执行时刻范围中的指定时刻,确定实际执行时刻范围的指定时刻在前的事件执行顺序在前,实际执行时刻范围的指定时刻在后的事件执行顺序在后。
可选地,所述确定模块具体用于,若所述第一时刻在第二时刻之前,且第二时刻在第三时刻之前,根据所述第一时刻和所述第三时刻,确定所述装置与所述基准节点的第一时间偏差范围;若所述第一时刻在第二时刻之后,根据所述第一时刻、第二时刻、第三时刻,确定所述装置与所述基准节点的第二时间偏差范围;若所述第二时刻在第三时刻之后,根据所述第一时刻、第二时刻、第三时刻,确定所述业务节点与所述装置的第三时间偏差范围。
本说明书提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述判断事件执行顺序方法。
本说明书提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述判断事件执行顺序方法。
本说明书采用的上述至少一个技术方案能够达到以下有益效果:
在本说明书提供的判断事件执行顺序的方法中,业务节点向基准节点发送消息后接收基准节点返回的响应,业务节点确定发送消息时与接收到响应时业务节点的本地时刻,提取响应中携带的基准节点接收到消息时基准节点的本地时刻,进而确定业务节点与基准节点的时间偏差,在判断由不同业务节点分别执行的不同事件的执行顺序时,根据不同业务节点执行不同事件的本地时刻及不同业务节点与基准节点的时间偏差,判断不同事件的执行顺序。
从上述方法可以看出,当需要对分布式系统中不同节点上执行的不同事件的先后顺序进行排序时,即使不同节点之间存在时间偏差,本方法也可以对该不同事件执行的先后顺序进行排序,且通过业务节点与基准节点的信息交互就可以确定时间偏差,进而判断不同事件的执行顺序,不需要依赖专有硬件,具有普适性。
附图说明
此处所说明的附图用来提供对本说明书的进一步理解,构成本说明书的一部分,本说明书的示意性实施例及其说明用于解释本说明书,并不构成对本说明书的不当限定。在附图中:
图1为本说明书中一种判断事件执行顺序的流程示意图;
图2为本说明书中提供的一种分布式系统的示意图;
图3为本说明书中提供的一种业务节点与基准节点消息交互的过程的示意图;
图4A为本说明书中提供的一种两个事件的实际执行时刻范围存在交集的示意图;
图4B为本说明书中提供的一种两个事件的实际执行时刻范围不存在交集的示意图;
图5为本说明书提供的一种判断事件执行顺序装置的示意图;
图6为本说明书提供的对应于图1的电子设备示意图。
具体实施方式
为使本说明书的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本说明书技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本说明书各实施例提供的技术方案。
图1为本说明书提供的一种判断事件执行顺序方法的流程示意图,具体包括以下步骤:
S100:业务节点向基准节点发送消息,并确定发送所述消息时所述业务节点的本地时刻,作为第一时刻。
分布式系统是由多个节点组成的系统,每个节点都有自己的本地时间,节点与节点之间的本地时间可能会存在时间偏差,例如,当A节点的本地时间为10:00时,B节点的本地时间为09:55,C节点的本地时间为10:02,那么A节点领先于B节点,落后于C节点, A节点与B节点的本地时间偏差为5分钟,A节点与C节点的本地时间偏差为2分钟,B节点与C节点的本地时间偏差为7分钟。
如图2所示,本说明书提供的方法中,从分布式系统中选取一个节点作为基准节点,将其他节点作为业务节点。业务节点在与基准节点的信息交互过程中可以确定业务节点与基准节点的时间偏差。
具体地,业务节点向基准节点发送消息,并确定发送所述消息时所述业务节点的本地时刻,作为第一时刻。例如,如图3所示,业务节点向基准节点发送消息,t1就是业务节点向基准节点发送消息时所述业务节点的本地时刻。
S102:接收所述基准节点针对所述消息返回的响应,并提取所述响应中携带的所述基准节点接收到所述消息时所述基准节点的本地时刻,作为第二时刻。
业务节点只根据发送所述消息时所述业务节点的本地时刻不足以确定业务节点与基准节点的本地时间之间的偏差,还需要确定至少一个在此过程中基准节点的本地时刻。
具体地,业务节点接收到基准节点针对业务节点发送的消息返回的响应,该响应中包含基准节点接收到所述消息时所述基准节点的本地时刻,将这一时刻从响应中提取出来并确定为第二时刻。沿用上例,如图3所示的t2就是所述基准节点接收到所述消息时所述基准节点的本地时刻。
S104:确定接收到所述响应时所述业务节点的本地时刻,作为第三时刻;
业务节点确定了发送所述消息时自身的本地时刻与基准节点在接收到所述消息时的本地时刻,还需再确定一个信息交互过程中的业务节点的本地时间,才可以确定业务节点与基准节点的本地时间之间的偏差。
具体地,业务节点可以将接收到所述响应时自己的本地时刻作为第三时刻。沿用上例,如图3所示的t3就是业务节点接收到基准节点返回的响应时所述业务节点的本地时刻。
S106:根据所述第一时刻、第二时刻、第三时刻,确定所述业务节点与所述基准节点的时间偏差。
根据上述步骤S100~104可知,当业务节点处于第一时刻时,向基准节点发送了消息,经过发送消息的时长,基准节点收到消息,此时基准节点的本地时间为第二时刻,又经过返回响应的时长,业务节点收到基准节点返回的响应,此时业务节点处于第三时刻,根据第二时刻、第一时刻与发送消息的时长可以确定所述业务节点与所述基准节点的时间偏差,根据第三时刻、第二时刻与返回响应的时长也可以确定所述业务节点与所述基准节点的时间偏差。
具体地,沿用上例,如图3所示,当业务节点处于第一时刻t1时,向基准节点发送了 消息,经过发送消息的时长ta,基准节点收到消息,此时基准节点的本地时间为第二时刻 t2,又经过返回响应的时长tb,业务节点收到基准节点返回的响应,此时业务节点处于第三 时刻t3,所以所述业务节点与所述基准节点的时间偏差为
Figure 146420DEST_PATH_IMAGE001
或者
Figure 329139DEST_PATH_IMAGE002
S108:在判断由不同业务节点分别执行的不同事件的执行顺序时,根据所述不同业务节点执行不同事件的本地时刻,以及所述不同业务节点与所述基准节点的时间偏差,判断所述不同事件的执行顺序。
不同的业务节点执行事件时参考自己的本地时间,若不同节点之间的本地时间存在时间偏差,就不能通过比较不同业务节点执行不同事件的本地时刻来判断由不同业务节点分别执行的不同事件的执行顺序。
如上述S100~106所述的步骤,针对不同的业务节点,可以确定每个节点与同一个基准节点的时间偏差,即不同的业务节点的本地时间有了相同的标准作对照,判断由不同节点执行的不同事件的执行顺序时,将不同的业务节点执行不同事件的执行时刻用这些业务节点与同一基准节点确定的时间偏差进行校正后,即可通过对比校正后的事件的执行时刻来判断事件被执行的先后顺序。
从上述方法中可以看出,当需要对分布式系统中不同节点上执行的不同事件的先后顺序进行排序时,由于不同节点之间可能存在时间偏差,通过比较各节点参考自身本地时间确定的事件的执行时刻无法判断事件执行的先后顺序,本方法通过业务节点与基准节点的信息交互就可以确定业务节点与基准节点的时间偏差,然后用所述时间偏差校正事件的执行时刻,通过比较校正后的事件的执行时刻来判断不同事件的执行顺序,不需要依赖专有硬件,具有普适性。
根据上述S106所述的步骤可知,沿用上例,如图3所示,所述业务节点与所述基准 节点的时间偏差为
Figure 640035DEST_PATH_IMAGE003
或者
Figure 300823DEST_PATH_IMAGE002
若可以确定业务节点发送消息的时长与基准节点返回响应的时长,那么业务节点可以根据第一时刻、第二时刻、第三时刻与发送请求的时长或返回响应的时长获得确定的时间偏差时长。但是在实际的业务节点与基准节点信息交互的过程中,业务节点发送消息的时长与基准节点返回响应的时长通常是变量且不容易确定。
若无法确定具体的业务节点发送消息的时长与基准节点返回响应的时长,也可以先确定所述业务节点与所述基准节点的时间偏差范围,然后在所述业务节点与所述基准节点的时间偏差范围中取一个确定的时长作为所述业务节点与所述基准节点的时间偏差,也可以直接将确定的所述业务节点与所述基准节点的时间偏差范围作为所述业务节点与所述基准节点的时间偏差。
所以所述业务节点与所述基准节点的时间偏差可以是一个确定的时长,也可以是一个时长范围,即,时间偏差范围。
具体地,业务节点可以根据上述步骤S100~104确定的第一时刻、第二时刻、第三时刻的先后顺序确定所述业务节点与所述基准节点的时间偏差范围。
因为第一时刻是业务节点向基准节点发送消息业务节点的本地时刻,第三时刻是业务节点收到基准节点返回的响应时业务节点的本地时刻,所以第三时刻一定在第一时刻之后。沿用上例,如图3所示,即t3>t1。
分别考虑业务节点与基准节点的本地时间可能存在的不同先后顺序,可以得到第二时刻与第一、第三时刻的先后顺序,再结合业务节点与基准节点的信息交互过程中的两种极端情况,业务节点向基准节点发送的消息瞬间就到达基准节点以及基准节点向业务节点返回的响应瞬间到达业务节点,而现实中的业务节点与基准节点的信息交互只可能在两种极端情况之间,所以结合业务节点与基准节点的本地时间的先后顺序以及业务节点与基准节点的信息交互过程的极端情况就可以确定所述业务节点与所述基准节点的时间偏差范围。沿用上例,如图3所示,若已知第一时刻、第二时刻、第三时刻的先后顺序,结合业务节点与基准节点的信息交互过程中的两种极端情况,即发送请求的时长ta以及返回响应的时长tb趋于0,可以确定所述业务节点与所述基准节点的时间偏差范围。
考虑业务节点与基准节点的本地时间可能存在的不同先后顺序,结合业务节点与基准节点的信息交互过程中的两种极端情况,可以确定所述业务节点与所述基准节点的时间偏差范围:
若业务节点与基准节点的本地时间相差不大,所述第一时刻在第二时刻之前,且第二时刻在第三时刻之前,根据所述第一时刻和所述第三时刻,确定所述业务节点与所述基准节点的第一时间偏差范围;
若业务节点与基准节点的本地时间相差较大,且业务节点的本地时间领先于基准节点的本地时间,所述第一时刻在第二时刻之后,根据所述第一时刻、第二时刻、第三时刻,确定所述业务节点与所述基准节点的第二时间偏差范围;
若业务节点与基准节点的本地时间相差较大,且业务节点的本地时间落后于基准节点的本地时间,所述第二时刻在第三时刻之后,根据所述第一时刻、第二时刻、第三时刻,确定所述业务节点与所述基准节点的第三时间偏差范围。
具体地,沿用上例,如图3所示,已知t3>t1,|t2-t1-ta|、|t3-t2-tb|,ta趋于0以及tb趋于0,若t1<t2<t3,可得所述业务节点与所述基准节点的第一时间偏差范围为{t1-t3,t3-t1},若t2<t1,可得所述业务节点与所述基准节点的第二时间偏差范围为{t1-t2,t3-t2},若t2>t3,可得所述业务节点与所述基准节点的第三时间偏差范围为{t2-t3,t2-t1}。
进一步的,对于一个业务节点来说,该业务节点可通过如上述步骤S100~106所述的方法,多次确定该业务节点自身与基准节点的时间偏差。
具体地,在步骤S100中,业务节点可以按预设周期向基准节点发送消息,每次向基准节点发送消息时确定第一时刻,再根据步骤S102~104确定所述第一时刻相对应的第二、第三时刻,然后在步骤S106中确定相应的业务节点与基准节点的时间偏差。
可选地,如上述步骤S106所述,业务节点每次确定所述业务节点与所述基准节点的时间偏差之后,可以记录本次确定的所述时间偏差,并将本次业务节点向基准节点发送消息时确定的所述第一时刻记录为所述时间偏差对应的时间戳。
可选地,业务节点可以将所述时间偏差记录在日志中,也可以记录在其他具有存储功能的文件、数据库或存储介质中。
由于业务节点多次确定并记录该业务节点自身与基准节点的时间偏差及每个时间偏差对应的时间戳,在上述步骤S108中,用所述业务节点与所述基准节点时间偏差校正事件的执行时刻时,可以选取执行该事件的业务节点记录的与所述执行时刻最接近且在所述执行时刻之前和之后的时间戳对应的时间偏差来校正,从而降低误差。
如上述步骤S106所述,业务节点与基准节点的时间偏差可以是确定的时长也可以是时间偏差范围。
若业务节点与基准节点的时间偏差是一个确定的时长,校正事件的执行时刻后得到的是事件的实际执行时刻,根据实际执行时刻的先后判断所述不同事件的执行顺序。
具体地,针对所述不同事件中的每个事件,确定执行该事件的业务节点执行该事件的本地时刻,作为执行时刻;确定执行该事件的业务节点记录的与所述执行时刻最接近且在所述执行时刻之前的时间戳对应的时间偏差,作为第一时间偏差;确定执行该事件的业务节点记录的与所述执行时刻最接近且在所述执行时刻之后的时间戳对应的时间偏差,作为第二时间偏差;根据所述执行时刻、所述第一时间偏差、所述第二时间偏差,确定该事件的实际执行时刻;根据确定的所述不同事件的实际执行时刻,比较所述不同事件的实际执行时刻的先后,判断所述不同事件的执行顺序。
若业务节点与基准节点的时间偏差是时间偏差范围,校正事件的执行时刻后得到事件的实际执行时刻范围,根据实际执行时刻范围判断所述不同事件的执行顺序。
具体地,针对所述不同事件中的每个事件,确定执行该事件的业务节点执行该事件的本地时刻,作为执行时刻;确定执行该事件的业务节点记录的与所述执行时刻最接近且在所述执行时刻之前的时间戳对应的时间偏差范围,作为第一时间偏差范围;确定执行该事件的业务节点记录的与所述执行时刻最接近且在所述执行时刻之后的时间戳对应的时间偏差范围,作为第二时间偏差范围;根据所述执行时刻、所述第一时间偏差范围、所述第二时间偏差范围,确定该事件的实际执行时刻范围;根据确定的所述不同事件的实际执行时刻范围,判断所述不同事件的执行顺序。
由于时间范围之间可能存在交集,不能简单的通过比较时间范围的某一指定的时刻先后来确定时间范围的先后,所以根据确定的所述不同事件的实际执行时刻范围,判断所述不同事件的执行顺序,判断方法如下:
针对所述不同事件中的任意两个事件,判断该两个事件的实际执行时刻范围是否存在交集;
若该两个事件的实际执行时刻范围存在交集,判断该两个事件的实际执行时刻范围的交并比是否大于预设阈值,若是,确定该两个事件为同时执行,若否,比较该两个事件实际执行时刻范围中的指定时刻,确定实际执行时刻范围的指定时刻在前的事件执行顺序在前,实际执行时刻范围的指定时刻在后的事件执行顺序在后。
所述指定时刻是指事件实际执行时刻范围中一个时刻,该时刻可以是事件实际执行时刻范围的最早时刻或者最晚时刻,也可以是事件实际执行时刻范围的中间时刻,亦或者是事件实际执行时刻范围中其他的时刻。
例如,如图4A所示,事件A与事件B的实际执行时刻范围存在交集,选择事件A 的实际执行时刻范围的最小时刻tAl作为事件A对应的指定时刻,则事件B对应的指定时刻就是事件B的实际执行时刻范围的最小时刻tBl,比较tAl与tBl的先后顺序即可判断事件A与事件B的执行顺序。
若如图4B所示,该两个事件的实际执行时刻范围不存在交集,比较该两个事件的实际执行时刻范围的先后顺序,判断该两个事件的执行顺序。
以上为本说明书的一个或多个实施例提供的判断事件执行顺序方法,基于同样的思路,本说明书还提供了相应的判断事件执行顺序装置,如图5所示。
图5为本说明书提供的一种判断事件执行顺序装置示意图,具体包括:
发送模块501,用于向基准节点发送消息,并确定发送所述消息时所述装置的本地时刻,作为第一时刻;
提取模块502,用于接收所述基准节点针对所述消息返回的响应,并提取所述响应中携带的所述基准节点接收到所述消息时所述基准节点的本地时刻,作为第二时刻;
接收模块503,用于确定接收到所述响应时所述装置的本地时刻,作为第三时刻;
确定模块504,用于根据所述第一时刻、第二时刻、第三时刻,确定所述装置与所述基准节点的时间偏差;
判断模块505,用于在判断由不同业务节点分别执行的不同事件的执行顺序时,根据所述不同业务节点执行不同事件的本地时刻,以及所述不同业务节点与所述基准节点的时间偏差,判断所述不同事件的执行顺序。
可选地,所述发送模块501具体用于,按预设周期,向所述基准节点发送消息;
所述确定模块504还用于,在确定所述装置与所述基准节点的时间偏差之后,记录所述时间偏差,并将所述第一时刻记录为所述时间偏差对应的时间戳。
可选地,所述判断模块505具体用于,针对所述不同事件中的每个事件,确定执行该事件的业务节点执行该事件的本地时刻,作为执行时刻;确定执行该事件的业务节点记录的与所述执行时刻最接近且在所述执行时刻之前的时间戳对应的时间偏差,作为第一时间偏差;确定执行该事件的业务节点记录的与所述执行时刻最接近且在所述执行时刻之后的时间戳对应的时间偏差,作为第二时间偏差;根据所述执行时刻、所述第一时间偏差、所述第二时间偏差,确定该事件的实际执行时刻;根据确定的所述不同事件的实际执行时刻,判断所述不同事件的执行顺序。
可选地,所述确定模块504具体用于,根据所述第一时刻、第二时刻、第三时刻的先后关系,确定所述装置与所述基准节点的时间偏差范围。
可选地,所述判断模块505具体用于,针对所述不同事件中的每个事件,根据执行该事件的业务节点执行该事件的本地时刻,以及该业务节点与所述基准节点的时间偏差范围,确定该事件的实际执行时刻范围;针对所述不同事件中的任意两个事件,判断该两个事件的实际执行时刻范围是否存在交集;若是,根据该两个事件的实际执行时刻范围的交并比,判断该两个事件的执行顺序;若否,比较该两个事件的实际执行时刻范围的先后顺序,判断该两个事件的执行顺序。
可选地,所述判断模块505具体用于,判断该两个事件的实际执行时刻范围的交并比是否大于预设阈值;若是,确定该两个事件为同时执行;若否,比较该两个事件实际执行时刻范围中的指定时刻,确定实际执行时刻范围的指定时刻在前的事件执行顺序在前,实际执行时刻范围的指定时刻在后的事件执行顺序在后。
可选地,所述确定模块504具体用于,若所述第一时刻在第二时刻之前,且第二时刻在第三时刻之前,根据所述第一时刻和所述第三时刻,确定所述装置与所述基准节点的第一时间偏差范围;若所述第一时刻在第二时刻之后,根据所述第一时刻、第二时刻、第三时刻,确定所述装置与所述基准节点的第二时间偏差范围;若所述第二时刻在第三时刻之后,根据所述第一时刻、第二时刻、第三时刻,确定所述业务节点与所述装置的第三时间偏差范围。
本说明书还提供了一种计算机可读存储介质,该存储介质存储有计算机程序,计算机程序可用于执行上述图1提供的判断事件执行顺序方法。
本说明书还提供了图6所示的电子设备的结构示意图。如图6所述,在硬件层面,该无人驾驶设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,以实现上述图1所述的判断事件执行顺序方法。当然,除了软件实现方式之外,本说明书并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device, PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC625D、Atmel AT91SAM、Microchip PIC18F26K20 以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (12)

1.一种判断事件执行顺序的方法,分布式系统包括业务节点和基准节点,所述方法应用于业务节点,所述方法包括:
业务节点向基准节点发送消息,并确定发送所述消息时所述业务节点的本地时刻,作为第一时刻;
接收所述基准节点针对所述消息返回的响应,并提取所述响应中携带的所述基准节点接收到所述消息时所述基准节点的本地时刻,作为第二时刻;
确定接收到所述响应时所述业务节点的本地时刻,作为第三时刻;
根据所述第一时刻、第二时刻、第三时刻,确定所述业务节点与所述基准节点的时间偏差;
在判断由不同业务节点分别执行的不同事件的执行顺序时,根据所述不同业务节点执行不同事件的本地时刻,以及所述不同业务节点与所述基准节点的时间偏差,判断所述不同事件的执行顺序;
根据所述第一时刻、第二时刻、第三时刻,确定所述业务节点与所述基准节点的时间偏差,具体包括:
根据所述第一时刻、第二时刻、第三时刻的先后关系,确定所述业务节点与所述基准节点的时间偏差范围;
根据所述不同业务节点执行不同事件的本地时刻,以及所述不同业务节点与所述基准节点的时间偏差,判断所述不同事件的执行顺序,具体包括:
针对所述不同事件中的每个事件,根据执行该事件的业务节点执行该事件的本地时刻,以及该业务节点与所述基准节点的时间偏差范围,确定该事件的实际执行时刻范围;
针对所述不同事件中的任意两个事件,判断该两个事件的实际执行时刻范围是否存在交集;
若是,根据该两个事件的实际执行时刻范围的交并比,判断该两个事件的执行顺序;
若否,比较该两个事件的实际执行时刻范围的先后顺序,判断该两个事件的执行顺序。
2.如权利要求1所述的方法,业务节点向基准节点发送消息,具体包括:
所述业务节点按预设周期,向所述基准节点发送消息;
确定所述业务节点与所述基准节点的时间偏差之后,所述方法还包括:
记录所述时间偏差,并将所述第一时刻记录为所述时间偏差对应的时间戳。
3.如权利要求2所述的方法,根据所述不同业务节点执行不同事件的本地时刻,以及所述不同业务节点与所述基准节点的时间偏差,判断所述不同事件的执行顺序,具体包括:
针对所述不同事件中的每个事件,确定执行该事件的业务节点执行该事件的本地时刻,作为执行时刻;
确定执行该事件的业务节点记录的与所述执行时刻最接近且在所述执行时刻之前的时间戳对应的时间偏差,作为第一时间偏差;确定执行该事件的业务节点记录的与所述执行时刻最接近且在所述执行时刻之后的时间戳对应的时间偏差,作为第二时间偏差;
根据所述执行时刻、所述第一时间偏差、所述第二时间偏差,确定该事件的实际执行时刻;
根据确定的所述不同事件的实际执行时刻,判断所述不同事件的执行顺序。
4.如权利要求1所述的方法,根据该两个事件的实际执行时刻范围的交并比,判断该两个事件的执行顺序,具体包括:
判断该两个事件的实际执行时刻范围的交并比是否大于预设阈值;
若是,确定该两个事件为同时执行;
若否,比较该两个事件实际执行时刻范围中的指定时刻,确定实际执行时刻范围的指定时刻在前的事件执行顺序在前,实际执行时刻范围的指定时刻在后的事件执行顺序在后。
5.如权利要求1所述的方法,根据所述第一时刻、第二时刻、第三时刻的先后关系,确定所述业务节点与所述基准节点的时间偏差范围,具体包括:
若所述第一时刻在第二时刻之前,且第二时刻在第三时刻之前,根据所述第一时刻和所述第三时刻,确定所述业务节点与所述基准节点的第一时间偏差范围;
若所述第一时刻在第二时刻之后,根据所述第一时刻、第二时刻、第三时刻,确定所述业务节点与所述基准节点的第二时间偏差范围;
若所述第二时刻在第三时刻之后,根据所述第一时刻、第二时刻、第三时刻,确定所述业务节点与所述基准节点的第三时间偏差范围。
6.一种判断事件执行顺序的装置,分布式系统包括业务节点和基准节点,所述装置应用于业务节点,所述装置包括:
发送模块,用于向基准节点发送消息,并确定发送所述消息时所述装置的本地时刻,作为第一时刻;
提取模块,用于接收所述基准节点针对所述消息返回的响应,并提取所述响应中携带的所述基准节点接收到所述消息时所述基准节点的本地时刻,作为第二时刻;
接收模块,用于确定接收到所述响应时所述装置的本地时刻,作为第三时刻;
确定模块,用于根据所述第一时刻、第二时刻、第三时刻,确定所述装置与所述基准节点的时间偏差;
判断模块,用于在判断由不同业务节点分别执行的不同事件的执行顺序时,根据所述不同业务节点执行不同事件的本地时刻,以及所述不同业务节点与所述基准节点的时间偏差,判断所述不同事件的执行顺序;
所述确定模块具体用于根据所述第一时刻、第二时刻、第三时刻的先后关系,确定所述业务节点与所述基准节点的时间偏差范围;
所述判断模块具体用于针对所述不同事件中的每个事件,根据执行该事件的业务节点执行该事件的本地时刻,以及该业务节点与所述基准节点的时间偏差范围,确定该事件的实际执行时刻范围;针对所述不同事件中的任意两个事件,判断该两个事件的实际执行时刻范围是否存在交集;若是,根据该两个事件的实际执行时刻范围的交并比,判断该两个事件的执行顺序;若否,比较该两个事件的实际执行时刻范围的先后顺序,判断该两个事件的执行顺序。
7.如权利要求6所述的装置,所述发送模块具体用于,按预设周期,向所述基准节点发送消息;
所述确定模块还用于,在确定所述装置与所述基准节点的时间偏差之后,记录所述时间偏差,并将所述第一时刻记录为所述时间偏差对应的时间戳。
8.如权利要求7所述的装置,所述判断模块具体用于,针对所述不同事件中的每个事件,确定执行该事件的业务节点执行该事件的本地时刻,作为执行时刻;确定执行该事件的业务节点记录的与所述执行时刻最接近且在所述执行时刻之前的时间戳对应的时间偏差,作为第一时间偏差;确定执行该事件的业务节点记录的与所述执行时刻最接近且在所述执行时刻之后的时间戳对应的时间偏差,作为第二时间偏差;根据所述执行时刻、所述第一时间偏差、所述第二时间偏差,确定该事件的实际执行时刻;根据确定的所述不同事件的实际执行时刻,判断所述不同事件的执行顺序。
9.如权利要求6所述的装置,所述判断模块具体用于,判断该两个事件的实际执行时刻范围的交并比是否大于预设阈值;若是,确定该两个事件为同时执行;若否,比较该两个事件实际执行时刻范围中的指定时刻,确定实际执行时刻范围的指定时刻在前的事件执行顺序在前,实际执行时刻范围的指定时刻在后的事件执行顺序在后。
10.如权利要求6所述的装置,所述确定模块具体用于,若所述第一时刻在第二时刻之前,且第二时刻在第三时刻之前,根据所述第一时刻和所述第三时刻,确定所述装置与所述基准节点的第一时间偏差范围;若所述第一时刻在第二时刻之后,根据所述第一时刻、第二时刻、第三时刻,确定所述装置与所述基准节点的第二时间偏差范围;若所述第二时刻在第三时刻之后,根据所述第一时刻、第二时刻、第三时刻,确定所述装置与所述基准节点的第三时间偏差范围。
11.一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述权利要求1~5中任一项所述的方法。
12.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述权利要求1~5中任一项所述的方法。
CN202211260851.0A 2022-10-14 2022-10-14 判断事件执行顺序的方法、装置、存储介质及电子设备 Active CN115344410B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211260851.0A CN115344410B (zh) 2022-10-14 2022-10-14 判断事件执行顺序的方法、装置、存储介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211260851.0A CN115344410B (zh) 2022-10-14 2022-10-14 判断事件执行顺序的方法、装置、存储介质及电子设备

Publications (2)

Publication Number Publication Date
CN115344410A CN115344410A (zh) 2022-11-15
CN115344410B true CN115344410B (zh) 2023-02-28

Family

ID=83957227

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211260851.0A Active CN115344410B (zh) 2022-10-14 2022-10-14 判断事件执行顺序的方法、装置、存储介质及电子设备

Country Status (1)

Country Link
CN (1) CN115344410B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106502769A (zh) * 2016-09-30 2017-03-15 华为技术有限公司 分布式事务处理方法、装置及系统
CN110351823A (zh) * 2018-04-03 2019-10-18 华为技术有限公司 通信的方法和装置
CN112579797A (zh) * 2021-02-20 2021-03-30 支付宝(杭州)信息技术有限公司 针对知识图谱的业务处理方法及装置
CN112737974A (zh) * 2020-12-24 2021-04-30 平安普惠企业管理有限公司 业务流处理方法、装置、计算机设备及存储介质
CN114205354A (zh) * 2021-12-07 2022-03-18 广州市百果园信息技术有限公司 事件管理系统、事件管理方法、服务器及存储介质
CN114329095A (zh) * 2022-01-12 2022-04-12 平安壹钱包电子商务有限公司 系统逻辑图生成方法、装置、设备及存储介质
WO2022127122A1 (zh) * 2020-12-15 2022-06-23 深圳壹账通智能科技有限公司 区块链网络中节点权限的动态配置方法、装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106502769A (zh) * 2016-09-30 2017-03-15 华为技术有限公司 分布式事务处理方法、装置及系统
CN110351823A (zh) * 2018-04-03 2019-10-18 华为技术有限公司 通信的方法和装置
WO2022127122A1 (zh) * 2020-12-15 2022-06-23 深圳壹账通智能科技有限公司 区块链网络中节点权限的动态配置方法、装置
CN112737974A (zh) * 2020-12-24 2021-04-30 平安普惠企业管理有限公司 业务流处理方法、装置、计算机设备及存储介质
CN112579797A (zh) * 2021-02-20 2021-03-30 支付宝(杭州)信息技术有限公司 针对知识图谱的业务处理方法及装置
CN114205354A (zh) * 2021-12-07 2022-03-18 广州市百果园信息技术有限公司 事件管理系统、事件管理方法、服务器及存储介质
CN114329095A (zh) * 2022-01-12 2022-04-12 平安壹钱包电子商务有限公司 系统逻辑图生成方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN115344410A (zh) 2022-11-15

Similar Documents

Publication Publication Date Title
CN107450979B (zh) 一种区块链共识方法及装置
JP6921206B2 (ja) データベース状態決定方法およびデバイスならびに整合性検証方法およびデバイス
CN107391526B (zh) 一种基于区块链的数据处理方法及设备
CN107066519B (zh) 一种任务检测方法及装置
CN108628688B (zh) 一种消息处理方法、装置及设备
CN107577697B (zh) 一种数据处理方法、装置及设备
CN110059023B (zh) 一种刷新级联缓存的方法、系统及设备
CN116048800A (zh) 一种数据处理的方法、装置、存储介质及电子设备
CN113079224A (zh) 一种账号绑定方法、装置、存储介质及电子设备
CN114510296B (zh) 一种小程序存储调用方法、装置以及设备
CN109376988B (zh) 一种业务数据的处理方法和装置
CN111459724A (zh) 节点切换方法、装置、设备及计算机可读存储介质
CN115344410B (zh) 判断事件执行顺序的方法、装置、存储介质及电子设备
CN116048977B (zh) 一种基于数据还原的测试方法及装置
CN115981751A (zh) 一种近存计算系统以及近存计算方法、装置、介质及设备
CN113010495B (zh) 一种数据库优化方法及装置
CN115904785A (zh) 一种异常定位方法、装置、设备及可读存储介质
CN112084171B (zh) 基于Cassandra数据库的操作日志写入方法、装置、设备及介质
CN110908429A (zh) 一种定时器操作方法及装置
CN115033350A (zh) 一种分布式事务的执行方法及装置
CN110908792B (zh) 一种数据处理方法及装置
CN112699129A (zh) 一种数据处理系统、方法及装置
CN117041980B (zh) 一种网元管理方法、装置、存储介质及电子设备
CN114610526B (zh) 数据容灾方法、系统、装置及设备
CN116743550B (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
GR01 Patent grant
GR01 Patent grant