掉线检测方法、服务器、电子设备及存储介质与流程

专利2024-04-19  5



1.本发明涉及网络技术领域,特别是涉及一种掉线检测方法、服务器、电子设备及存储介质。


背景技术:

2.随着网络科技的快速发展,视频会议、视频教学等双向通信在用户的生活、工作、学习等方面广泛普及。
3.以视频会议为例,视频会议,是指位于两个或多个地点的人,通过通信设备和网络,进行面对面交谈的会议。根据参会地点数目不同,视频会议可分为点对点会议和多点会议。
4.随着视频会议规模的不断增大,大型视频会议中通常包含多个会场。但是,现有技术中,在不同会场的服务器之间的级联因网络或者其他原因断连的情况下,无法及时检测到会场的服务器掉线。


技术实现要素:

5.鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种掉线检测方法、服务器、电子设备及存储介质。
6.第一方面,本发明实施例公开了一种掉线检测方法,应用于第一服务器,所述方法包括:
7.定时向第二服务器发送第一心跳信号;所述第一心跳信号用于触发所述第二服务器在接收到所述第一心跳信号时,向所述第一服务器发送第二心跳信号;
8.接收所述第二服务器发送的所述第二心跳信号;
9.在未接收到所述第二心跳信号时,基于预设的第一掉线条件判断所述第二服务器是否掉线。
10.可选地,所述第一心跳信号还用于指示所述第二服务器在未接收到所述第一心跳信号时,基于预设的第二掉线条件判断所述第二服务器是否掉线。
11.可选地,所述基于预设的第一掉线条件判断所述第二服务器是否掉线,包括:获取对所述第二心跳信号的第二统计信息;在判断出所述第二统计信息满足所述第一掉线条件的情况下,确定所述第二服务器掉线。
12.可选地,所述第二服务器为至少两个;所述定时向第二服务器发送第一心跳信号,包括:定时生成包含第二服务器标识的第一心跳信号,将所述第一心跳信号存入心跳池;利用预设心跳线程定时从所述心跳池中提取所述第一心跳信号,按照所述第二服务器标识,将所述第一心跳信号分发至对应的第二服务器。
13.第二方面,本发明实施例公开了一种掉线检测方法,应用于第二服务器,所述方法包括:
14.接收第一服务器定时发送的第一心跳信号;
15.在接收到所述第一心跳信号时,向所述第一服务器发送第二心跳信号;
16.在未接收到所述第一心跳信号时,基于预设的第二掉线条件判断所述第二服务器是否掉线。
17.可选地,所述第二心跳信号用于指示所述第一服务器在未接收到所述第二心跳信号时,基于预设的第一掉线条件判断所述第二服务器是否掉线。
18.第三方面,本发明实施例公开了一种服务器,所述服务器为第一服务器,所述第一服务器包括:
19.第一发送模块,用于定时向第二服务器发送第一心跳信号;所述第一心跳信号用于触发所述第二服务器在接收到所述第一心跳信号时,向所述第一服务器发送第二心跳信号;
20.第一接收模块,用于接收所述第二服务器发送的所述第二心跳信号;
21.第一判断模块,用于在所述第一接收模块未接收到所述第二心跳信号时,基于预设的第一掉线条件判断所述第二服务器是否掉线。
22.可选地,所述第一心跳信号还用于指示所述第二服务器在未接收到所述第一心跳信号时,基于预设的第二掉线条件判断所述第二服务器是否掉线。
23.可选地,所述第一判断模块,具体用于获取对所述第二心跳信号的第二统计信息;在判断出所述第二统计信息满足所述第二掉线条件的情况下,确定所述第二服务器掉线。
24.可选地,所述第二服务器为至少两个;所述第一发送模块,具体用于定时生成包含第二服务器标识的第一心跳信号,将所述第一心跳信号存入心跳池;利用预设心跳线程定时从所述心跳池中提取所述第一心跳信号,按照所述第二服务器标识,将所述第一心跳信号分发至对应的第二服务器。
25.第四方面,本发明实施例公开了一种服务器,其特征在于,所述服务器为第二服务器,所述第二服务器包括:
26.第二接收模块,用于接收第一服务器定时发送的第一心跳信号;
27.第二发送模块,用于在所述第二接收模块接收到所述第一心跳信号时,向所述第一服务器发送第二心跳信号;
28.第二判断模块,用于在所述第二接收模块未接收到所述第一心跳信号时,基于预设的第二掉线条件判断所述第二服务器是否掉线。
29.可选地,所述第二心跳信号用于指示所述第一服务器在未接收到所述第二心跳信号时,基于预设的第一掉线条件判断所述第二服务器是否掉线。
30.第五方面,本发明实施例公开了一种电子设备,包括:一个或多个处理器;和其上存储有指令的一个或多个机器可读介质;当所述指令由所述一个或多个处理器执行时,使得所述处理器执行如上任一项由第一服务器执行的掉线检测方法,或者,执行如上任一项由第二服务器执行的掉线检测方法。
31.第六方面,本发明实施例公开了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上任一项由第一服务器执行的掉线检测方法,或者,实现如上任一项由第二服务器执行的掉线检测方法。
32.本发明实施例中,第一服务器定时向第二服务器发送第一心跳信号;第二服务器在接收到所述第一心跳信号时,向第一服务器发送第二心跳信号;第一服务器接收所述第
二服务器发送的所述第二心跳信号,在未接收到所述第二心跳信号时,基于预设的第一掉线条件判断所述第二服务器是否掉线。由此可知,本发明实施例中,第一服务器和第二服务器均向对方发送心跳信号,心跳信号为双向发送,因此第一服务器可以根据第二服务器发送的心跳信号检测第二服务器是否掉线,从而能够更加及时、准确地检测第二服务器是否掉线。
附图说明
33.图1是本发明实施例的一种系统架构的示意图。
34.图2是本发明实施例的一种掉线检测方法的步骤流程图。
35.图3是本发明实施例的另一种掉线检测方法的步骤流程图。
36.图4是本发明实施例的另一种系统架构的示意图。
37.图5是本发明实施例的再一种掉线检测方法的步骤流程图。
38.图6是本发明实施例的一种第一服务器的结构框图。
39.图7是本发明实施例的一种第二服务器的结构框图。
具体实施方式
40.为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
41.参照图1,示出了本发明实施例的一种系统架构的示意图。如图1所示,视频会议中包含第一服务器和第二服务器,第一服务器和第二服务器可以进行双向通信。在第一服务器和第二服务器之间增加双向的心跳信号,也即第一服务器向第二服务器发送心跳信号,第二服务器也向第一服务器发送心跳信号,从而使第一服务器和第二服务器均可以根据对方发送的心跳信号检测第二服务器是否掉线。
42.下面,通过以下各实施例对本发明实施例中的掉线检测方法进行详细说明。
43.参照图2,示出了本发明实施例的一种掉线检测方法的步骤流程图。本发明实施例的掉线检测方法可以应用于第一服务器中。
44.如图2所示,掉线检测方法可以包括以下步骤:
45.步骤201,第一服务器定时向第二服务器发送第一心跳信号。
46.当视频会议开始后,第一服务器作为心跳信号的发起端,定时向第二服务器发送第一心跳信号。对于第一心跳信号发送的时间间隔,可以根据实际经验进行设置,本实施例对此不作限制。比如,时间间隔可以设置为3秒、5秒,等等。
47.在一种可选实施方式中,考虑到第一服务器可以与至少两个第二服务器进行视频会议,所以第一服务器收发心跳信号的频率很高,因此,为了便于对心跳信号进行统一管理,降低对第一服务器中其他业务产生的影响,可以在第一服务器中设置单独的心跳线程,利用该心跳线程统一管理心跳信号。
48.该种方式下,第一服务器可以定时生成第一心跳信号,并将所述第一心跳信号存入心跳池(心跳map)。示例性地,第一心跳信号可以包括但不限于:第一服务器标识(第一心跳信号的发送端)、第二服务器标识(第一心跳信号的目的端)、信号类型(心跳信号),等等。其中,标识可以是能够唯一表示服务器的信息,比如id、mac(media access control,媒体
访问控制)地址,等等。
49.利用上述心跳线程定时扫描心跳池,从所述心跳池中提取所述第一心跳信号,对提取的第一心跳信号进行解析,得到其中包含的第二服务器标识,心跳线程按照该第二服务器标识,将所述第一心跳信号分发至该第二服务器标识对应的第二服务器。
50.第一心跳信号用于触发第二服务器在接收到所述第一心跳信号时,向第一服务器发送第二心跳信号。因此,针对任意一个第二服务器,该第二服务器在接收到第一服务器发送的第一心跳信号时,才会向所述第一服务器发送第二心跳信号,在未接收到第一服务器发送的第一心跳信号时,不会向所述第一服务器发送第二心跳信号。示例性地,第二心跳信号可以包括但不限于:第二服务器标识(第二心跳信号的发送端)、第一服务器标识(第二心跳信号的目的端)、信号类型(心跳信号),等等。
51.步骤202,第一服务器接收所述第二服务器发送的第二心跳信号。
52.第一服务器在接收到一个第二心跳信号后,对接收到的第二心跳信号进行解析,得到其中包含的第二服务器标识,即可得知该第二心跳信号是由哪个第二服务器发送的。
53.步骤203,第一服务器在未接收到所述第二心跳信号时,基于预设的第一掉线条件判断所述第二服务器是否掉线。
54.针对任意一个第二服务器,第一服务器在未接收到该第二服务器发送的第二心跳信号时,可以基于预设的第一掉线条件判断该第二服务器是否掉线。
55.示例性地,基于预设的第一掉线条件判断所述第二服务器是否掉线的过程,可以包括:获取对所述第二心跳信号的第二统计信息;在判断出所述第二统计信息满足所述第一掉线条件的情况下,确定所述第二服务器掉线。
56.可选地,此处第一服务器判断第二服务器是否掉线的过程,可以利用上述第一服务器中的心跳线程执行。
57.在一种可选实施方式中,对第二心跳信号的第二统计信息可以为,未接收到该第二服务器发送的第二心跳信号的已持续时长,该已持续时长可以为最后一次发送给该第二服务器的第一心跳信号的发送时间点到当前时间点的第一时长。第一掉线条件可以为,对第二心跳信号的第二统计信息超过第一时长阈值。
58.该种情况下,针对任意一个第二服务器,第一服务器在未接收到该第二服务器发送的第二心跳信号时,可以统计最后一次发送给该第二服务器的第一心跳信号的发送时间点到当前时间点的第一时长,如果在该第一时长超过第一时长阈值后还未接收到该第二服务器发送的第二心跳信号,则第一服务器可以确定该第二服务器掉线。对于上述第一时长阈值,可以根据实际经验进行设置,本实施例对此不作限制。比如,第一时长阈值可以设置为30秒、1分钟,等等。
59.在另一种可选实施方式中,对第二心跳信号的第二统计信息可以为,未接收到该第二服务器发送的第二心跳信号的已连续次数。第一掉线条件可以为,对第二心跳信号的第二统计信息超过预设次数。
60.针对任意一个第二服务器,第一服务器可以针对该第二服务器设置第一心跳序列值local_heart_seq和第二心跳序列值rec_heart_seq。其中,第一心跳序列值用于指示第一服务器已向该第二服务器发送的第一心跳信号的次数,第二心跳序列值用于指示第一服务器已接收到该第二服务器发送的第二心跳信号的次数。第一服务器在每次生成该第二服
务器对应的第一心跳信号时,将第一心跳序列值加1,并且可以在发送给该第二服务器的第一心跳信号中添加该第一心跳序列值。第一服务器在每次接收到该第二服务器发送的第二心跳信号时,将第二心跳序列值加1。
61.该种方式下,针对任意一个第二服务器,第一服务器在未接收到该第二服务器发送的第二心跳信号时,可以计算第一心跳序列值和第二心跳序列值之间的差值,该差值用于指示第一服务器未接收到该第二服务器返回的第二心跳信号的已连续次数。因此,如果该差值超过预设次数,则第一服务器可以确定该第二服务器掉线。对于上述预设次数,可以根据实际经验进行设置,本实施例对此不作限制。比如,预设次数可以设置为4、5、6,等等。
62.针对任意一个第二服务器,第一服务器在接收到该第二服务器发送的第二心跳信号时,可以继续执行上述步骤201。
63.本发明实施例中,第一服务器和第二服务器均向对方发送心跳信号,心跳信号为双向发送,因此第一服务器可以根据第二服务器发送的心跳信号检测第二服务器是否掉线,从而能够更加及时、准确地检测第二服务器是否掉线。
64.参照图3,示出了本发明实施例的另一种掉线检测方法的步骤流程图。本发明实施例的掉线检测方法可以应用于第二服务器中。
65.如图3所示,掉线检测方法可以包括以下步骤:
66.步骤301,第二服务器接收第一服务器定时发送的第一心跳信号。
67.步骤302,第二服务器在接收到所述第一心跳信号时,向所述第一服务器发送第二心跳信号。
68.第二服务器在接收到第一服务器发送的第一心跳信号后,对第一心跳信号进行解析,得到其中包含的第二服务器标识,在验证出该第二服务器标识是第二服务器自身的标识后,可以生成第二心跳信号,并向第一服务器返回该第二心跳信号。示例性地,第二心跳信号可以包括但不限于:第二服务器标识(第二心跳信号的发送端)、第一服务器标识(第二心跳信号的目的端)、信号类型(心跳信号),等等。
69.在一种可选实施方式中,考虑到第二服务器收发心跳信号的频率较高,与上述第一服务器类似,可以在第二服务器中设置单独的心跳线程,利用该心跳线程统一管理心跳信号。该种方式下,上述第二服务器解析第一心跳信号,以及生成并发送第二心跳信号的过程利用该心跳线程执行。
70.步骤303,第二服务器在未接收到所述第一心跳信号时,基于预设的第二掉线条件判断所述第二服务器是否掉线。
71.第二服务器在未接收到第一服务器发送的第一心跳信号时,可以基于预设的第二掉线条件判断该第二服务器自身是否掉线。
72.示例性地,基于预设的第二掉线条件判断所述第二服务器是否掉线的过程,可以包括:获取对所述第一心跳信号的第一统计信息;在判断出所述第一统计信息满足所述第二掉线条件的情况下,确定所述第二服务器掉线。
73.可选地,此处第二服务器判断第二服务器是否掉线的过程,可以利用上述第二服务器中的心跳线程执行。
74.在一种可选实施方式中,对第一心跳信号的第一统计信息可以为,未接收到第一服务器发送的第一心跳信号的已持续时长,该已持续时长可以为最后一次接收到第一服务
器发送的第一心跳信号的接收时间点到当前时间点的第二时长。第二掉线条件可以为,对第一心跳信号的第二统计信息超过第二时长阈值。
75.该种情况下,第二服务器在未接收到第一服务器发送的第一心跳信号时,可以统计最后一次接收到第一服务器发送的第一心跳信号的接收时间点到当前时间点的第二时长,如果在该第二时长超过第二时长阈值后还未接收到第一服务器发送的下一个第一心跳信号,则第二服务器可以确定自身掉线。对于上述第二时长阈值,可以根据实际经验进行设置,本实施例对此不作限制。比如,第二时长阈值可以设置为30秒、1分钟,等等。
76.本发明实施例中,第一服务器和第二服务器均向对方发送心跳信号,心跳信号为双向发送,因此第二服务器均可以根据第一服务器发送的心跳信号检测第二服务器是否掉线,从而能够更加及时、准确地检测第二服务器是否掉线。
77.下面,从第一服务器和第二服务器的整体交互角度,说明本发明实施例的掉线检测方法。
78.本发明实施例的掉线检测方法可以应用于视频会议中。其中,视频会议可以为互联网中的视频会议,也可以为视联网中的视频会议。
79.在大型视频会议中,通常包含多个会场。其中,各会场由各自对应的服务器控制,各服务器之间可以通过ip(internet protocol,网络协议)级联的方式进行通信,具体可以通过socket(套接字)方式进行信息共享。
80.以下,将以视联网中的视频会议为例进行说明。
81.视联网是一种基于以太网硬件实时高速传输网络,用于传输高清视频及专用协议的专用网络。视联网中的视频会议涉及到以下部分。
82.跨自治会议:每个自治服务器对应一个会管服务器,当拉多个自治服务器下的终端开会时,即开启跨自治会议。其原理是主自治服务器下的主会场的主会管服务器拉本自治服务器的终端开会,通过ip级联方式发送分自治服务器的终端信息给分会场的分会管服务器,以便拉分会场会议,各个会场之间通过socket进行信息共享,实现跨自治会议功能。
83.会管服务器:也即会议管理调度系统,负责会议控制逻辑处理。该系统分为两部分:会管web(前端页面)和会管调度(后台程序,也即会管服务器)。会管web为java程序,用于展示当前在开会议的会议状态,用户管理、预约管理等功能;会管调度为c++程序,负责会议的控制管理,与自治服务器交互控制信令,实现开会/停会,发言人切换,动态增删参会方等一系列会议业务操作。
84.自治服务器:通过视联网协议,控制视联网核心服务器进行拉会、控会等会议业务操作的程序。
85.会控软件:安装于pc(personal computer,个人计算机)端基于视联网的会议控制管理软件,操作员通过该会控软件来点击开会、停会、切换发言人等一系列会议操作,由会控软件将对应的视联网指令发送给会管调度。
86.在视联网的跨自治会议中,如果主会场和分会场的级联链接网络或者其他原因断连了,则分会会场的分会管服务器掉线,导致分会场的会议会失去控制,造成分会场的参会终端无法退出跨自治会议的情况。本发明实施例中针对该种情况,提出主会场的主会管服务器和分会场的分会管服务器之间进行双向的会议心跳信号(该会议心跳信号即为上述实施例中的心跳信号)交互,以便更加及时地判断出分会场的分会管服务器是否掉线,进而及
时释放分会场的参会终端,使其可以退出跨自治会议,避免会议失控。
87.本实施例中,主会管服务器作为第一服务器,分会管服务器作为第二服务器。
88.参照图4,示出了本发明实施例的另一种系统架构的示意图。如图4所示,视频会议中包含主会管服务器和多个分会管服务器,主会管服务器和各分会管服务器可以进行双向通信。主会管服务器与主自治服务器连接,各分会管服务器分别与分自治服务器连接。
89.在主会管服务器和各分会管服务器之间设置连接心跳信号,该连接心跳信号用于维持主会管服务器和分会管服务器之间的连接,基于该连接心跳信号无法定位视频会议。但是,由于主会管服务器和分会管服务器之间可能存在多个视频会议,因此,在主会管服务器和各分会管服务器之间还增加双向的会议心跳信号(该会议心跳信号即为上述实施例中的心跳信号),该会议心跳信号对应于视频会议,也即一个跨自治视频会议维护一个双向的会议心跳信号。
90.参照图5,示出了本发明实施例的再一种掉线检测方法的步骤流程图。
91.如图5所示,掉线检测方法可以包括以下步骤:
92.步骤501,主会管服务器定时向分会管服务器发送第一会议心跳信号(该第一会议心跳信号即为上述实施例中的第一心跳信号)。
93.本实施例中,考虑到主会管服务器和分会管服务器之间可能存在多个视频会议,因此,主会管服务器针对任意一个分会管服务器,可以获取该分会管服务器与该主会管服务器之间正在进行的视频会议的会议全局标识,并将该会议全局标识添加至发送给该分会管服务器的第一会议心跳信号中。其中,会议全局标识用于唯一标识一个视频会议。
94.因此,本实施例中,第一会议心跳信号可以包括但不限于:主会管服务器标识(第一会议心跳信号的发送端)、分会管服务器标识(第一会议心跳信号的目的端)、会议全局标识、信号类型(会议心跳信号),等等。其中,主会管服务器标识可以为主会管服务器自治前缀,分会管服务器标识可以为分会管服务器自治前缀等。
95.步骤502,分会管服务器接收主会管服务器定时发送的第一会议心跳信号。
96.步骤503,分会管服务器是否接收到第一会议心跳信号。若是,则执行步骤504;若否,则执行步骤509。
97.步骤504,分会管服务器在接收到所述第一会议心跳信号时,向所述主会管服务器发送第二会议心跳信号(该第二会议心跳信号即为上述实施例中的第二心跳信号)。
98.与上述第一会议心跳信号类似,本实施例中,第二会议心跳信号可以包括但不限于:分会管服务器标识(第二会议心跳信号的发送端)、主会管服务器标识(第二会议心跳信号的目的端)、会议全局标识、信号类型(会议心跳信号),等等。
99.步骤505,主会管服务器接收所述分会管服务器发送的第二会议心跳信号。
100.步骤506,主会管服务器是否接收到第二会议心跳信号。若否,则执行步骤507;若否,则返回步骤501。
101.步骤507,主会管服务器在未接收到所述第二会议心跳信号时,基于预设的第一掉线条件判断所述分会管服务器是否掉线。若是,则执行步骤508;若否,则返回步骤501。
102.步骤508,主会管服务器响应于所述分会管服务器掉线,基于所述会议全局标识,释放所述分会管服务器下加入所述会议全局标识对应会议的参会终端。
103.主会管服务器在判断出某个分会管服务器掉线后,获取该分会管服务器对应的会
议全局标识。示例性地,该全局会议标识可以从发送给该分会管服务器的第一会议心跳信号中得到,也可以从接收到的该分会管服务器发送的第二会议心跳信号中得到。主会管服务器在判断出该会议全局标识对应的会议为开会状态的情况下,可以释放该分会管服务器下,加入所述会议全局标识对应会议的参会终端。因此,能够保证在主会管服务器和分会管服务器之间的级联出现异常时,分会场的终端能够顺利退出视频会议,避免分会场失控。
104.在一种可选实施方式中,由于主会管服务器和该分会管服务器之间的连接断开,导致主会管服务器无法再与该分会管服务器进行通信,因此,可以基于主会管服务器连接的主自治服务器,与该分会管服务器连接的分自治服务器之间进行通信,达到释放该分会管服务器下加入该会议全局标识对应会议的参会终端的目的。
105.该种情况下,主会管服务器生成会议停止指令,并向自身连接的主自治服务器发送该会议停止指令。示例性地,会议停止指令中可以包括但不限于:上述会议全局标识、主会管服务器标识、分会管服务器标识、分会管服务器连接的分自治服务器标识(分自治服务器标识可以为分自治服务器的视联网号码),等等。
106.主自治服务器接收到会议停止指令后,通过视联网将该会议停止指令发送至视联网核心服务器。
107.视联网核心服务器基于该会议停止指令中包含的分会管服务器标识、分会管服务器连接的分自治服务器标识等信息,将该会议停止指令转发至该分会管服务器连接的分自治服务器。
108.分自治服务器在接收到该会议停止指令后,基于该会议停止指令中包含的会议全局标识,释放该分会管服务器下加入所述会议全局标识对应会议的参会终端。
109.步骤509,分会管服务器在未接收到所述第一会议心跳信号时,基于预设的第二掉线条件判断所述分会管服务器是否掉线。若是,则执行步骤510;若否,则返回步骤502。
110.步骤510,分会管服务器响应于所述分会管服务器掉线,基于所述会议全局标识,释放所述分会管服务器下加入所述会议全局标识对应会议的参会终端。
111.分会管服务器在判断出自身掉线后,获取自身对应的会议全局标识。示例性地,该全局会议标识可以从接收到的主会管服务器发送的第一会议心跳信号中得到。分会管服务器在判断出该会议全局标识对应的会议为开会状态的情况下,可以释放该分会管服务器下,加入所述会议全局标识对应会议的参会终端。因此,能够保证在主会管服务器和分会管服务器之间的级联出现异常时,分会场的终端能够顺利退出视频会议,避免分会场失控。
112.在一种可选实施方式中,分会管服务器生成会议停止指令,并向自身连接的分自治服务器发送该会议停止指令。示例性地,会议停止指令中可以包括但不限于:上述会议全局标识、分会管服务器标识,等等。
113.分自治服务器接收到会议停止指令后,基于该会议停止指令中包含的会议全局标识,释放该分会管服务器下加入所述会议全局标识对应会议的参会终端。
114.在一种可选实施方式中,在跨自治会议中,主会管服务器可以统一管理各分会管服务器下的参会终端,并且能够自主获取到参会终端的参会状态。例如,主会管服务器可以维护当前跨自治会议的参会终端列表,该列表中可以包括参会终端的参会状态等信息,参会状态可以包括正在参会、退会等。当某个参会终端退会后,主会管服务器自主获取到该参会终端的退会状态,则会更新列表中该参会终端的参会状态。
115.因此,当分会管服务器判断出自身掉线,并释放其下加入会议的参会终端后,主会管服务器可以获取到该分会管服务器释放的参会终端的退会状态,并且主会管服务器也可以判断出该分会管服务器掉线,因此主会管服务器即可确定是由于该分会管服务器掉线导致这些参会终端退会,从而准确获知会议状况,便于对会议进行管理。
116.本发明实施例中,第一服务器和第二服务器均向对方发送心跳信号,心跳信号为双向发送,因此第一服务器和第二服务器均可以根据对方发送的心跳信号检测第二服务器是否掉线,从而能够更加及时、准确地检测第二服务器是否掉线。
117.在本发明的实施例中,还提供了一种服务器,该服务器作为第一服务器。
118.参照图6,示出了本发明实施例的一种第一服务器的结构框图。
119.如图6所示,第一服务器可以包括以下模块:
120.第一发送模块601,用于定时向第二服务器发送第一心跳信号;所述第一心跳信号用于触发所述第二服务器在接收到所述第一心跳信号时,向所述第一服务器发送第二心跳信号;
121.第一接收模块602,用于接收所述第二服务器发送的所述第二心跳信号;
122.第一判断模块603,用于在所述第一接收模块未接收到所述第二心跳信号时,基于预设的第一掉线条件判断所述第二服务器是否掉线。
123.可选地,所述第一心跳信号还用于指示所述第二服务器在未接收到所述第一心跳信号时,基于预设的第二掉线条件判断所述第二服务器是否掉线。
124.可选地,所述第一判断模块603,具体用于获取对所述第二心跳信号的第二统计信息;在判断出所述第二统计信息满足所述第二掉线条件的情况下,确定所述第二服务器掉线。
125.可选地,所述第二服务器为至少两个;所述第一发送模块601,具体用于定时生成包含第二服务器标识的第一心跳信号,将所述第一心跳信号存入心跳池;利用预设心跳线程定时从所述心跳池中提取所述第一心跳信号,按照所述第二服务器标识,将所述第一心跳信号分发至对应的第二服务器。
126.在本发明的实施例中,还提供了一种服务器,该服务器作为第二服务器。
127.参照图7,示出了本发明实施例的一种第二服务器的结构框图。
128.如图7所示,第二服务器可以包括以下模块:
129.第二接收模块701,用于接收第一服务器定时发送的第一心跳信号;
130.第二发送模块702,用于在所述第二接收模块接收到所述第一心跳信号时,向所述第一服务器发送第二心跳信号;
131.第二判断模块703,用于在所述第二接收模块未接收到所述第一心跳信号时,基于预设的第二掉线条件判断所述第二服务器是否掉线。
132.可选地,所述第二心跳信号用于指示所述第一服务器在未接收到所述第二心跳信号时,基于预设的第一掉线条件判断所述第二服务器是否掉线。
133.本发明实施例中,第一服务器和第二服务器均向对方发送心跳信号,心跳信号为双向发送,因此第一服务器和第二服务器均可以根据对方发送的心跳信号检测第二服务器是否掉线,从而能够更加及时、准确地检测第二服务器是否掉线。
134.对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关
之处参见方法实施例的部分说明即可。
135.在本发明的实施例中,还提供了一种电子设备。该电子设备可以包括一个或多个处理器,以及其上存储有指令的一个或多个机器可读介质,指令例如应用程序。当所述指令由所述一个或多个处理器执行时,使得所述处理器执行如上任一项由第一服务器执行的掉线检测方法,或者,执行如上任一项由第二服务器执行的掉线检测方法。
136.在本发明的实施例中,还提供了一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序可由电子设备的处理器执行,以实现如上任一项由第一服务器执行的掉线检测方法,或者,实现如上任一项由第二服务器执行的掉线检测方法。例如,所述非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。
137.本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
138.本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
139.本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
140.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
141.这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
142.尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
143.最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包
括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
144.以上对本发明所提供的一种掉线检测方法、服务器、电子设备及存储介质,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

