一种数据处理方法及系统的制作方法_2

文档序号:9581755阅读:来源:国知局
开,则判断该目标服务器是否存在缓存标识且该缓存标识是否在有效时间内,如果是,放弃请求与该目标服务器建立连接,避免了终端在服务器所延迟的预定时间内再次请求与服务器的连接,同时,避免了终端向服务器发送数据请求。可见,通过本方案,可以实现服务器在变更服务时,减少终端所请求数据的丢失,且使服务器可以平滑地变更服务。
[0029]当然,实施本发明的任一产品或方法必不一定需要同时达到以上所述的所有优点。
【附图说明】
[0030]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0031]图1为本发明实施例提供的一种数据处理方法的流程图;
[0032]图2为本发明实施例提供的另一种数据处理方法的流程图;
[0033]图3为本发明实施例提供的一种数据处理系统的结构示意图;
[0034]图4为本发明实施例提供的另一种数据处理系统的结构示意图。
【具体实施方式】
[0035]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0036]为了解决现有技术问题,本发明实施例分别从终端和服务器的角度提供了一种数据处理方法及系统。
[0037]首先,从终端的角度,本发明实施例提供了一种数据处理方法,如图1所示,该数据处理方法可以包括如下步骤:
[0038]SlOl:接收所连接的服务器发送的服务变更通知,其中,该服务变更通知为该服务器在变更服务之前向该终端发送的通知,并且,该服务器对变更服务的执行在该服务器监听到所连接的终端接收到该服务变更通知时延迟预定时间后;
[0039]其中,终端与服务器连接,当服务器要发生服务变更时,需要在变更服务之前向所连接的终端发送服务变更通知,而终端可以接收从服务器发送的服务变更通知,以便能够立刻得知服务器要执行的变更操作,从而在最短时间内做出应对服务器变更操作的响应,不存在仅依靠心跳检测检测连接状态存在的延时问题,从而减少数据丢失。另外,终端在接收到服务变更通知后的预定时间,服务器才执行服务变更操作,使得终端已发送的数据请求能够正常返回,进一步减少数据丢失。
[0040]需要说明的是,该变更服务可以包括但不局限于重启服务或关闭服务;另外,该服务器所延迟的预定时间可以根据实际情况进行设定,例如:10s、20s或30s,等等。
[0041]S102:为该服务器设置缓存标识,并设置该缓存标识的有效时间为该预定时间,同时从连接资源池中移除该服务器与该终端的连接;
[0042]其中,该连接资源池所存储的连接所对应的服务器为构建数据请求时所依据的服务器。
[0043]其中,终端在接收到服务器发送的服务变更通知后,立即做出应对服务器变更操作的响应,该响应包括:为服务器设置缓存标识,并且为缓存标识设置有效时间为预定时间,也就是说,在预定时间内,缓存标识有效,标识该服务器即将执行变更服务操作,方便终端对该服务器进行检测;并且,响应还包括从连接资源池中移除要执行变更操作的服务器与终端的连接,以便终端不再向该服务器发送数据请求,避免了在连接中断的情况下导致的数据丢失。
[0044]需要强调的是,与该终端所连接的服务器可以为至少一台,任意一台服务器在变更服务之前,均可以向该终端发送服务变更通知,相应的,该终端在接收到任意一台服务器发送的服务器变更通知后,均可以执行S101-S102。
[0045]S103:在对目标服务器的连接状态做心跳检测时,如果检测到与该目标服务器的连接断开,则判断该目标服务器是否存在缓存标识且该缓存标识是否在有效时间内,如果是,放弃请求与该目标服务器建立连接。
[0046]需要说明的是,终端会定时或不定时地向之前已经建立通信连接的至少一台服务器进行心跳检测,以避免对终端的数据请求的影响,而为了描述方便,将当前进行心跳检测的服务器作为目标服务器来进行后续的说明。
[0047]具体地,当在对目标服务器做心跳检测时,且检测到终端与目标服务器已经断开连接时,判断该目标服务器是否存在缓存标识,以及该缓存标识是否有效,如果判断结果为存在缓存标识且有效,则说明该目标服务器向终端发送过服务变更通知,且此时的服务器并未执行相应的变更操作,为避免数据丢失和连接资源的浪费,在预定时间内不向目标服务器发送新的连接请求。
[0048]更进一步的,在本发明的一个优选实施例中,如果判断出该目标服务器不存在缓存标识或存在缓存标识但该缓存标识未在有效时间内,请求与该目标服务器建立连接。可以理解的是,在该技术方案中,当不存在目标服务器的缓存标识,说明该目标服务器未向终端发送服务变更通知,此时,为了后续的数据请求的处理,可以向该目标服务器请求建立连接,而当判断出存在失效的缓存标识时,说明该目标服务器正在执行服务变更操作或已经执行服务变更操作完毕,此时,可以向该目标服务器请求连接,以尽快建立服务器与终端的通信,使得终端业务能够尽快恢复,提升用户体验。
[0049]更进一步的,在本发明的一个优选实施例中,在对所述目标服务器的连接状态做心跳检测时,如果检测到与所述目标服务器的连接断开,则判断所述目标服务器是否在预设注册中心内,如果是,继续执行判断该目标服务器是否存在缓存标识且该缓存标识是否在有效时间内的步骤。可以理解的是,在该技术方案中,当通过心跳检测检测到目标服务器与终端断开连接时,通过判断目标服务器是否在预设注册中心内,可以快速的判断目标服务器是否已经执行关闭服务操作,节省了判断时间,具体地,当目标服务器已经关闭时,该服务器在预设注册中心的注册信息被移除,且当服务器已经执行关闭服务时,不再向目标服务器请求连接,当判断目标服务器还在预设注册中心时,再执行判断目标服务器是否存在缓存标识且该缓存标识是否在有效时间内的步骤。
[0050]本发明实施例中,服务器在变更服务之前向所连接的终端发送的服务变更通知,并且,对变更服务的执行在所述服务器监听到所连接的所述终端接收到所述服务变更通知时延迟预定时间后,以给服务器对终端在接收到服务变更通知之前发送的数据请求的处理提供时间,提高了终端在接收到服务变更通知之前发送的数据请求的结果信息的反馈率;相应的,终端在接收到服务器发送的服务变更通知后,为服务器设
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1