业务处理系统及方法_2

文档序号:9326737阅读:来源:国知局
数据存储至对应的数据库系统中。
[0061]可选地,所述请求分发进程根据所述用户标识,从所述多个业务处理进程中选取一个目标业务处理进程,包括:
[0062]所述请求分发进程计算所述用户标识对应的映射值;
[0063]所述请求分发进程根据所述多个业务处理进程中的每个业务处理进程分别对应的映射值区间,从所述多个业务处理进程中选取所述目标业务处理进程;其中,所述目标业务处理进程对应的映射值区间包含所述映射值。
[0064]可选地,所述目标业务处理进程根据所述用户标识,从所述多个数据库系统中确定用于存储所述目标用户对应的个人业务数据的第一目标数据库系统,包括:
[0065]所述目标业务处理进程计算所述用户标识对应的映射值;
[0066]所述目标业务处理进程根据所述多个数据库系统中的每个数据库系统分别对应的映射值区间,从所述多个数据库系统中确定所述第一目标数据库系统;其中,所述第一目标数据库系统对应的映射值区间包含所述映射值。
[0067]本发明实施例提供的技术方案带来的有益效果包括:
[0068]通过部署多个业务处理进程以及多个数据库系统,使得来自于不同用户发起的多个业务请求被分发至不同的业务处理进程进行处理,并将不同用户对应的个人业务数据分布存储在不同的数据库系统中;解决了相关技术提供的业务系统在收到大量的并发业务请求时,给业务处理进程和数据库系统带来非常大的压力,容易导致整个业务系统瘫痪,影响业务正常运营的问题;采用多进程多数据库的架构以缓解单个业务处理进程和单个数据库系统的压力,达到了提高整个业务系统在处理海量业务请求时的稳定性和效率的效果。
【附图说明】
[0069]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0070]图1是本发明实施例所涉及的一种实施环境的示意图;
[0071]图2是本发明一个实施例提供的业务处理系统的示意图;
[0072]图3是本发明另一实施例提供的业务处理系统的示意图;
[0073]图4是本发明一个实施例提供的业务处理方法的流程图;
[0074]图5A是本发明另一实施例提供的业务处理方法的流程图;
[0075]图5B是本发明另一实施例涉及的执行节点的处理流程的流程图。
【具体实施方式】
[0076]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
[0077]请参考图1,其示出了本发明实施例所涉及的一种实施环境的示意图。该实施环境可以包括:服务器120和多台用户设备140。服务器120可通过有线网络或者无线网络与各个用户设备140相连。
[0078]服务器120可以是一台服务器,也可以是由多台服务器组成的服务器集群,或者是一个云计算服务中心。服务器120的数量和分布架构可结合实际的业务需求进行部署。服务器120用于向用户提供网络业务。例如,该网络业务可以是网络游戏、秒杀购物、抢红包等参与用户数量较多的网络业务。
[0079]用户设备120可以是诸如手机、平板电脑、计算机之类的电子设备。用户设备120中可运行有客户端,用户可通过该客户端登录至服务器120以参与上述网络业务。
[0080]本发明实施例提供的业务处理系统可部署于上述服务器120中。在一种可能的实现方式中,服务器120可分为业务处理服务器和数据库服务器。其中,业务处理服务器用于接收并处理参与上述网络业务的各用户发起的业务请求;数据库服务器用于存储与上述网络业务相关的数据。业务处理服务器中部署有业务处理集群,该业务处理集群包含多个业务处理进程。业务处理服务器可以是一台服务器,也可以是由多台服务器组成的服务器集群,每台服务器中可运行一个或多个业务处理进程。数据库服务器中部署有数据库集群,该数据库集群包含多个数据库系统,如包含多个MySQL关系型数据库系统。数据库服务器可以是一台服务器,也可以是由多台服务器组成的服务器集群,每台服务器中可维护一个或多个数据库系统。
[0081]请参考图2,其示出了本发明一个实施例提供的业务处理系统的示意图。该业务处理系统包括:包括多个业务处理进程210的业务处理集群220、包括多个数据库系统230的数据库集群240以及请求分发进程250。其中:
[0082]请求分发进程250,用于接收目标用户发起的对应于目标业务的业务请求,该业务请求中携带有目标用户的用户标识;根据用户标识,从多个业务处理进程210中选取一个目标业务处理进程211 ;将业务请求分发给目标业务处理进程211。
[0083]目标业务处理进程211,用于根据用户标识,从多个数据库系统230中确定用于存储目标用户对应的个人业务数据的第一目标数据库系统231 ;访问第一目标数据库系统231,执行针对目标用户对应的个人业务数据的读写操作以响应于上述业务请求。
[0084]综上所述,本实施例提供的业务处理系统,通过部署多个业务处理进程以及多个数据库系统,使得来自于不同用户发起的多个业务请求被分发至不同的业务处理进程进行处理,并将不同用户对应的个人业务数据分布存储在不同的数据库系统中;解决了相关技术提供的业务系统在收到大量的并发业务请求时,给业务处理进程和数据库系统带来非常大的压力,容易导致整个业务系统瘫痪,影响业务正常运营的问题;采用多进程多数据库的架构以缓解单个业务处理进程和单个数据库系统的压力,达到了提高整个业务系统在处理海量业务请求时的稳定性和效率的效果。
[0085]请参考图3,其示出了本发明另一实施例提供的业务处理系统的示意图。该业务处理系统包括:包括多个业务处理进程310的业务处理集群320、包括多个数据库系统330的数据库集群340以及请求分发进程350。其中:
[0086]请求分发进程350,用于接收目标用户发起的对应于目标业务的业务请求,该业务请求中携带有目标用户的用户标识;根据用户标识,从多个业务处理进程310中选取一个目标业务处理进程311 ;将业务请求分发给目标业务处理进程311。
[0087]在本实施例中,目标业务可以是诸如网络游戏、秒杀购物、抢红包等参与用户数量较多的网络业务。目标用户是指参与该目标业务的各个用户中的任意一个用户。目标用户可通过客户端向业务处理系统发起业务请求,该业务请求中携带有目标用户的用户标识。例如,目标用户的用户标识可以是用户用于登录上述客户端的账号。可选地,业务请求中还携带有目标业务的业务标识。
[0088]另外,业务请求包括但不限于如下几种可能的类型:1)数据读取请求,如用于请求获取个人业务数据;2)数据存储请求,如用于请求修改个人业务数据;3)业务参与请求,如用于请求参与目标业务。下文将结合具体的业务场景对不同类型的业务请求进行介绍和说明。
[0089]业务处理系统中的请求分发进程350用于接收参与目标业务的各个用户发起的业务请求,并将各个业务请求分发给不同的业务处理进程310进行处理。当请求分发进程350接收到目标用户发起的业务请求后,请求分发进程350从中读取目标用户的用户标识,根据该用户标识从多个业务处理进程310中选取一个目标业务处理进程311,该被选取的目标业务处理进程311即为用于处理目标用户发起的上述业务请求的业务处理进程310。
[0090]在一种可能的实现方式中,请求分发进程350,具体用于:计算用户标识对应的映射值;根据多个业务处理进程310中的每个业务处理进程310分别对应的映射值区间,从多个业务处理进程310中选取目标业务处理进程311 ;其中,目标业务处理进程311对应的映射值区间包含上述映射值。
[0091]可选地,请求分发进程350可采用哈希算法计算目标用户的用户标识对应的映射值。例如,假设该映射值为I。预先为不用的业务处理进程310分配不同的映射值区间。例如,假设总的映射值区间为[0,9],业务处理系统中共包括5个业务处理进程310,则可为第一个业务处理进程分配对应的映射值区间[0,I]、为第二个业务处理进程分配对应的映射值区间[2,3]、为第三个业务处理进程分配对应的映射值区间[4,5]、为第四个业务处理进程分配对应的映射值区间[6,7]、以及为第五个业务处理进程分配对应的映射值区间[8,9]。当请求分发进程350计算出目标用户的用户标识对应的映射值为I时,则将该目标用户发起的上述业务请求分发给第一个业务处理进程。再例如,
当前第2页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1