业务处理方法和系统与流程

文档序号:11677544阅读:173来源:国知局
业务处理方法和系统与流程
本公开涉及网络技术,尤其涉及一种业务处理方法和系统。
背景技术
:在业务处理的过程中,可以将该业务对应的业务数据存储在数据库中,并利用该业务数据执行业务。还可以生成用于标识本次业务的号码标识,该号码标识还可以用于作为存储业务数据的依据;比如,在存储业务数据时,可以采取简单的随机策略来确定数据的存储位置,例如,将号码标识进行hash取值,根据取值确定将业务数据存储的数据库。但是这种方式无法应对数据库出现故障的情况,例如,若号码标识的hash取值对应的数据库出现异常,那么再将业务数据存储在该数据库时,将无法用于业务处理,影响业务的正常进行。技术实现要素:为克服相关技术中存在的问题,本公开提供一种业务处理方法和系统,以提高业务处理的可靠性。根据本公开实施例的第一方面,提供一种业务处理方法,包括:根据多个号段分别对应的状态信息,确定一个目标号段,所述状态信息用于表示所述号段对应的存储位置正常或者故障;每个号段包括多个号码标识,且所述目标号段对应的存储位置正常,由目标号段中选择一个号码标识;将所述号码标识作为待处理业务的标识,并将所述待处理业务的业务数据存储至所述目标号段对应的存储位置。根据本公开实施例的第二方面,提供一种业务处理系统,包括:标识生成模块,用于根据多个号段分别对应的状态信息,确定一个目标号段,所述状态信息用于表示所述号段对应的存储位置正常或者故障;每个号段包括多个号码标识,且所述目标号段对应的存储位置正常,由目标号段中选择一个号码标识;数据存储模块,用于将所述号码标识作为待处理业务的标识,并将所述待处理业务的业务数据存储至所述目标号段对应的存储位置。本公开的实施例提供的技术方案可以包括以下有益效果:通过在根据号码标识存储业务数据时,不再是随机策略存储,随机策略选择的数据库可能故障,而是可以根据号段对应的存储位置的状态,选择正常工作的存储位置对应的号段来生成号码标识,提高了业务处理的可靠性。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。图1是根据一示例性实施例示出的一种业务处理方法的流程图;图2是根据一示例性实施例示出的另一种业务处理方法的流程图;图3是根据一示例性实施例示出的业务处理方法的应用场景图;图4是根据一示例性实施例示出的一种业务处理系统的结构示意图;图5是根据一示例性实施例示出的另一种业务处理系统的结构示意图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所 有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。本申请提供的业务处理方法,也应用于业务数据的存储,并且,同样是根据标识本次业务的号码标识存储业务数据,区别于传统方式中的随机策略存储,该方法将号码标识进行了预先分配,在使用号码标识之前就对号码标识进行了统一管理。例如,假设某个业务的业务数据的存储位置,可以包括ha数据库、hb数据库、hc数据库和hd数据库。并且,假设该业务要使用的号码标识可以是0000001~4000000区间中的任一号码数值,那么,本申请的业务处理方法中,可以将0000001~4000000进行划分,分别分配至各个数据库。如下面的表1,示例了一种分配方式(不局限于该方式),可以将0000001~4000000划分为四个号段,每个号段包括多个号码标识,例如,0000001是一个号码标识,0000002是又一个号码标识。每个号段分配至一个数据库,即如果一个业务用某个号段中的一个号码标识表示,则该业务的业务数据将存储在号段对应的数据库中。例如,如果业务用0000001作为号码标识,则业务数据将存储在ha数据库中。表1中还设置了状态信息,该状态信息可以用于表示某个号段对应的数据库工作正常或者故障。例如,可以用“0”表示当前数据库故障,用“1”表示当前数据库正常。表1号码分配关系号段数据库状态信息0000001~1000000ha01000001~2000000hb12000001~3000000hc13000001~4000000hd1基于以上的号码标识的划分,可以执行图1所示的业务处理方法,该方法可以包括:在步骤101中,根据多个号段分别对应的状态信息,确定一个目标号段,每个号段包括多个号码标识,且目标号段对应的存储位置正常,由目标号段中选择一个号码标识。例如,当业务处理系统接收到一个业务处理请求时,可以生成该业务对应的号码标识,在后续的业务处理中,都可以使用该号码标识表示该业务;并且,业务处理中的业务数据的存储也可以依据该号码标识。本步骤中,将生成对应本次业务的一个号码标识。生成的方法可以是,以表1所示的号码分配关系为例,假设本次业务可以用表1中的四个号段中生成的一个号码标识表示,那么,可以根据状态信息,将状态信息表示数据库状态正常的号段,作为可用的号段。参见图1的示例,ha数据库的状态信息是“0”,表示ha故障,则剔除ha,将由hb、hc、hd分别对应的各个号段中选择一个号段,作为目标号段,本次业务的号码标识也将从目标号段中生成。示例性的,可以选择2000001~3000000作为目标号段,并从中选择一个号码标识,比如,选择2000001作为本次业务的号码标识。选择的方式不做限制,可以自由设定,例如,可以随机选择一个号码标识。在步骤102中,将该号码标识作为待处理业务的标识,并将待处理业务的业务数据存储至目标号段对应的存储位置。本步骤中,由于业务的号码标识2000001是由号段2000001~3000000中得到,因此,参见表1所示的对应关系,可以将本次业务的业务数据存储在号段2000001~3000000对应的数据库hc中。本例子的业务处理方法,在根据号码标识存储业务数据时,不再是随机策略存储,随机策略选择的数据库可能故障,而是可以根据号段对应的存储位置的状态,选择正常工作的存储位置对应的号段来生成号码标识,提高了业务处理的可靠性。当存储位置的状态发生变化时,例如,某个数据库发生了故障,使用本申请的业务处理方法,还可以有效的进行故障处理。图2示例了一种业务处 理方法的流程,该流程描述了对故障的处理过程:在步骤201中,在接收到业务处理请求时,根据多个号段分别对应的状态信息确定目标号段,并由目标号段中生成一个本次业务的号码标识。例如,仍以表1所示为例,可以根据状态信息,由hb库、hc库和hd库对应的各个号段中选择一个号段作为目标号段,假设选择了2000001~3000000作为目标号段,并从中选择一个号码标识,比如,选择2000001作为本次业务的号码标识。在步骤202中,根据目标号段对应的存储位置,将业务数据向该存储位置存储。例如,根据本次业务的号码标识2000001,将业务数据存储至该号码标识所在的目标号段2000001~3000000对应的数据库hc库中。在步骤203中,在数据存储失败时,修改所述存储位置对应的状态信息。例如,在向hc库插入业务数据时失败,hc库不可用,那么该业务处理系统检测到该hc库发生故障,则可以修改hc库对应的状态信息。例如,在表1的例子中,可以将hc库的状态信息由“1”修改为“0”。在步骤204中,释放所述目标号段,且由其他号段中重新选择一个作为目标号段。例如,业务处理系统对于某个业务的多次业务处理请求,可以采取一次获取目标号段后,使用该同一个号段为多次业务生成号码标识,比如,在获取到2000001~3000000作为目标号段作为目标号段后,可以一直使用该号段为多次业务分配号码标识,直至该号段的号码标识使用完。在本例子中,如果在该目标号段尚未使用完时,发现该目标号段对应的hc库发生故障,则可以释放该号段,待下次接收到业务处理请求时重新获取目标号段。由于已经根据hc库的状态修改了状态信息,因此在重新获取目标号段时,将不再选择hc库对应的号段2000001~3000000作为目标号段。本例子的业务处理方法,当存储位置出现故障时,能够修改该存储位置的状态信息,从而使得在根据状态信息选择目标号段时,将故障的存储位置对应的号段排除在外,自动切换到其他号段获取,提高了业务处理的有效性。图3示例了一种本申请的业务处理方法的应用场景,该场景是一种示例, 具体实施中并不局限于这种场景,也可以是其他的系统架构,只要能实现本申请的业务处理方法即可。如图3所示,例如,可以将表1所示的号码分配关系存储在号段生成系统31中,当业务接收平台32接收到某个业务请求时,可以向该号段生成系统31中获取用于生成本次业务的号码标识的目标号段。例如,号段生成系统31可以根据状态信息,选择一个状态正常的数据库对应的号段作为目标号段提供给业务接收平台32,业务接收平台32可以根据该目标号段生成一个号码标识用于标识本次业务。并且,业务接收平台32可以将业务数据插入到目标号段对应的数据库中,例如插入hc库。或者,还可以是,由号段生成系统31在选择目标号段后,并从该目标号段中确定一个号码标识,将号码标识提供给业务接收平台32,由平台据此存储数据。请继续参见图3,如果业务接收平台32在将数据插入hc库时失败,则hc可能发生了故障,那么业务接收平台32可以将hc库发生故障的状态通知状态分析系统33。并且,状态分析系统33获知hc库故障的方式,可以是被动获取,比如,由业务接收平台32通知,业务接收平台32可以发送表示hc库故障的状态通知;或者也可以是主动获取,比如,状态分析系统33定期检测存储位置的状态,并且探测到hc库发生故障。当状态分析系统33检测到其中一个存储位置的状态为故障时,例如上述的例子中hc库故障,则可以修改号段生成系统31中对应该数据库的状态信息,将hc库的状态信息由“1”修改为“0”,这样后续号段生成系统31在选择目标号段时将不会再选择hc库,实现了故障库的自动剔除。此外,在本申请的业务处理方法中,将号码标识进行号段划分的方式可以如下:根据号码标识的生成信息,按照预设规则将多个号码标识划分成多个号段,再将该多个号段分配至预设的多个存储位置,使得一个号段对应一个存储位置。如下列举几种号段划分和分配的例子,具体实施中不局限于此。例如,假设号码标识的生成信息是“某个业务可以使用的号码标识是0000001~4000000”,那么据此获得了待划分的号码标识区间0000001~4000000。本例子的预设规则可以是“均分”,例如,这些号码标 识将分配至四个数据库,ha库、hb库、hc库和hd库。可以将号码标识区间“0000001~4000000”平均分成四份,每一份称为一个号段,每个号段中包括多个号码标识,比如表1中所示例的四个号段。可以将这四个号段分别分配至四个数据库,每个数据库对应一个号段,如果某业务的号码标识是由一个号段中选择,则将该业务的业务数据存储至该号段对应的数据库中。又例如,假设号码标识的生成信息是“某个业务可以使用的号码标识包括a、b、c等多个字母的标识”,那么据此获得了待划分的号码标识包括多个字母开头的标识。本例子的预设规则可以是“按照字母划分”,例如,这些号码标识将分配至四个数据库,ha库、hb库、hc库和hd库。可以将以a字母开头的号码标识组成一个号段,并且将该号段分配至ha库,将以b字母开头的号码标识组成另一个号段,并且将该号段分配至hb库,同理划分其他号码标识。本申请还提供了一种业务处理系统,该系统可以用于执行本申请实施例的业务处理方法,如图4所示,该系统可以包括:标识生成模块41和数据存储模块42。标识生成模块41,用于根据多个号段分别对应的状态信息,确定一个目标号段,所述状态信息用于表示所述号段对应的存储位置正常或者故障;每个号段包括多个号码标识,且所述目标号段对应的存储位置正常,由目标号段中选择一个号码标识;数据存储模块42,用于将所述号码标识作为待处理业务的标识,并将所述待处理业务的业务数据存储至所述目标号段对应的存储位置。参见图5,该系统还可以包括:状态修改模块43,用于在检测到其中一个存储位置的状态为故障时,修改所述存储位置对应的状态信息,以使得所述存储位置对应的号段不再作为所述目标号段。进一步的,还可以包括:故障获取模块44,用于接收对于所述存储位置的状态通知,所述状态通知用于表示所述存储位置故障;或者,定期检测所述存储位置的状态,并探测到所述故障。进一步的,还可以包括:标识分配模块45,用于根据号码标识的生成信息,按照预设规则将多个号码标识划分成所述多个号段;将所述多个号段,分配至预设的多个存储位置,使得一个号段对应一个所述存储位置。在另一个例子中,该标识生成模块41,还用于在将所述待处理业务的业务数据向所述目标号段对应的存储位置存储失败时,释放所述目标号段,且由其他号段中重新选择一个作为目标号段。本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本公开未公开的本
技术领域
中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1