一种数据更新方法、数据更新系统、服务器及存储介质技术方案

技术编号:23161630 阅读:22 留言:0更新日期:2020-01-21 21:58
本申请公开了一种数据更新方法、服务器及存储介质,该数据更新方法应用于第一服务器,第一服务器和第二服务器均用于对各自的数据库进行更新,和对终端设备发送的任务请求进行任务处理。方法包括:第一服务器对数据库需要进行更新时,向第二服务器发送更新开始消息,使得第二服务器保持任务处理状态;进入数据更新状态,对第一服务器的数据库进行更新;第一服务器的数据库完成更新时,向第二服务器发送更新完成消息,使得第二服务器进入数据更新状态;进入任务处理状态,对接收到的任务请求进行任务处理。可见,本申请通过两个服务器进行数据交替更新来实现不中断服务更新服务器。

A data update method, data update system, server and storage medium

【技术实现步骤摘要】
一种数据更新方法、数据更新系统、服务器及存储介质
本申请涉及服务器数据处理
,尤其涉及一种数据更新方法、数据更新系统、服务器及存储介质。
技术介绍
服务器在服务的过程中可能需要对本地的数据库中的数据进行数据更新。由于服务器计算力限制,服务器无法在运行服务的同时进行数据更新,必须要停下服务来进行数据更新,再对服务器进行重启以完成更新。但是服务器在数据更新期间会接收不到用户的任务请求,更无法对用户的任务请求进行处理,从而导致服务器的服务中断,任务处理效率变低。于是目前还缺少一种不会中断服务的数据更新方法。
技术实现思路
本申请实施例提供了一种数据更新方法,可以保障服务器不中断服务进行数据更新。第一方面,本申请实施例提供了一种数据更新方法,应用于第一服务器,所述第一服务器和第二服务器均用于对各自的数据库进行更新,和对终端设备发送的任务请求进行任务处理,该方法包括:所述第一服务器的数据库需要进行更新时,向所述第二服务器发送更新开始消息,使得所述第二服务器保持任务处理状态;进入数据更新状态,对所述第一服务器的数据库进行更新;所述第一服务器的数据库完成更新时,向所述第二服务器发送更新完成消息,使得所述第二服务器进入所述数据更新状态;进入所述任务处理状态,对接收到的任务请求进行任务处理。第二方面,本申请另一实施例提供了一种数据更新系统,所述数据更新系统包括第一服务器和第二服务器,具体的:第一服务器,用于所述第一服务器的数据库需要进行更新时,向所述第二服务器发送更新开始消息;第二服务器,用于在接收到所述第一服务器发送的更新开始消息之后,保持任务处理状态;所述第一服务器,还用于进入数据更新状态,对所述第一服务器的数据库进行更新;所诉第一服务器,还用于所述第一服务器的数据库完成更新时,向所述第二服务器发送更新完成消息;所述第二服务器,还用于在接收到第一服务器发送的更新完成消息之后,进入所述数据更新状态;所述第一服务器,还用于进入所述任务处理状态,对接收到的任务请求进行任务处理。第三方面,本申请另一实施例提供了一种服务器,该服务器对应于上述第一服务器,包括用于实现上述第一服务器的功能的单元,具体的:确定单元,用于确定是否需要对所述第一服务器的数据库进行更新;发送单元,用于所述第一服务器的数据库需要进行更新时,向所述第二服务器发送更新开始消息,使得所述第二服务器保持任务处理状态;更新单元,用于进入数据更新状态,对所述第一服务器的数据库进行更新;所述发送单元,还用于在所述第一服务器的数据库完成更新时,向所述第二服务器发送更新完成消息,使得所述第二服务器进入所述数据更新状态;处理单元,用于进入所述任务处理状态,对接收到的任务请求进行任务处理。第四方面,本申请另一实施例提供了一种服务器,该服务器包括处理器和存储器,所述处理器和存储器相互连接,其中,所述存储器用于存储支持终端设备执行上述测试方法的计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,用以执行上述第一方面的测试方法。第四方面,本申请实施例提供了一种计算机可读存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令被处理器执行,用以执行上述第一方面的方法在本申请中,当第一服务器进行数据更新时,第二服务器进行任务处理;当第一服务器进行任务处理时,第二服务器进行数据更新。第一服务器和第二服务器对各自的数据库进行交替更新。因此在第一服务器和第二服务器进行交替更新的过程中的任意时刻,都至少有一个服务器处于任务处理状态,以接收和处理用户的任务请求。可见,本申请提供的数据更新方法可以保障服务器不中断服务进行数据更新。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。图1是本专利技术实施例提供的一种数据更新方法的应用场景图;图2是本申请实施例提供的一种服务器之间的消息传递示意图;图3是本申请实施例提供的一种离线任务处理界面的示意图;图4是本申请实施例提供的一种数据更新方法的示意流程图;图5是本申请实施例提供的一种服务器的示意性框图;图6是本申请实施例提供的一种服务器的结构性框图。具体实施方式为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施例的技术方案进行描述。本申请提供了一种应用于服务器的数据更新方法,服务器通过实施该数据更新方法,可以在进行数据更新的同时不中断服务。本申请主要应用于服务器,该服务器可以是传统服务器或者本申请第二实施例和第三实施例所描述的服务器,本申请对此不做限制。服务器与终端设备等其他设备进行数据交互的时候,服务器和终端设备之间按照预设格式对数据的特性进行记录并传送,并能对接收到的预设格式的数据进行相应的解析等处理,其中,数据的特性包括时间、地点、类型等。其中,本申请中的服务器为可以提供计算服务的设备,能够响应服务请求并进行处理,具备承担服务并且保障服务的能力。其中,服务器可以是文件服务器、数据库服务器、应用程序服务器、WEB服务器等。本申请中的终端设备包括但不限于诸如具有触摸敏感表面(例如,触摸屏显示器和/或触摸板)的移动电话、膝上型计算机或平板计算机之类的其它便携式设备,本申请对此不作限定。一般来说,服务器为了进行数据更新,往往需要先中断正在进行的服务,然后进行数据更新。为了不中断服务,可以设置一个备用的服务器来作为临时服务器,用于在主服务器数据更新时临时进行任务处理。临时服务器在主服务器开始数据更新之前,将主服务器中的数据全部备份过来;然后在主服务器数据更新时,代替主服务器进行任务处理;最后临时服务器在主服务器完成数据更新之后,将临时服务器在任务处理过程中产生的新的数据传回到主服务器中。可见,该方法中存在多次数据搬移,在需要搬移的数据量较大的情况下,数据搬移会花费较多的时间,且多次数据搬移也容易造成数据出错,反而降低服务器的数据更新效率。为了解决以上问题,本申请提供了一种不会中断服务且高效的数据更新方法,该数据更新方法可以应用于服务器,以将该方法应用于第一服务器和第二服务器为例对该方法进行解释说明。如图1所示的通信系统构架包括第一服务器、第二服务器以及终端设备。第一服务器、第二服务器以及终端设备可以通过有线或者无线的方式进行通信,第一服务器和第二服务器之间具体可以通过redis队列进行通信。第一服务器和第二服务器可以但不局限于提供任务处理服务,以及对各自的数据库进行数据更新。第一服务器与第二服务器本质上是一样的服务器,可以实现彼此的功能。终端设备可以向第一服务器和第二服务器中的任意服务器发送任务请求,以获得相应的服务。本申请对任务请求所指示的具体任务不作限定,该任务请求可以用于指示服务器执行离线任务,也可以用于指示服务器执行在线任务本文档来自技高网...