技术特征:
1.一种掉线检测方法,其特征在于,应用于第一服务器,所述方法包括:定时向第二服务器发送第一心跳信号;所述第一心跳信号用于触发所述第二服务器在接收到所述第一心跳信号时,向所述第一服务器发送第二心跳信号;接收所述第二服务器发送的所述第二心跳信号;在未接收到所述第二心跳信号时,基于预设的第一掉线条件判断所述第二服务器是否掉线。2.根据权利要求1所述的方法,其特征在于,所述第一心跳信号还用于指示所述第二服务器在未接收到所述第一心跳信号时,基于预设的第二掉线条件判断所述第二服务器是否掉线。3.根据权利要求1所述的方法,其特征在于,所述基于预设的第一掉线条件判断所述第二服务器是否掉线,包括:获取对所述第二心跳信号的第二统计信息;在判断出所述第二统计信息满足所述第一掉线条件的情况下,确定所述第二服务器掉线。4.根据权利要求1所述的方法,其特征在于,所述第二服务器为至少两个;所述定时向第二服务器发送第一心跳信号,包括:定时生成包含第二服务器标识的第一心跳信号,将所述第一心跳信号存入心跳池;利用预设心跳线程定时从所述心跳池中提取所述第一心跳信号,按照所述第二服务器标识,将所述第一心跳信号分发至对应的第二服务器。5.一种掉线检测方法,其特征在于,应用于第二服务器,所述方法包括:接收第一服务器定时发送的第一心跳信号;在接收到所述第一心跳信号时,向所述第一服务器发送第二心跳信号;在未接收到所述第一心跳信号时,基于预设的第二掉线条件判断所述第二服务器是否掉线。6.根据权利要求5所述的方法,其特征在于,所述第二心跳信号用于指示所述第一服务器在未接收到所述第二心跳信号时,基于预设的第一掉线条件判断所述第二服务器是否掉线。7.一种服务器,其特征在于,所述服务器为第一服务器,所述第一服务器包括:第一发送模块,用于定时向第二服务器发送第一心跳信号;所述第一心跳信号用于触发所述第二服务器在接收到所述第一心跳信号时,向所述第一服务器发送第二心跳信号;第一接收模块,用于接收所述第二服务器发送的所述第二心跳信号;第一判断模块,用于在所述第一接收模块未接收到所述第二心跳信号时,基于预设的第一掉线条件判断所述第二服务器是否掉线。8.一种服务器,其特征在于,所述服务器为第二服务器,所述第二服务器包括:第二接收模块,用于接收第一服务器定时发送的第一心跳信号;第二发送模块,用于在所述第二接收模块接收到所述第一心跳信号时,向所述第一服务器发送第二心跳信号;第二判断模块,用于在所述第二接收模块未接收到所述第一心跳信号时,基于预设的第二掉线条件判断所述第二服务器是否掉线。
9.一种电子设备,其特征在于,包括:一个或多个处理器;和其上存储有指令的一个或多个机器可读介质;当所述指令由所述一个或多个处理器执行时,使得所述处理器执行如权利要求1至4任一项所述的掉线检测方法,或者,执行如权利要求5至6任一项所述的掉线检测方法。10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,该程序被处理器执行时实现如权利要求1至4任一项所述的掉线检测方法,或者,实现如权利要求5至6任一项所述的掉线检测方法。

技术总结
本发明提供了一种掉线检测方法、服务器、电子设备及存储介质。其中,掉线检测方法包括:第一服务器定时向第二服务器发送第一心跳信号;第二服务器在接收到所述第一心跳信号时,向所述第一服务器发送第二心跳信号;第一服务器接收所述第二服务器发送的所述第二心跳信号;第一服务器在未接收到所述第二心跳信号时,基于预设的第一掉线条件判断所述第二服务器是否掉线。本发明实施例中,心跳信号为双向发送,因此第一服务器可以根据第二服务器发送的心跳信号检测第二服务器是否掉线,从而能够更加及时、准确地检测第二服务器是否掉线。准确地检测第二服务器是否掉线。准确地检测第二服务器是否掉线。


技术研发人员:赵志 陈鑫 亓娜 杨春晖
受保护的技术使用者:海南乾唐视联信息技术有限公司
技术研发日:2022.07.11
技术公布日:2022/11/1
转载请注明原文地址: http://tieba.8miu.com/read-7870.html

最新回复(0)