CN108809468B - 时间同步的方法、装置和存储介质以及电子设备 - Google Patents
时间同步的方法、装置和存储介质以及电子设备 Download PDFInfo
- Publication number
- CN108809468B CN108809468B CN201810517627.2A CN201810517627A CN108809468B CN 108809468 B CN108809468 B CN 108809468B CN 201810517627 A CN201810517627 A CN 201810517627A CN 108809468 B CN108809468 B CN 108809468B
- Authority
- CN
- China
- Prior art keywords
- server
- servers
- synchronization
- time synchronization
- synchronized
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开涉及一种时间同步的方法、装置和存储介质以及电子设备,包括:从服务端集群中包括的多个服务端中,确定至少两个已进行时间同步的同步服务端;利用至少两个所述同步服务端,对所述多个服务端中未同步的服务端进行时间同步。这样,至少两个同步服务端可以将未同步的服务端分担处理,避免了相关技术中采用单个同步服务端对集群中未同步的服务端进行时间同步造成的单个同步服务端的网络资源消耗较大,从而减少了未同步的服务端进行时间同步的网络延迟,进而提高了时间同步的准确性。
Description
技术领域
本公开涉及通信技术领域,具体地,涉及一种时间同步的方法、装置和存储介质以及电子设备。
背景技术
随着服务端集群的集群节点数的增加,集群各节点之间时间不一致的问题会越来越严重,使得经常会引发故障,其中,集群各节点均存储有大量的业务数据,从而导致业务数据无法恢复,由此可见,集群各节点之间时间的一致性至关重要。
在相关技术中,可以确定集群节点中的目标节点为服务端,并确定集群节点中除了该目标节点以外的其他节点为客户端,从而在该服务端与时钟服务器时间同步后,通过该服务端与该客户端进行时间同步以实现该集群各节点之间的时间同步,但是,由于在该服务端与该客户端进行时间同步时,每个该客户端可以向该服务端发送同步请求,并接收服务端向客户端反馈自身时钟对应的当前时间,从而客户端可以根据服务端反馈的当前时间进行时间同步,考虑到集群节点数较多,在多个客户端均向服务端发送同步请求时,会造成服务端的网络资源消耗较大,从而使得客户端接收该当前时间存在网络延迟,进而降低了时间同步的准确性。
发明内容
为了解决上述问题,本公开提出了一种时间同步的方法、装置和存储介质以及电子设备。
根据本公开实施例的第一方面,提供一种时间同步的方法,包括:
从服务端集群中包括的多个服务端中,确定至少两个已进行时间同步的同步服务端;
利用至少两个所述同步服务端,对所述多个服务端中未同步的服务端进行时间同步。
可选地,所述从服务端集群中包括的多个服务端中,确定至少两个已进行时间同步的同步服务端包括:
从所述多个服务端中确定主服务端,并通过时钟服务器对所述主服务端进行时间同步;
从所述多个服务端中未同步的服务端中获取至少一个目标服务端;
在所述主服务端与至少一个所述目标服务端进行时间同步后,确定所述主服务端和至少一个所述目标服务端为至少两个所述同步服务端。
可选地,所述利用至少两个所述同步服务端,对所述多个服务端中未同步的服务端进行时间同步包括:
利用至少两个所述同步服务端,循环执行时间同步步骤对所述多个服务端中未同步的服务端进行时间同步,直至所述多个服务端全部完成时间同步;
所述时间同步步骤包括:
从全部所述同步服务端中获取用于时间同步的服务端集;所述服务端集包括至少两个所述同步服务端;
从所述多个服务端包括的未同步的服务端中,获取所述服务端集中的每个所述同步服务端对应的待同步服务端;
通过所述服务端集中的每个所述同步服务端与对应的所述待同步服务端进行时间同步;
确定时间同步后的所述待同步服务端为至少两个所述同步服务端中的同步服务端。
可选地,所述从所述多个服务端包括的未同步的服务端中,获取所述服务端集中的每个所述同步服务端对应的待同步服务端包括:
从所述多个服务端包括的未同步的服务端中,获取所述服务端集中的每个所述同步服务端一一对应的所述待同步服务端。
可选地,所述从所述多个服务端包括的未同步的服务端中,获取所述服务端集中的每个所述同步服务端对应的待同步服务端包括:
从所述多个服务端包括的未同步的服务端中,优先获取位于相同局域网内的所述待同步服务端。
可选地,所述通过所述服务端集中的每个所述同步服务端与对应的所述待同步服务端进行时间同步包括:
在预设测试时间段内按照预设周期获取所述同步服务端和所述待同步服务端之间的网络延迟时间;
根据所述网络延迟时间确定所述同步服务端和所述待同步服务端在每个所述预设周期内的时间差;
在预设数量的连续所述预设周期内的所述时间差满足预设条件时,根据所述时间差对所述待同步服务端进行时间同步;所述预设条件为每两个所述时间差之间的差值小于或者等于预设差值。
根据本公开实施例的第二方面,提供一种时间同步的装置,包括:
确定模块,用于从服务端集群中包括的多个服务端中,确定至少两个已进行时间同步的同步服务端;
同步模块,用于利用至少两个所述同步服务端,对所述多个服务端中未同步的服务端进行时间同步。
可选地,所述确定模块包括:
处理子模块,用于从所述多个服务端中确定主服务端,并通过时钟服务器对所述主服务端进行时间同步;
获取子模块,用于从所述多个服务端中未同步的服务端中获取至少一个目标服务端;
确定子模块,用于在所述主服务端与至少一个所述目标服务端进行时间同步后,确定所述主服务端和至少一个所述目标服务端为至少两个所述同步服务端。
可选地,所述同步模块,用于利用至少两个所述同步服务端,循环执行时间同步步骤对所述多个服务端中未同步的服务端进行时间同步,直至所述多个服务端全部完成时间同步;
所述时间同步步骤包括:
从全部所述同步服务端中获取用于时间同步的服务端集;所述服务端集包括至少两个所述同步服务端;
从所述多个服务端包括的未同步的服务端中,获取所述服务端集中的每个所述同步服务端对应的待同步服务端;
通过所述服务端集中的每个所述同步服务端与对应的所述待同步服务端进行时间同步;
确定时间同步后的所述待同步服务端为至少两个所述同步服务端中的同步服务端。
可选地,所述同步模块,用于从所述多个服务端包括的未同步的服务端中,获取所述服务端集中的每个所述同步服务端一一对应的所述待同步服务端。
可选地,所述同步模块,用于从所述多个服务端包括的未同步的服务端中,优先获取位于相同局域网内的所述待同步服务端。
可选地,所述同步模块,用于在预设测试时间段内按照预设周期获取所述同步服务端和所述待同步服务端之间的网络延迟时间;
根据所述网络延迟时间确定所述同步服务端和所述待同步服务端在每个所述预设周期内的时间差;
在预设数量的连续所述预设周期内的所述时间差满足预设条件时,根据所述时间差对所述待同步服务端进行时间同步;所述预设条件为每两个所述时间差之间的差值小于或者等于预设差值。
根据本公开实施例的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述所述方法的步骤。
根据本公开实施例的第四方面,提供一种电子设备,包括:
上述所述的计算机可读存储介质;以及
一个或者多个处理器,用于执行所述计算机可读存储介质中的程序。
通过上述技术方案,可以从服务端集群中包括的多个服务端中,确定至少两个已进行时间同步的同步服务端,并利用至少两个所述同步服务端,对所述多个服务端中未同步的服务端进行时间同步。这样,至少两个同步服务端可以将未同步的服务端分担处理,避免了相关技术中采用单个同步服务端对集群中未同步的服务端进行时间同步造成的单个同步服务端的网络资源消耗较大,从而减少了未同步的服务端进行时间同步的网络延迟,进而提高了时间同步的准确性。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1是本公开示例性实施例示出的一种时间同步的方法的流程图;
图2是本公开示例性实施例示出的又一种时间同步的方法的流程图;
图3是本公开示例性实施例示出的一种时间同步的示意图;
图4是本公开示例性实施例示出的又一种时间同步的示意图;
图5是本公开示例性实施例示出的一种时间同步的装置框图;
图6是本公开示例性实施例示出的另一种时间同步的装置框图;
图7是本公开示例性实施例示出的一种电子设备的框图。
具体实施方式
以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
为了解决上述问题,本公开提出了一种时间同步的方法、装置和存储介质以及电子设备,本公开从服务端集群中获取用于时间同步的至少两个同步服务端,至少两个该同步服务端为已完成时间同步的服务端,并通过至少两个同步服务端对服务端集群中未同步的服务端进行时间同步,这样,至少两个同步服务端可以将未同步的服务端分担处理,避免了相关技术中采用单个同步服务端对集群中未同步的服务端进行时间同步造成的单个同步服务端的网络资源消耗较大,从而减少了未同步的服务端进行时间同步的网络延迟,进而提高了时间同步的准确性。
下面结合具体实施例对本公开进行详细说明。
图1是本公开示例性实施例示出的一种时间同步的方法的流程图,如图1所示,该方法包括:
S101、从服务端集群中包括的多个服务端中,确定至少两个已进行时间同步的同步服务端。
在本步骤中,可以从该多个服务端中确定主服务端,并通过时钟服务器对该主服务端进行时间同步;从该多个服务端中未同步的服务端中获取至少一个目标服务端;在该主服务端与至少一个该目标服务端进行时间同步后,确定该主服务端和至少一个该目标服务端为至少两个该同步服务端,其中,从该多个服务端中确定主服务端可以包括:在该多个服务端向集群共享资源发送签名请求后,确定在该集群共享资源上签名成功的服务端为该主服务端,该签名请求用于请求对该集群共享资源进行签名,这样,可以通过该多个服务端中的任意服务端抢先对该集群共享资源进行签名确定该主服务端,避免了现有技术中通过人工设置该主服务端的繁琐操作。
S102、利用至少两个该同步服务端,对该多个服务端中未同步的服务端进行时间同步。
需要说明的是,由于该同步服务端为已进行时间同步的服务端,因此,可以对该同步服务端设置已同步标识,这样,在获取未同步的服务端时,可以确定该多个服务端中未标识该已同步标识的服务端为未同步的服务端。
在一种可能的实现方式中,可以利用至少两个该同步服务端,循环执行时间同步步骤对该多个服务端中未同步的服务端进行时间同步,直至该多个服务端全部完成时间同步。
其中,该时间同步步骤包括:首先,从全部该同步服务端中获取用于时间同步的服务端集,该服务端集包括至少两个该同步服务端;接着,从该多个服务端包括的未同步的服务端中,获取该服务端集中的每个该同步服务端对应的待同步服务端;然后,通过该服务端集中的每个该同步服务端与对应的该待同步服务端进行时间同步;最后,确定时间同步后的该待同步服务端为至少两个该同步服务端中的同步服务端。
采用上述方法,可以从服务端集群中包括的多个服务端中,确定至少两个已进行时间同步的同步服务端,并通过至少两个同步服务端对多个服务端中未同步的服务端进行时间同步,这样,至少两个同步服务端可以将未同步的服务端分担处理,避免了相关技术中采用单个同步服务端对集群中未同步的服务端进行时间同步造成的单个同步服务端的网络资源消耗较大,从而减少了未同步的服务端进行时间同步的网络延迟,进而提高了时间同步的准确性。
图2是本公开示例性实施例示出的一种时间同步的方法的流程图,如图2所示,该方法包括:
S201、从服务端集群中包括的多个服务端中,确定至少两个已进行时间同步的同步服务端。
在本步骤中,可以从该多个服务端中确定主服务端,并通过时钟服务器对该主服务端进行时间同步;从该多个服务端中未同步的服务端中获取至少一个目标服务端;在该主服务端与至少一个该目标服务端进行时间同步后,确定该主服务端和至少一个该目标服务端为至少两个该同步服务端,
需要说明的是,由于现有技术中需要从集群节点中人工设置目标节点为主服务端,而本公开可以在该多个服务端向集群共享资源发送签名请求后,确定在该集群共享资源上签名成功的服务端为该主服务端,该签名请求用于请求对该集群共享资源进行签名,这样,可以通过该多个服务端中的任意服务端抢先对该集群共享资源进行签名确定该主服务端,避免了现有技术中通过人工设置该主服务端的繁琐操作。
例如,如图3所示,若确定服务端1为该主服务端,服务端2为该目标服务端,则在服务端1对服务端2进行时间同步后,可以确定该同步服务端包括服务端1和服务端2;又如,如图4所示,若确定服务端1为该主服务端,服务端2和服务端3为该目标服务端,则在服务端1对服务端2和服务端3进行时间同步后,可以确定该同步服务端包括服务端1和服务端2以及服务端3,上述示例只是举例说明,本公开对此不作限定。
S202、利用至少两个该同步服务端,循环执行时间同步步骤对该多个服务端中未同步的服务端进行时间同步,直至该多个服务端全部完成时间同步。
其中,该时间同步步骤包括:
S11、从全部该同步服务端中获取用于时间同步的服务端集。
在本步骤中,若全部该同步服务端的数量小于或者等于该多个服务端中未同步的服务端的数量,则为了加快时间同步的速度,可以确定全部该同步服务端为该服务端集,示例地,若全部该同步服务端包括2个服务端,且该多个服务端中未同步的服务端包括500个服务端,则可以确定服务端集包括全部该同步服务端。
考虑到在循环执行时间同步步骤时,全部该同步服务端的数量可能大于该多个服务端中未同步的服务端的数量,这样,无需采用全部该同步服务端对未同步的服务端进行时间同步,因此,本步骤可以从全部该同步服务端中获取用于时间同步的服务端集,其中,该服务端集包括至少两个该同步服务端,例如,若在执行完某一次时间同步步骤后全部该同步服务端包括200个服务端,且该多个服务端中未同步的服务端包括50个服务端,则该服务端集包括的该同步服务端的数量小于或者等于该多个服务端中未同步的服务端的数量,如可以从全部该同步服务端中获取50个服务端作为该服务端集,从而可以使得服务端集中的同步服务端和该多个服务端中未同步的服务端存在一一对应关系;还可以从全部该同步服务端中获取40个服务端作为该服务端集,从而使得该服务端集中的一部分同步服务端与该多个服务端中一部分未同步的服务端存在一一对应关系,该服务端集中的另一部分同步服务端与该多个服务端中另一部分未同步的服务端存在一对多的对应关系,例如,服务端集中的30个同步服务端与该多个服务端中未同步的30个服务端存在一一对应的关系,且服务端集中剩余的10个同步服务端与该多个服务端中剩余的未同步的20个服务端存在一对二的对应关系,即1个同步服务端对应未同步的2个服务端,又如,服务端集中的35个同步服务端与该多个服务端中未同步的35个服务端存在一一对应的关系,且服务端集中剩余的5个同步服务端与该多个服务端中剩余的未同步的15个服务端存在一对三的对应关系,即1个同步服务端对应未同步的3个服务端,上述示例只是举例说明,本公开对此不作限定。
S12、从该多个服务端包括的未同步的服务端中,获取该服务端集中的每个该同步服务端对应的待同步服务端。
由于该同步服务端为已进行时间同步的服务端,因此,可以对该同步服务端设置已同步标识,这样,在获取未同步的服务端时,可以确定该多个服务端中未标识该已同步标识的服务端为未同步的服务端。
在本公开中,每个该同步服务端对应的待同步服务端可以包括一个或者多个服务端,示例地,继续以上述服务端集包括2个同步服务端(即服务端1和服务端2),且该多个服务端中未同步的服务端包括500个服务端为例进行说明,可以从500个未同步的服务端中,获取该服务端集中每个该同步服务端对应的待同步服务端,例如,服务端1和服务端2对应的待同步服务端分别为5个服务端,又如,服务端1对应的待同步服务端为3个服务端,服务端2对应的待同步服务端为1个服务端,上述示例只是举例说明,本公开对此不作限定。
需要说明的是,若一个同步服务端对应的待同步服务端包括多个,则在该同步服务端与该多个待同步服务端进行时间同步时,造成该同步服务端的网络资源消耗较大,为了避免该问题,在一种可能的实现方式中,可以从该多个服务端包括的未同步的服务端中,获取该服务端集中的每个该同步服务端一一对应的该待同步服务端,示例地,如图3所示,若该服务端集中包括2个同步服务端,即服务端1和服务端2,则可以从该多个服务端包括的未同步的服务端中获取服务端1对应的待同步服务端(如服务端3),以及服务端2对应的待同步服务端(如服务端4),从而在后续步骤中可以通过服务端1对服务端3进行时间同步,并通过服务端2对服务端4进行时间同步,上述示例只是举例说明,本公开对此不作限定。
另外,在本公开另一实施例中,可以通过以下方式从该多个服务端包括的未同步的服务端中,获取该服务端集中的每个该同步服务端对应的待同步服务端:从该多个服务端包括的未同步的服务端中,优先获取位于相同局域网内的该待同步服务端,这样,可以优先对相同局域网内的待同步服务端进行时间同步,从而避免了跨网同步存在网络延迟的问题,需要说明的是,在该相同局域网内的待同步服务端进行时间同步后,可以继续获取位于该局域网外的待同步服务端,并在后续步骤中对位于该局域网外的待同步服务端进行时间同步。
例如,如图3所示,在确定该服务端集中包括服务端1和服务端2时,在一种可能的实现方式中,可以从局域网中优先获取服务端a1作为服务端1对应的待同步服务端,并从该局域网中获取服务端a2作为服务端2对应的待同步服务端,从而在后续步骤中通过服务端1对服务端a1进行时间同步,以及通过服务端2对服务端a2进行时间同步,并将时间同步后的服务端a1和服务端a2作为至少两个该同步服务端中的同步服务端,继续根据至少两个该同步服务端对该局域网内的其他未同步的服务端进行时间同步,直至该局域网内的全部服务端完成时间同步;在另一种可能的实现方式中,可以从该局域网中获取服务端a1、服务端a2、…服务端ai作为服务端1对应的待同步服务端,并从该局域网中获取服务端ai+1、ai+2、…、an作为服务端2对应的待同步服务端,从而在后续步骤中通过服务端1对服务端a1、服务端a2、…服务端ai进行时间同步,以及通过服务端2对ai+1、ai+2、…、an进行时间同步,这样,在上述两种方式中,若该局域网内的全部服务端完成时间同步,则可以确定该局域网内的全部服务端为至少两个该同步服务端中的同步服务端,并通过至少两个该同步服务端对位于该局域网外的待同步服务端进行时间同步,从而实现对该服务端集群中的多个服务端进行时间同步,上述示例只是举例说明,本公开对此不作限定。
S13、通过该服务端集中的每个该同步服务端与对应的该待同步服务端进行时间同步。
在一种可能的实现方式中,可以在预设测试时间段内按照预设周期获取该同步服务端和该待同步服务端之间的网络延迟时间;并根据该网络延迟时间确定该同步服务端和该待同步服务端在每个该预设周期内的时间差;在预设数量的连续该预设周期内的该时间差满足预设条件时,根据该时间差对该待同步服务端进行时间同步;该预设条件为每两个该时间差之间的差值小于或者等于预设差值。采用上述方式,在每个该同步服务端与对应的待同步服务端进行时间同步时,均可以根据该同步服务端与对应的待同步服务端在该预设周期内的时间差进行时间同步,避免了现有技术中通过待同步服务端向同步服务端发送同步请求以获取同步服务端的当前时间,而存在网络延迟的问题。
其中,该网络延迟时间的获取方法可以包括:首先,该同步服务端向该待同步服务端发出请求消息,该请求消息用于获取该待同步服务端的当前时间t1,接着,获取该同步服务端接收t1的第一接收时间t2,然后,该同步服务端向该待同步服务端发送该同步服务端的当前时间t3,最后,获取该待同步服务端接收到t3的第二接收时间t4,这样,该网络延迟时间t5可以表示为:t5=((t4-t1)-(t3-t2))/2。
在本步骤中,在获取到网络延迟时间后,计算该时间差t6,该时间差t6的计算公式为:t6=t1-t2+t5,或者t6=t4-t3-t5,这样,可以获取在每个预设周期内的时间差,若该预设数量可以为3,则在3次连续预设周期内的该时间差中,每两个时间差之间的差值小于或者等于预设差值,则根据该时间差对该待同步服务端进行时间同步。
S14、确定时间同步后的该待同步服务端为至少两个该同步服务端中的同步服务端。
继续以S12中的示例为例进行说明,如图3所示,若该服务端集中包括服务端1和服务端2,服务端1对应的待同步服务端为服务端3,服务端2对应的待同步服务端为服务端4,且在通过服务端1对服务端3进行时间同步,并通过服务端2对服务端4进行时间同步后,则可以确定服务端3和服务端4为至少两个服务端中的同步服务端,并返回步骤S11,使得全部该同步服务端包括服务端1、服务端2和服务端3以及服务端4。
为了更好地理解,以图3为示例,对本公开实施例进行详细说明,如图3所示,首先,在服务端1与时钟服务器进行时间同步后,将服务端1与服务端2进行时间同步,可以确定服务端1与服务端2为该同步服务端,从而确定服务端3、服务端4以及服务端a1、服务端a2、…、服务端an为该多个服务端中未同步的服务端,且服务端a1、服务端a2、…、服务端an为相同局域网内的服务端,接着,可以确定服务端集包括服务端1与服务端2,并从该多个服务端中未同步的服务端中,获取相同局域网内的待同步服务端,如获取服务端a1为服务端1对应的待同步服务端、服务端a2为服务端2对应的待同步服务端,从而可以通过服务端1对服务端a1进行时间同步,并通过服务端2对服务端a2进行时间同步,这样,全部该同步服务端可以包括服务端a1、服务端a2、服务端1和服务端2,并可以确定该服务端集包括全部该同步服务端,继续从该相同局域网内的未同步的服务端中获取服务端集中每个同步服务端一一对应的待同步服务端,并通过每个该同步服务端与对应的服务端进行时间同步,直至该相同局域网内的服务端全部完成时间同步,在该相同局域网内的服务端全部完成时间同步后,确定全部该同步服务端包括服务端a1、服务端a2、…、服务端an、服务端1和服务端2,由于该多个服务端中未同步的服务端包括服务端3和服务端4,因此,可以从全部该同步服务端中获取两个同步服务端(如服务端a1和服务端a2)作为服务端集,则可以通过服务端a1与服务端a3进行时间同步,并通过服务端a2与服务端a4进行时间同步,上述完成该多个服务端的时间同步的过程中,是以同步服务端与待同步服务端以一一对应的方式进行时间同步为例进行说明的,本公开对此不作限定。
采用上述方法,可以从服务端集群中包括的多个服务端中,确定至少两个已进行时间同步的同步服务端,并通过至少两个同步服务端对多个服务端中未同步的服务端进行时间同步,这样,至少两个同步服务端可以将未同步的服务端分担处理,避免了相关技术中采用单个同步服务端对集群中未同步的服务端进行时间同步造成的单个同步服务端的网络资源消耗较大,从而减少了未同步的服务端进行时间同步的网络延迟,进而提高了时间同步的准确性。
图5是本公开示例性实施例示出的一种时间同步的装置框图,如图5所示,包括:
确定模块501,用于从服务端集群中包括的多个服务端中,确定至少两个已进行时间同步的同步服务端;
同步模块502,用于利用至少两个该同步服务端,对该多个服务端中未同步的服务端进行时间同步。
图6是本公开示例性实施例示出的一种时间同步的装置框图,如图6所示,该确定模块501包括:
处理子模块5011,用于从该多个服务端中确定主服务端,并通过时钟服务器对该主服务端进行时间同步;
获取子模块5012,用于从该多个服务端中未同步的服务端中获取至少一个目标服务端;
确定子模块5013,用于在该主服务端与至少一个该目标服务端进行时间同步后,确定该主服务端和至少一个该目标服务端为至少两个该同步服务端。
可选地,该同步模块502,用于利用至少两个该同步服务端,循环执行时间同步步骤对该多个服务端中未同步的服务端进行时间同步,直至该多个服务端全部完成时间同步;
该时间同步步骤包括:
从全部该同步服务端中获取用于时间同步的服务端集;该服务端集包括至少两个该同步服务端;
从该多个服务端包括的未同步的服务端中,获取该服务端集中的每个该同步服务端对应的待同步服务端;
通过该服务端集中的每个该同步服务端与对应的该待同步服务端进行时间同步;
确定时间同步后的该待同步服务端为至少两个该同步服务端中的同步服务端。
可选地,该同步模块502,用于从该多个服务端包括的未同步的服务端中,获取该服务端集中的每个该同步服务端一一对应的该待同步服务端。
可选地,该同步模块502,用于从该多个服务端包括的未同步的服务端中,优先获取位于相同局域网内的该待同步服务端。
可选地,该同步模块502,用于在预设测试时间段内按照预设周期获取该同步服务端和该待同步服务端之间的网络延迟时间;
根据该网络延迟时间确定该同步服务端和该待同步服务端在每个该预设周期内的时间差;
在预设数量的连续该预设周期内的该时间差满足预设条件时,根据该时间差对该待同步服务端进行时间同步;该预设条件为每两个该时间差之间的差值小于或者等于预设差值。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
采用上述装置,可以从服务端集群中包括的多个服务端中,确定至少两个已进行时间同步的同步服务端,并通过至少两个同步服务端对多个服务端中未同步的服务端进行时间同步,这样,至少两个同步服务端可以将未同步的服务端分担处理,避免了相关技术中采用单个同步服务端对集群中未同步的服务端进行时间同步造成的单个同步服务端的网络资源消耗较大,从而减少了未同步的服务端进行时间同步的网络延迟,进而提高了时间同步的准确性。
图7是本公开示例性实施例示出的一种电子设备700的框图。如图7所示,该电子设备700可以包括:处理器701,存储器702。该电子设备700还可以包括多媒体组件703,输入/输出(I/O)接口704,以及通信组件705中的一者或多者。
其中,处理器701用于控制该电子设备700的整体操作,以完成上述的时间同步的方法中的全部或部分步骤。存储器702用于存储各种类型的数据以支持在该电子设备700的操作,这些数据例如可以包括用于在该电子设备700上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器702可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件703可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器702或通过通信组件705发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口704为处理器701和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件705用于该电子设备700与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near FieldCommunication,简称NFC),2G、3G或4G,或它们中的一种或几种的组合,因此相应的该通信组件705可以包括:Wi-Fi模块,蓝牙模块,NFC模块。
在一示例性实施例中,电子设备700可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的时间同步的方法。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的时间同步的方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器702,上述程序指令可由电子设备700的处理器701执行以完成上述的时间同步的方法。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。
Claims (9)
1.一种时间同步的方法,其特征在于,包括:
从服务端集群中包括的多个服务端中,确定至少两个已进行时间同步的同步服务端;
利用至少两个所述同步服务端,对所述多个服务端中未同步的服务端进行时间同步;其中,
所述利用至少两个所述同步服务端,对所述多个服务端中未同步的服务端进行时间同步,包括:
利用至少两个所述同步服务端,循环执行时间同步步骤对所述多个服务端中未同步的服务端进行时间同步,直至所述多个服务端全部完成时间同步;
所述时间同步步骤,包括:
从全部所述同步服务端中获取用于时间同步的服务端集;所述服务端集包括至少两个所述同步服务端;
在确定所述至少两个所述同步服务端后,从第一局域网中确定所述至少两个所述同步服务端中的每个同步服务端对应未同步的目标服务端;其中,所述至少两个所述同步服务端不处于所述第一局域网内,并且,所述至少两个所述同步服务端中的每个所述同步服务端均与所述第一局域网连接;
在通过所述至少两个所述同步服务端对至少两个所述目标服务端进行时间同步后,将至少两个所述目标服务端作为所述至少两个所述同步服务端,在所述第一局域网内重复执行所述时间同步步骤,直至所述第一局域网中的所有服务端全部完成时间同步。
2.根据权利要求1所述的方法,其特征在于,所述从服务端集群中包括的多个服务端中,确定至少两个已进行时间同步的同步服务端包括:
从所述多个服务端中确定主服务端,并通过时钟服务器对所述主服务端进行时间同步;
从所述多个服务端中未同步的服务端中获取至少一个目标服务端;
在所述主服务端与至少一个所述目标服务端进行时间同步后,确定所述主服务端和至少一个所述目标服务端为至少两个所述同步服务端。
3.根据权利要求1所述的方法,其特征在于,所述时间同步步骤包括:
从全部所述同步服务端中获取用于时间同步的服务端集;所述服务端集包括至少两个所述同步服务端;
从所述多个服务端包括的未同步的服务端中,获取所述服务端集中的每个所述同步服务端对应的待同步服务端;
通过所述服务端集中的每个所述同步服务端与对应的所述待同步服务端进行时间同步;
确定时间同步后的所述待同步服务端为至少两个所述同步服务端中的同步服务端。
4.根据权利要求3所述的方法,其特征在于,所述从所述多个服务端包括的未同步的服务端中,获取所述服务端集中的每个所述同步服务端对应的待同步服务端包括:
从所述多个服务端包括的未同步的服务端中,获取所述服务端集中的每个所述同步服务端一一对应的所述待同步服务端。
5.根据权利要求3或4所述的方法,其特征在于,所述通过所述服务端集中的每个所述同步服务端与对应的所述待同步服务端进行时间同步包括:
在预设测试时间段内按照预设周期获取所述同步服务端和所述待同步服务端之间的网络延迟时间;
根据所述网络延迟时间确定所述同步服务端和所述待同步服务端在每个所述预设周期内的时间差;
在预设数量的连续所述预设周期内的所述时间差满足预设条件时,根据所述时间差对所述待同步服务端进行时间同步;所述预设条件为每两个所述时间差之间的差值小于或者等于预设差值。
6.一种时间同步的装置,其特征在于,包括:
确定模块,用于从服务端集群中包括的多个服务端中,确定至少两个已进行时间同步的同步服务端;
同步模块,用于利用至少两个所述同步服务端,对所述多个服务端中未同步的服务端进行时间同步;其中,
所述同步模块,用于利用至少两个所述同步服务端,循环执行时间同步步骤对所述多个服务端中未同步的服务端进行时间同步,直至所述多个服务端全部完成时间同步;
所述时间同步步骤包括:
从全部所述同步服务端中获取用于时间同步的服务端集;所述服务端集包括至少两个所述同步服务端;
在确定所述至少两个所述同步服务端后,从第一局域网中确定所述至少两个所述同步服务端中的每个同步服务端对应未同步的目标服务端;其中,所述至少两个所述同步服务端不处于所述第一局域网内,并且,所述至少两个所述同步服务端中的每个所述同步服务端均与所述第一局域网连接;
在通过所述至少两个所述同步服务端对至少两个所述目标服务端进行时间同步后,将至少两个所述目标服务端作为所述至少两个所述同步服务端,在所述第一局域网内重复执行所述时间同步步骤,直至所述第一局域网中的所有服务端全部完成时间同步。
7.根据权利要求6所述的装置,其特征在于,所述时间同步步骤包括:
从全部所述同步服务端中获取用于时间同步的服务端集;所述服务端集包括至少两个所述同步服务端;
从所述多个服务端包括的未同步的服务端中,获取所述服务端集中的每个所述同步服务端对应的待同步服务端;
通过所述服务端集中的每个所述同步服务端与对应的所述待同步服务端进行时间同步;
确定时间同步后的所述待同步服务端为至少两个所述同步服务端中的同步服务端。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-5中任一项所述方法的步骤。
9.一种电子设备,其特征在于,包括:
权利要求8中所述的计算机可读存储介质;以及
一个或者多个处理器,用于执行所述计算机可读存储介质中的程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810517627.2A CN108809468B (zh) | 2018-05-25 | 2018-05-25 | 时间同步的方法、装置和存储介质以及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810517627.2A CN108809468B (zh) | 2018-05-25 | 2018-05-25 | 时间同步的方法、装置和存储介质以及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108809468A CN108809468A (zh) | 2018-11-13 |
CN108809468B true CN108809468B (zh) | 2020-11-10 |
Family
ID=64089165
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810517627.2A Active CN108809468B (zh) | 2018-05-25 | 2018-05-25 | 时间同步的方法、装置和存储介质以及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108809468B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010124930A1 (en) * | 2009-04-30 | 2010-11-04 | Nokia Siemens Networks Oy | Method and apparatus for providing quantization of synchronization signals |
CN103532786A (zh) * | 2013-10-22 | 2014-01-22 | 中国联合网络通信集团有限公司 | 一种服务器同步检测器及同步检测方法和系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101534551B (zh) * | 2009-03-25 | 2010-10-27 | 北京科技大学 | 一种基于车辆ad hoc网络拓扑结构的时间同步方法 |
-
2018
- 2018-05-25 CN CN201810517627.2A patent/CN108809468B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010124930A1 (en) * | 2009-04-30 | 2010-11-04 | Nokia Siemens Networks Oy | Method and apparatus for providing quantization of synchronization signals |
CN103532786A (zh) * | 2013-10-22 | 2014-01-22 | 中国联合网络通信集团有限公司 | 一种服务器同步检测器及同步检测方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN108809468A (zh) | 2018-11-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110311983B (zh) | 服务请求的处理方法、装置、系统、电子设备及存储介质 | |
CN107800565B (zh) | 巡检方法、装置、系统、计算机设备和存储介质 | |
CN110062426B (zh) | 通信方法、装置、计算机可读介质及电子设备 | |
CN111083228B (zh) | 标识号的生成方法、装置和电子设备 | |
CN110601978B (zh) | 流量分发控制方法和装置 | |
CN111478781B (zh) | 一种消息广播的方法和装置 | |
CN110913270B (zh) | 直播方法和装置 | |
CN112235378B (zh) | 数据更新方法、装置、存储介质及电子设备 | |
CN110795328A (zh) | 一种接口测试方法和装置 | |
CN108809468B (zh) | 时间同步的方法、装置和存储介质以及电子设备 | |
WO2015154459A1 (zh) | 订阅资源变更通知的方法及装置 | |
CN111161072A (zh) | 基于区块链的随机数生成方法、设备及存储介质 | |
CN113346974B (zh) | 用于时钟同步的方法、设备、通信系统和存储介质 | |
CN112257039B (zh) | 身份属性添加方法、装置和电子设备 | |
US11971798B2 (en) | Operation management apparatus, system, method, and non-transitory computer readable medium storing program | |
CN114398035A (zh) | 利用组件提供服务的方法、装置、设备和计算机可读介质 | |
CN114051024A (zh) | 文件后台续传方法、装置、存储介质及电子设备 | |
CN114979128A (zh) | 跨区域通信方法、装置及电子设备 | |
CN112817701A (zh) | 定时器处理方法、装置、电子设备和计算机可读介质 | |
CN110661857A (zh) | 一种数据同步方法和装置 | |
CN107995022B (zh) | 会话同步方法及装置、存储介质、电子设备 | |
CN116319322B (zh) | 电力设备节点通信连接方法、装置、设备和计算机介质 | |
CN112883697B (zh) | 工作流表单生成方法、装置、电子设备和计算机可读介质 | |
CN113472565B (zh) | 服务器功能的扩容方法、装置、设备和计算机可读介质 | |
CN114185688B (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 |