【技术保护点】
1.一种应用于服务器的数据更新方法,其特征在于,应用于第一服务器,所述第一服务器和第二服务器均用于对各自的数据库进行更新,和对终端设备发送的任务请求进行任务处理,包括:/n所述第一服务器的数据库需要进行更新时,向所述第二服务器发送更新开始消息,使得所述第二服务器保持任务处理状态;/n进入数据更新状态,对所述第一服务器的数据库进行更新;/n所述第一服务器的数据库完成更新时,向所述第二服务器发送更新完成消息,使得所述第二服务器进入所述数据更新状态;/n进入所述任务处理状态,对接收到的任务请求进行任务处理。/n

【技术特征摘要】
1.一种应用于服务器的数据更新方法,其特征在于,应用于第一服务器,所述第一服务器和第二服务器均用于对各自的数据库进行更新,和对终端设备发送的任务请求进行任务处理,包括:
所述第一服务器的数据库需要进行更新时,向所述第二服务器发送更新开始消息,使得所述第二服务器保持任务处理状态;
进入数据更新状态,对所述第一服务器的数据库进行更新;
所述第一服务器的数据库完成更新时,向所述第二服务器发送更新完成消息,使得所述第二服务器进入所述数据更新状态;
进入所述任务处理状态,对接收到的任务请求进行任务处理。


2.根据权利要求1所述的方法,其特征在于,所述向所述第二服务器发送更新开始消息之前,还包括:
监听所述第二服务器发送的消息,若监听到所述第二服务器的更新完成消息,则确定需要对所述第一服务器的数据库进行更新;
或者,监听更新触发消息,若监听到所述更新触发消息,则确定需要对所述第一服务器的数据库进行更新。


3.根据权利要求2所述的方法,其特征在于,所述对所述第一服务器的数据库进行更新,包括:
启动对所述第一服务器的数据库的更新;
确定所述第一服务器的数据库的更新时长;
所述第一服务器的数据库的更新时长达到第一预设时长时,完成对所述第一服务器的数据库的更新。


4.根据权利要求3所述的方法,其特征在于,所述监听所述第二服务器发送的消息,包括:
确定所述第二服务器的数据库的更新时长;
所述第二服务器的数据库的更新时长达到第二预设时长时,监听所述第二服务器发送的消息,所述第二预设时长小于所述第一预设时长。


5.根据权利要求1至4任意一项所述的方法,其特征在于,所述对接收到的任务请求进行任务处理,包括:
获取更新得到的第一服务器的数据库;
基于所述更新得到的第一服务器的数据库,对接收到的任务请求所指示的任务进行任务处理,所述任务请求所指示的任务为离线任务,所述任务请求用于请求进行离线任务处理。


6.根据权利要求1至5任意一项所述的方法,其特征在于,所述第一服务器与所述第二服务器通过redis队列进行通信,所述方法包括:
所述第一服务器的数据库需要进行更新时,通过redi...

【专利技术属性】
技术研发人员:鲁霄
申请(专利权)人:腾讯音乐娱乐科技深圳有限公司
类型:发明
国别省市:广东;44

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

1