业务处理方法及装置的制造方法

文档序号:9911042阅读:126来源:国知局
业务处理方法及装置的制造方法
【专利说明】
【技术领域】
[0001]本申请涉及互联网技术领域,尤其涉及一种业务处理方法及装置。
【【背景技术】】
[0002]随着应用的发展,对业务系统可用性的要求越来越高。为了提高业务系统的可用性,需要将业务系统产生的业务数据存储到数据库中。但是,当数据库发生故障时,业务系统无法继续使用数据库中的业务数据,导致无法正常进行业务处理。
[0003]为了克服上述问题,现有技术一般采用数据库备份方案,当主数据库发生故障时,切换到备份数据库,由备份数据库接替主数据库继续向业务系统提供业务数据。该方案存在如下问题:从主数据库切换到备份数据库需要一定时间,通常在5分钟左右,在这段时间内,业务系统需要停止进行业务处理,导致业务处理效率较低。

【发明内容】

[0004]本申请的多个方面提供一种业务处理方法及装置,用以一定程度的解决业务系统无法正常进行业务处理的问题,提高业务处理效率。
[0005]本申请的一方面,提供一种业务处理方法,包括:
[0006]接收用户的业务处理请求;
[0007]若主数据库故障,判断所述用户是否在第一时刻到当前时刻之间执行过改动所述主数据库的操作;所述第一时刻早于或等于从所述主数据库备份到处于可读状态的备份数据库中的最晚业务数据的产生时刻;
[0008]若判断结果为否,则根据所述业务处理请求,从所述备份数据库中读取业务数据,并根据所述业务数据进行业务处理。
[0009]本申请的另一方面,提供一种业务处理装置,包括:
[0010]接收模块,用于接收用户的业务处理请求;
[0011]判断模块,用于在主数据库故障时,判断所述用户是否在第一时刻到当前时刻之间执行过改动所述主数据库的操作;所述第一时刻早于或等于从所述主数据库备份到处于可读状态的备份数据库中的最晚业务数据的产生时刻;
[0012]业务处理模块,用于在所述判断模块的判断结果为否时,根据所述业务处理请求,从所述备份数据库中读取业务数据,并根据所述业务数据进行业务处理。
[0013]在本申请中,接收用户的业务处理请求,若发现主数据库故障,则判断用户是否在第一时刻到当前时刻之间执行过改动主数据库的操作,第一时刻早于或等于从主数据库备份到备份数据库中的最晚业务数据的产生时刻,由此可见,本申请通过判断当前请求业务处理的用户是否在备份数据库中最晚业务数据产生时刻之后执行过改动主数据库的操作,要是没有执行过,说明主数据库中尚未备份到备份数据库中的业务数据与该用户当前请求的业务处理无关,即使备份数据库中不存在这段时间产生的业务数据也不会影响用户当前请求的业务处理,于是根据业务处理请求从备份数据库中读取当前业务处理所需的业务数据,并根据所读取的业务数据进行业务处理,不用因为主备数据库切换而停止,提高了业务处理效率。
【【附图说明】】
[0014]为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0015]图1为本申请一实施例提供的业务处理方法的流程示意图;
[0016]图2为本申请一实施例提供的业务处理装置的结构示意图。
【【具体实施方式】】
[0017]为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0018]图1为本申请一实施例提供的业务处理方法的流程示意图。如图1所示,该方法包括:
[0019]101、接收用户的业务处理请求。
[0020]102、若主数据库故障,则判断上述用户是否在第一时刻到当前时刻之间执行过改动主数据库的操作,第一时刻早于或等于从主数据库备份到处于可读状态的备份数据库中的最晚业务数据的产生时刻。若判断结果为否,即上述用户在第一时刻到当前时刻之间未执行过改动主数据库的操作,则执行步骤103 ;反之,可以结束操作。
[0021]103、根据上述业务处理请求,从备份数据库中读取业务处理所需的业务数据,并根据该业务数据进行业务处理。
[0022]本实施例提供一种业务处理方法,可由业务处理装置来执行。业务处理装置可以是各种需要使用数据库中存储的业务数据开展业务的装置,例如淘宝系统、支付宝系统、腾讯业务系统等中的服务器。
[0023]现有技术中,当主数据库故障后,需要启用备份数据库,主备切换过程如下:
[0024]1、检查备份数据库的状态是否处于可启用为主数据库的状态;
[0025]2、激活备份数据库;
[0026]3、切换备份数据库为主数据库;
[0027]4、修改域名,把原来绑定给主数据库的域名绑定到新的主数据库;
[0028]5、检查业务是否正常。
[0029]在上述主备切换过程中,步骤1-3 —般需要5分钟左右。在这段时间内,业务系统需要停止进行业务处理,导致业务处理效率较低。
[0030]针对现有技术中在主数据库故障时,由主数据库切换到备份数据库过程中无法正常进行业务处理的问题,本实施例提供一种改进的备份数据库,即处于可读状态的备份数据库,也就是说,本实施例中的备份数据库不仅可以用于备份主数据库中的业务数据,而且是一直处于可读状态的。基于本实施例提供的处于可读状态的备份数据库,当主数据库发生故障需要切换到备份数据库时,不需要等待备份数据库的启动,可以直接使用备份数据库(这里的使用主要是指可以直接从备份数据库中读取业务数据),也就是说,主数据库可以直接切换到备份数据库,不存在时间延迟,因此在主备数据库切换过程中可以继续进行业务处理,不需要停止业务处理。
[0031]在一可选实施方式中,本实施例提供的处于可读状态的备份数据库可以是读写分离应用中的读库,这里的读库是指只有在数据库同步过程中允许写入数据,在其他应用场景中只允许往外读数据的数据库。
[0032]进一步,考虑到主数据库向备份数据库备份数据一般存在延迟,也就是说,主数据库和备份数据库所存储的业务数据并不完全相同,而是存在一定差异,例如备份数据库中存储的业务数据比主数据库中存储的业务数据可能要少I分钟左右的数据。值得说明的是,主数据库和备份数据库所存储的业务数据之间的差异视不同应用场景会有所不同。
[0033]在面临上述问题的情况下,在主数据库故障后,若直接使用备份数据库中的业务数据,有可能会因为业务数据的不完整导致业务处理失败。针对该问题,本实施例进一步提供一种解决方案,具体的,在接收用户的业务处理请求之后,判断当前请求业务处理的用户是否在第一时刻到当前时刻之间执行过改动所述主数据库的操作,第一时刻早于或等于从主数据库备份到备份数据库中的最晚业务数据的产生时刻,要是没有执行过,说明主数据库在故障之前尚未备份到备份数据库中的业务数据与该用户当前请求的业务处理无关,也就是说该用户请求的业务处理不会用到主数据库在故障之前尚未备份到备份数据库中的业务数据,即使备份数据库中不存在这段时间产生的业务数据也不会影响用户当前请求的业务处理,于是根据业务处理请求从备份数据库中读取当前业务处理所需的业务数据,并根据所读取的业务数据进行业务处理,不用因为主备数据库切换而停止,提高了业务处理效率。其中,业务处理请求中可以包括数据标识,该数据标识用于标识进行业务处理所需的业务数据,例如可以是时间戳或ID等信息。
[0034]值得说明的是,用户可以通过其客户端或用户终端等向业务处理装置发送业务处理请求。
[0035]在实际应用中,主数据库在未发生故障的情况下,会不停的向备份数据库备份业务数据,也就意味着主数据库备份到备份数据库中的最晚业务数据的产生时刻是不断变化的,相应的,第一时刻也会根据该产生时刻的变化而变化。为了便于确定第
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1