一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

数据服务处理方法及相关设备与流程

2021-11-15 19:05:00 来源:中国专利 TAG:


1.本技术主要涉及微服务系统应用领域,更具体地说是涉及一种数据服务处理方法及相关设备。


背景技术:

2.微服务架构是一项在云中部署应用和服务的新技术,企业和服务提供商等使用者通常是基于微服务架构部署分布式系统,满足相应行业的不同业务数据处理需求。以金融行业为例,可以实现对不同用户的各种订单交易等各类数据的分类存储,以便后续访问相应数据库,查询所需业务数据等。
3.随着用户量的急剧增加,目前通常采用基于代理/非代理的数据库分库分表方式,实现对业务和交易量的扩充。其中,非代理方式是在驱动层上由lib库负责sql(structured query language,结构化查询语言)解析、路由计算等功能,以实现分库分表,实现难度大且过程复杂,受sql语法限制,往往无法实现跨库进行数据查询;而代理方式是由增加的代理服务器按照配置的分片路由规则进行路由计算,过程复杂且需要代理服务器执行多次网络交互,降低了系统性能和处理效率,也会因sql语法限制导致无法跨库查询。
4.由此可见,如何简单灵活、且不受数据库类型约束地实现分布式系统扩容,满足客户量和交易量扩展需求,已成为本领域亟需解决的问题之一。


技术实现要素:

5.有鉴于此,为了解决上述技术问题,本技术提出了以下技术方案:
6.一方面,本技术提出了一种数据服务处理方法,所述方法包括:
7.接收用户客户端发送的服务调用请求;
8.解析所述服务调用请求,得到所述用户客户端的调用请求信息;所述调用请求信息包括所请求调用的目标服务的目标服务标识,以及针对所述目标服务的分片指示信息;
9.依据应用层上构建的与所述目标服务标识对应的服务配置规则,获得所述目标服务标识和所述分片指示信息映射的目标分片集群;
10.将所述服务调用请求转发至所述目标分片集群,以使所述目标分片集群响应所述服务调用请求,从所述目标分片集群对应的目标数据库中,调取所请求的服务信息反馈至所述用户客户端。
11.可选的,所述依据与所述目标服务标识对应的服务配置规则,获得所述目标服务标识和所述分片指示信息映射的目标分片集群,包括:
12.调用与所述目标服务标识对应的服务配置规则;
13.依据所述服务配置规则,确定所述目标服务是否配置有多个分片集群;所述多个分片集群各自的数据库所存储的服务信息不同;
14.若是,依据所述服务配置规则,查询所述分片指示信息映射的分片集群为目标分片集群;
15.若否,将所述服务调用请求转发至所述目标服务对应的目标集群,以使所述目标集群响应所述服务调用请求,从所述目标集群对应的目标数据库中,调取所请求的服务信息反馈至所述用户客户端。
16.可选的,所述依据所述服务配置规则中,查询所述分片指示信息映射的分片集群为目标分片集群,包括:
17.检测所述分片指示信息是否存在指定分片标识;
18.若存在所述指定分片标识,将所述指定分片标识对应的指定分片集群确定为目标分片集群。
19.可选的,所述依据所述服务配置规则,查询所述分片指示信息映射的分片集群为目标分片集群,还包括:
20.若不存在所述指定分片标识,检测所述分片指示信息中是否存在所述用户客户端的目标用户标识;
21.若存在所述目标用户标识,查询所述目标用户标识映射的分片集群为目标分片集群;
22.若不存在所述目标用户标识,从所述多个分片集群中,随机选择一分片集群为目标分片集群。
23.可选的,所述依据所述服务配置规则,查询所述分片指示信息映射的分片集群为目标分片集群,还包括:
24.若未查询到所述目标用户标识映射的分片集群,检测所述多个分片集群中是否存在默认分片集群;
25.若存在,将所述默认分片集群确定为目标分片集群。
26.可选的,所述方法还包括:
27.若不存在所述指定分片标识对应的指定分片集群,或不存在所述默认分片集群,输出请求转发异常提示信息。
28.可选的,所述目标分片集群响应所述服务调用请求,从所述目标分片集群对应的目标数据库中,调取所请求的服务信息反馈至所述用户客户端,包括:
29.所述目标分片集群按照负载均衡策略,调用所述目标分片集群的服务进程,以通过所述服务进程调取所述目标分片集群对应的目标数据库中,所述用户客户端所请求的服务信息,将所述服务信息反馈至所述用户客户端。
30.可选的,所述服务配置规则的构建过程包括:
31.获取任一类型服务的服务注册信息;所述服务注册信息包括用于表征该服务是否支持分片的分片字段标识;若支持分片,针对该服务构建的一个或多个分片集群各自的分片标识,以及各所述分片集群对应的数据库关联的用户标识,所述数据库用于存储所关联的用户标识对应的服务信息;
32.依据所述服务注册信息,构建与该服务的服务标识对应的服务配置规则。
33.又一方面,本技术还提出了一种数据服务处理装置,所述装置包括:
34.服务调用请求接收模块,用于接收用户客户端发送的服务调用请求;
35.调用请求信息得到模块,用于解析所述服务调用请求,得到所述用户客户端的调用请求信息;所述调用请求信息包括所请求调用的目标服务的目标服务标识,以及针对所
述目标服务的分片指示信息;
36.目标分片集群获得模块,用于依据应用层上构建的与所述目标服务标识对应的服务配置规则,获得所述目标服务标识和所述分片指示信息映射的目标分片集群;
37.服务调用请求转发模块,用于将所述服务调用请求转发至所述目标分片集群,以使所述目标分片集群响应所述服务调用请求,从所述目标分片集群对应的目标数据库中,调取所请求的服务信息反馈至所述用户客户端。
38.又一方面,本技术还提出了一种接入网关设备,所述接入网关设备包括至少一个存储器和至少一个处理器,其中:
39.所述存储器,用于存储实现如上述的数据服务处理方法的程序;
40.所述处理器,用于调用并执行所述存储器存储的所述程序,以实现如上述的数据服务处理方法。
41.又一方面,本技术还提出了一种数据服务处理系统,所述系统包括:
42.多个终端;
43.如上所述的接入网关设备,所述接入网关设备与所述终端通信连接;
44.多个服务集群,所述服务集群与所述接入网关设备通信连接;
45.多个数据库,所述多个数据库与所述多个服务集群一一对应连接,且用于存储不同用户标识对应的相应类型服务的服务信息。
46.又一方面,本技术还提出了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器调用并执行,实现如上述的数据服务处理方法。
47.由此可见,本技术提出了一种数据服务处理方法及相关设备,本技术提出在应用层面上分片解决系统弹性扩展,即预先针对该行业所具有的各类服务,结合实际需求确定相应类型服务是否支持分片,若支持分片,预先配置其对应的一个或多个分片集群,并确定每一个分区集群所对应的数据库,定义该数据库能够存储的哪些用户账号关联的服务信息等,即预先确定各类型服务的服务配置规则。这样,在实际应用中,任一用户客户端发送针对目标服务的服务调用请求至接入网关设备,由应用层的接入网关设备直接依据预先获得的服务配置规则,确定该服务调用请求应该转发至哪个服务集群,甚至可以确定由该服务集群的哪个应用进程,从该服务集群连接的数据库中调取所需服务信息,满足相应用户客户端的业务需求。
附图说明
48.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
49.图1为本技术提出的数据服务处理系统的一可选示例的结构示意图;
50.图2为本技术提出的数据服务处理方法的一可选示例的流程示意图;
51.图3为本技术提出的数据服务处理方法的又一可选示例的流程示意图;
52.图4为本技术提出的数据服务处理方法的又一可选示例的流程示意图;
53.图5为本技术提出的数据服务处理装置的一可选示例的硬件结构示意图;
54.图6为适用于本技术提出的数据服务处理方法的接入网关设备的一可选示例的结构示意图。
具体实施方式
55.针对背景技术部分的描述数据库分库分表的数据服务处理方法,本技术提出在应用程序层面上进行数据库分片处理,通过服务集群扩展替代上文描述的数据库层面的分库分表方式,将数据库和服务作为一个整体进行扩展,从而解决单独对数据库分库分表处理方式,因多次网络交互导致形成损失、受sql(structured query language,结构化查询语言)语句约束、路由计算复杂、不支持跨库查询等技术问题,实现整个分布式系统的无限扩展和扩容,满足金融行业的用户量和交易量急剧增加而产生的应用需求。下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
56.参照图1,为本技术提出的数据服务处理系统的一可选示例的结构示意图,该系统可以包括:终端100、接入网关设备200、接入服务器300以及数据库400,其中:
57.终端100可以供用户使用的电子设备,包括但并不局限于智能手机、平板电脑、个人计算机、智能穿戴设备、车载设备、机器人、台式电脑等,可以依据场景需求确定,本技术对终端100的类型及数据不做限制。
58.在本技术实施例中,终端100可以安装有供用户发起相应业务请求的客户端,可以是独立安装的应用程序,可以是网页应用程序,本技术对该客户端的类型不做限制,可视情况而定。示例性的,在金融行业中,该客户端可以是手机银行、各种理财软件或具有理财功能的应用程序等,用户可以启动客户端,登录所注册的应用账号,查询所具有的业务、查询该应用账号下的各类数据、执行某些订单交易等。可以理解,对于不同类型的客户端所支持的业务功能可能不同,本技术实施例在此不做一一列举。
59.接入网关(access gateway,ag)设备200可以是位于软交换架构当中的边缘接入层,对外提供服务的统一接入点,实现不同网络间提供数据转换服务的计算机系统或设备,也就是不同网络之间的连接器。其中,在三层ip网络中,接入网关设备泛指网络边缘连接用户主机的各种ip网关设备,如宽带接入网关(broadband remote access server,bras)、无线接入网关(wifi路由器)、家庭(接入)网关、各种拨号(协议)接入网关、专线接入网关、vpn(virtual private network,虚拟专用网络)接入网关、企业接入网关等,本技术对接入网关设备200的类型及其遵循的通信协议不做限制,可视情况而定。
60.在本技术实施例中,对于用户使用终端100上的客户端,发起针对某一服务调用请求,如查询某账号信息的数据查询请求等,客户端可以将该服务调用请求发送至接入网关设备200,由该接入网关设备200将该服务调用请求转发至相应的数据库,以查询该数据库所存储的账号信息。可以理解,该服务调用请求的数据传输格式遵循接入网关设备200的通信协议,保证数据传输的可靠性,本技术对客户端向接入网关设备200发送服务调用请求的实现过程不做详述。
61.接入服务器300可以是进程服务器,用于将接入网关设备200接收到的服务调用请
求,转发到相应的数据库中,支持实现分布式系统的服务模式下的分片。如图1所示,本技术可以针对每一个数据库配置一个服务集群,即由多个接入服务器300组成的服务集群,可以提供对等、可互相替代服务的多个应用进程组成的一组服务。其中,一类服务可以对应多个服务集群,每一类服务也可以对应一个服务集群。
62.在本技术实施例中,可以依据实际应用需求,如通过判断单个机器能否提供所需服务等,来确定是否对相应类型的服务进行分片处理,即配置该类型服务是否支持分片转发处理的路由分片信息(即服务配置规则),通过这种分片处理方式,使其能够根据需要提供的服务信息量来扩展服务。所以,在确定某类型服务支持分片的情况下,可以针对该类型服务构建一个或多个分片集群(即服务集群),针对每一个分片集群可以配置一个数据库,用于存储某些用户所具有的该类型服务的服务信息,以便后续依据服务类型、分片集群、用户标识之间的映射关系,查询各用户所需的服务信息。
63.示例性的,参照图1所示的系统架构,以系统提供的服务a、服务b和服务c这三种服务为例进行说明,若服务a和服务b需要分片,服务c不需要分片,对于服务a可以构建多个分片(即多个服务集群),包括但并不局限于图1所示的服务a的分片1、分片2和分片3,这三个分片可以连接不同的数据库,且这三个不同的数据库可以用于存储不同数据,如不同账号的账号信息,之后,在注册服务a期间,可以将这些路由分片信息作为服务注册信息中的一部分上报,并发送至接入网关设备200存储,以使该接入网关设备200由此构建服务a的服务配置规则,即针对服务a的路由分片信息,以便后续接收到针对服务a的服务调用请求后,可以依据该路由分片信息转发至相应的分片集群响应。
64.同理,对于服务b可以构建但并不局限于一个分片集群,如图1所示的服务b分片1,这样,在注册服务b时,可以携带该相应的路由分片信息发送至接入网关设备200存储。可以理解,对于支持分片的服务a和服务b,在后续应用中,可以依据扩展需求进行分片扩展,不需要更改原有系统架构,非常方便,本技术对分片的实现方法不做限制。
65.而对于不支持分片的服务c,支持该服务c的各接入服务器连接同一数据库,用于存储该服务c的同一类数据,且在后续应用中,无法对服务c进行扩展。需要说明,本技术对整个数据服务处理系统所支持的服务类型,以及每一种服务的分片集群数量不做限制,可以依据实际需求进行适应性调整,本技术在此不做详述。
66.如上述分析,本技术在注册系统所能够提供的各服务的过程中,可以将如上文路由分片信息发送至接入网关设备200,生成针对相应类型服务的服务配置规则,如该类型服务的各分片集群具有的分片标识,与不同账号的账号标识(即一种用户标识,也可以采用其他内容的用户标识,本技术对此不做限制)和不同数据库之间的映射关系等,本技术对该映射关系的内容及其表示方式不做限制,可视情况而定。
67.示例性的,仍以图1所示的分片服务模式为例进行说明,服务a分片1的分片数据库1用于存储账号1的账号信息,即服务a分片1对应账号1;服务a分片2的分片数据库2用于存储账号2的账号信息,即服务a分片2对应账号2等,在实际应用中,可以采用枚举、区间范围、模糊匹配等方式,来确定路由分片信息,本技术对此不做限制。
68.数据库400可以是用于存储数据的数据存储设备,如数据库服务器,本技术该数据库类型及其组成结构不做限制,可视情况而定。结合上文描述的分片服务,即在应用层面上实现分片后,依据分片结果,为每一个分片集群配置一数据库,用于存储分配给该分片集群
的一个或多个账号的服务信息,其中,该分片集群与该数据库之间可以通过调用多个进程实现数据传输,本技术对该数据传输方式不做限制。
69.基于上文系统各组成部分的描述,当用户通过客户端发送针对某类服务的服务调用请求后,该服务调用请求将被传输至接入网关设备200,由该接入网关设备200解析得到该客户端请求调用的目标服务的目标服务标识,之后,可以获取该类型服务注册时所获得的服务配置规则(如上述路由分片信息),据此确定该服务调用请求对应的目标分片集群,将该服务调用请求转发至该目标分片集群,由目标分片集群响应服务调用请求,通过应用进程从该目标分片集群连接的目标数据库中,调取所需服务信息反馈至用户客户端。
70.由此可见,本技术的数据库400的数量是多个,每一个服务集群对应配置有一个数据库,用于存储支持或分配或具有该集群对应的服务类型的各账号关联的服务信息,且每一服务类型至少可以对应有一个服务集群,对应不同服务集群的数据库的类型、存储空间等配置信息可以不同,可视情况而定,本技术对此不做限制。
71.基于上述分析可知,本技术实施例提出的数据服务处理系统直接在应用层面上实现了服务分片扩展,不仅简化了路由分片处理,且有利于简化后续数据服务处理方法步骤,降低数据服务处理难度,且不再受限于sql语言,支持多种数据库的数据查询,可以实现跨库查询;也不需要通过网络交互从代理服务器获取数据,避免了网络交互对系统性能上造成的损失,提高了数据服务处理效率。
72.基于上文实施例描述的数据服务处理系统的组成结构,下面将对其实际应用中,如何实现数据服务处理方法的过程进行描述,需要说明,系统实现的数据服务处理方法的过程包括但并不局限于下文实施例的描述内容,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合,本技术不做一一举例详述。
73.参照图2,为本技术提出的数据服务处理方法的一可选示例的流程示意图,该方法可以由接入网关设备200执行,关于该接入网关设备200的产品类型,可视情况而定,本技术实施例不做限制。如图2所示,该方法可以包括:
74.步骤s21,接收用户客户端发送的服务调用请求;
75.结合上述实施例相应部分的描述,任一用户使用电子设备中的客户端过程中,用户可以访问客户端所能够提供的任一类型服务,用户确定所要访问的服务后,客户端为了向提供该服务,通常需要调用支持该服务功能实现的服务信息,因此,客户端可以响应用户的服务访问请求,生成针对所请求访问服务的服务调用请求,以请求获取该服务的服务信息。
76.在实际应用中,对于用户客户端发送的服务调用请求,通常可以包括该用户客户端的账号标识、所请求访问的目标服务的目标服务标识、所请求访问服务是否需要分片等信息,本技术对该服务调用请求包含的信息内容不做限制,可视情况而定。
77.其中,账号标识可以是相应用户在客户端的应用平台上注册账号的账号地址、昵称、用户姓名或其他唯一身份标识等;服务标识可以用于区别不同类型服务,表示相应服务的服务类型等,其可以是服务类型名称、预设编号等,本技术对各用户的账号标识、各服务的服务标识所指示的具体内容不做限制,可以依据场景需求确定。
78.步骤s22,解析该服务调用请求,得到该用户客户端的调用请求信息;
79.继上文对服务调用请求的相关描述,接入网关设备解析得到的调用请求信息可以
包括请求调用的目标服务的目标服务标识,以及针对目标服务的分片指示信息,该分片指示信息可以指示预设的不同类型服务对应的多个分片集群中,目标服务所对应的一个或多个分片集群,本技术对该分片指示信息的内容不做限制,可以是上述账号标识、目标服务是否分片的预设分片信息等。本技术对调用请求信息包含的内容不做限制,可视情况而定。
80.步骤s23,依据应用层上构建的与目标服务标识对应的服务配置规则,获得目标服务标识和分片指示信息映射的目标分片集群;
81.结合上文系统实施例的相关描述,本技术是预先依据不同类型服务的分片需求,来生成各类型服务对应的服务配置规则,即预先确定各类型服务是否需要分片,每一个分片集群对应哪个数据库,由该数据库存储哪些账号对应的该类型服务的服务信息等,具体配置过程本技术不做限制,可以依据实际应用需求确定。
82.基于此,本技术实施例确定任一用户客户端请求调用的目标服务后,可以从预先配置的不同类型服务对应的服务配置规则中,确定目标服务对应的服务配置规则,即与表示该目标服务的目标服务标识对应的服务配置规则,之后,可以依据所确定的服务配置规则,来获取目标服务标识和分片指示信息映射的目标分片集群。可见,该服务配置规则能够表征该类型服务注册时配置了几个分片集群,每一个分配集群对应哪些应用进程,通过各应用进程可以获取哪个数据库存储的哪些账号的服务信息等,本技术对服务配置规程内容及其表示方式不做限制,可视情况而定。
83.示例性的,仍以上图1所示的分片服务模式为例进行说明,该目标服务可以是图1中的服务a,由于该服务a预先配置了三个分片集群,每一个分配集群可以通过多个应用进程访问对应的数据库,以调用相应账号所具有的该目标服务的服务信息,针对服务a的分片服务模式,本技术可以在注册服务a期间,确定不同用户的账号对应哪个分片的哪个应用进程,将该账号关联的服务a的服务信息存储至该应用进程对应的数据库中,也就是预先确定针对该服务a的服务配置规则,即不同用户的账号标识与不同分片集群中各应用进程之间的对应关系,每一个分片集群对应有一个数据库,来存储相对应用户的服务信息。
84.基于此,确定用户客户端调取的是服务a后,可以按照预先确定的服务配置规则,将与该用户客户端的账号标识对应的分片集群确定为目标分片集群,并将该目标分片集群对应的数据库确定为目标数据库。
85.当然,在某一些应用场景下,用户也可以指定响应其客户端发送的针对服务a的服务调用请求的分片集群,这样,接入网关设备可以将该服务调用请求携带的指定分片集群确定为目标分片集群。
86.在又一些实施例中,若所确定的服务配置规则中,并未预先确定某用户对应的分片集群,本技术也可以将预设的默认分片集群,确定传输该用户客户端发送的服务调用请求的目标分片集群等。由此可见,在不同应用场景下,确定具有任一类型服务的各用户客户端对应的分片集群的实现方式可能不同,因此,该类型服务对应的服务配置规则可以包括但并不局限于上文描述的对应关系、默认配置规则以及指定规则等,可以依据实际需求确定。
87.如上述分析,对于任一类型服务的服务配置规则,可以是注册服务时构建,并发送至接入网关设备进行存储,这样,接入网关设备接收到用户客户端发送的服务调用请求后,可以依据存储的各服务类型的服务配置规则,确定将该服务调用请求发送至哪个分片集
群,通过该分片集群的哪个应用进程调取相应数据库存储的该用户账号对应的服务信息。
88.另外,如上图1所示,对于不同类型的服务,区别于上述服务a的分片配置,还可能存在如服务b这种存在一个分配集群的分片配置,也可能存在如服务c这种不能分片的配置。因此,接入网关设备通过解析服务调用请求,确定其包含的目标服务属于服务b或服务c的情况下,依据其对应的服务配置规则,可以将服务b当前已配置的一个分片集群确定为目标分片集群,若后续根据场景需求,继续针对服务b进行分片扩展,使其对应有多个分片集群后,可以对应更新该服务b的服务配置规则,参照上位对服务a的服务信息的调取过程,实现对服务b的服务信息的调取,本实施例在此不做赘述。
89.而对于图1所示的服务c,由于其不能分片,接收到针对服务c的服务调用请求后,接入网关设备直接该服务调用请求发送至该服务c的服务集群,以从数据库中调取所需的服务信息。
90.综上可知,本技术利用预先构建的服务配置规则,采用应用层支持实现了集群定位功能,尤其是在所请求调用服务支持分片的情况下,接入网关设备可以利用用户客户端的账号标识等分片指示信息,来确定用于转发服务调用请求,从相应数据库调用所需服务信息的目标分片集群,简化了数据服务处理步骤,提高了处理效率,且支持跨库的数据查询,能够更好地满足业务需求,提高用户体验。
91.应该理解的是,对于本技术确定的目标分片集群,可以是目标服务对应的多个分片集群中的一个或多个分片集群,所以说,同一用户账号的服务信息,可以存储至一个或多个数据库,实现了跨库数据查询。
92.步骤s24,将该服务调用请求转发至目标分片集群,以使该目标分片集群响应服务调用请求,从该目标分片集群对应的目标数据库中,调取所请求的服务信息反馈至用户客户端。
93.对于任一用户客户端针对某业务发送的服务调用请求,接入网关设备按照上文描述的方式,确定响应该服务调用请求的目标分片集群后,可以将该服务调用请求转发至目标分片集群,以使该目标分片集群响应该服务调用请求,通过某应用进程查询该目标分片集群对应的目标数据库中,与该用户客户端的用户账号相对应的服务信息,将查询到的服务信息反馈至该用户客户端,以满足用户客户端的业务需求。
94.如上述分析,面对如金融行业内,急剧增加的用户量以及订单交易量,本技术提出在应用层面上分片解决系统弹性扩展,即预先针对该行业所具有的各类服务,结合实际需求确定相应类型服务是否支持分片,若支持分片,预先配置其对应的一个或多个分片集群,并确定每一个分区集群所对应的数据库,定义该数据库能够存储的哪些用户账号关联的服务信息等,即预先确定各类型服务的服务配置规则。这样,在实际应用中,任一用户客户端发送针对目标服务的服务调用请求至接入网关设备,由应用层的接入网关设备直接依据预先获得的服务配置规则,确定该服务调用请求应该转发至哪个服务集群,甚至可以确定由该服务集群的哪个应用进程,从该服务集群连接的数据库中调取所需服务信息,满足相应用户客户端的业务需求。
95.基于此,随着用户量和/或交易量的增多,本技术可以直接按照上述方式配置相应用户账号与各类型服务的分片集群之间的对应关系,和/或将各用户执行的关于某服务的订单交易产生的服务信息,发送至对应的数据库存储,满足了金融业务系统的无限制客户
量和交易量扩展需求。
96.参照图3,为本技术提出的数据服务处理方法的又一可选示例的流程示意图,本实施例可以是对上文实施例描述的数据服务处理方法的一可选细化实现方法,但并不局限于这种细化实现方法,且该方法仍可以由上述接入服务设备执行,如图3所示,该细化实现方法可以包括:
97.步骤s31,接收用户客户端发送的服务调用请求;
98.步骤s32,解析该服务调用请求,得到用户客户端的调用请求信息;
99.其中,调用请求信息可以包括所请求调用的目标服务的目标服务标识,以及针对目标服务的分片指示信息等,本技术对调用请求信息包含的内容不做限制,可视情况而定。
100.关于步骤31和步骤s32的实现过程,可以参照上文实施例相应部分的描述,本实施例不做赘述。
101.步骤s33,调用应用层上构建的与请求调用的目标服务的目标服务标识对应的服务配置规则;
102.步骤s34,依据该服务配置规则,确定目标服务是否配置有多个分片集群,如果是,进入步骤s35;如果否,执行步骤s37;
103.结合上文实施例相应部分的描述,不同类型服务可以配置有对应的服务标识,且针对每一个类型服务构建的服务配置规则,可以表征各用户与存储该类型服务的服务信息的一个或多个数据库之间的映射关系,该映射关系可以依据针对该类型服务配置的一个或多个服务集群生成,且每一个服务集群可以对应一个数据库,可见,该类型服务映射的各数据库可以用于存储不同用户的服务信息,也就是说,本技术在应用层上构建的多个分片集群各自连接的数据库所存储的服务信息不同。
104.需要说明,本技术对服务配置规则的内容及其构建方法不做限制,可视情况而定,且对于金融业务的各类服务,并不一定都支持分片,如图1所示,某一些类型服务可以支持分片,并在应用层构建了一个或多个分片集群;某一些类型服务并不支持分片,此时也可以将连接存储该类型服务的服务信息的数据库的接入服务器称为一个服务集群。
105.步骤s35,依据该服务配置规则,查询该服务调用请求中的分片指示信息映射的分片集群为目标分片集群;
106.步骤s36,将该服务调用请求发送至目标分片集群,以使目标分片集群响应该服务调用请求,从目标分片集群对应的目标数据库中,调取所请求的服务信息反馈至用户客户端;
107.结合上文实施例相应部分的描述,由于目标服务的服务配置规则中,已经明确了不同用户客户端(即不同用户账号)与该目标服务的不同分片集群之间的映射关系,或者说是不同用户客户端与不同分片数据库之间的映射关系,所以,本技术从服务调用请求中获得分片指示信息,如用户账号标识、指定分片标识等内容后,可以按照该服务配置规则,查询该分片指示信息所映射的分片集群,将其作为目标分片集群,来响应用户客户端发送的服务调用请求,从相应的目标数据库中调取所需服务信息,反馈至该用户客户端,满足相应的业务需求。
108.需要说明,本技术对各分片集群如何响应服务调用请求,从该分片集群连接的数据库中,调取当前用户所需的服务信息的实现过程不做限制。在一些实施例中,本技术可以
在服务配置规则中,规定数据库所存储的各用户的服务信息,可以通过哪个分片集群的哪个应用进程调取,这样,在确定目标分片集群中,可以进一步确定该目标分片集群中与分片指示信息对应的目标应用进程,以通过该目标应用进程实现服务信息的调用,但并不局限于这种实现方式。
109.步骤s37,将服务调用请求转发至目标服务对应的目标集群,以使目标集群响应服务调用请求,从目标集群对应的目标数据库中,调取所请求的服务信息反馈至用户客户端。
110.如上文描述,对于用户客户端请求调用的目标服务不支持分片,该类型服务的服务信息存储在一个数据库中,这种情况下,可以将属于这类服务的对应的服务集群确定为目标集群,后续可以按照上文描述的方式,调取所连接数据库中存储的该用户账号关联的服务信息,反馈至用户客户端。
111.综上,本技术实施例通过在应用层面,针对不同类型应用构建相应的分片集群,来解决系统弹性扩展问题,满足相应业务系统的无限制客户量和交易量扩展需求。
112.参照图4,为本技术提出的数据服务处理方法的又一可选示例的流程示意图,本实施例可以是对上文实施例描述的数据服务处理方法的又一可选细化实现方法,该方法仍可以由接入网关设备执行,如图4所示,该方法可以包括:
113.步骤s41,接收用户客户端发送的服务调用请求;
114.步骤s42,解析该服务调用请求,得到该用户客户端的所请求调用的目标服务的目标服务标识,以及针对该目标服务的分片指示信息;
115.步骤s43,调用应用层上构建的与该目标服务标识对应的服务配置规则;
116.步骤s44,依据该服务配置规则,确定目标服务配置的多个分片集群各自的分片标识;
117.关于步骤s41~步骤s44的实现过程,可以参照上文实施例相应部分的描述,本实施例不做赘述。
118.在本技术提出的一些实施例中,针对各服务的服务配置规则,可以是接入网关设备依据该服务注册时的服务注册信息构建的,该服务注册信息可以包括用于表征该服务是否支持分片的分片字段标识;在该服务支持分片的情况下,针对该服务构建的一个或多个分片集群各自的分片标识,以及各分片集群对应的数据库关联的用户标识,该数据库用于存储所关联的用户标识对应的服务信息,本技术对各分片集群对应的数据库类型不做限制,可以相同,也可以不同。
119.因此,本技术的接入网关设备可以依据如上文描述的服务注册信息,构建与该服务的服务标识对应的服务配置规则,这样,在实际应用中,确定目标服务的目标服务标识后,可以直接从各服务标识对应的服务配置规则中,调取该目标服务标识对应的服务配置规则,由此得知该目标服务是否支持分片,即是否配置有多个分片集群,具体可以依据该服务配置规则包含的分片字段标识的内容确定,如分片字段标识为第一内容,可以表示该目标服务不支持分片,若分片字段标识为第二内容,可以表示该目标服务支持分片,该第一内容和第二内容可以分别为1、0,但并不局限于此。
120.这样,通过检测目标服务标识对应的服务配置规则包含的分片字段标识内容,确定该目标服务是否支持分片,若支持,获取针对该目标服务配置的一个或多个分片集群各自的分片标志,本技术实施例主要以图1所示的服务a这类配置有多个分片集群的目标服务
为例进行说明,对于如服务b这类目标服务,由于当前存在一个分片集群,可以不用执行后续检测步骤,直接将该分片集群确定为目标分片集群,但并不局限于这种处理方式。
121.步骤s45,检测分片指示信息中是否存在指定分片标识,若否,进入步骤s46;若是,执行步骤s411;
122.实际应用中,在某些应用场景下,如用户得知不同分片集群连接的各数据库分别存储的不同服务信息,可以直接指定一个或多个分片集群,从其连接的数据库中直接调取所需的服务信息,这种情况下,在使用用户客户端发起服务调用请求时,为了提高数据服务处理效率,可以在该服务调用请求中携带用户指定的分片集群的分片标识,记为指定分片标识。
123.需要说明的是,对于用户客户端指定某一个或多个分片集群,从其连接的数据库中调取所需服务信息的实现方式,并不局限于上文描述的在线指定实现方式,即在发起服务调用请求时指定,也可以是用户预先注册确定并告知接入网关设备的,这种情况下,可以将指定的分片集群的分片标识与该用户的用户标识关联,以便后续依据该用户标识查询其对应的分片集群,实现过程可以参照下文实施例相应部分的描述。
124.基于上述分析,本技术实施例的接入网关设备接收到用户客户端发送的服务调用请求后,可以检测该服务调用请求中是否包含有指定分片标识,也就检测该服务调用请求携带的分片指示信息中是否存在指定分片标识,若存在,即用户指定了获取服务信息的分片集群,可以直接指定的分片集群确定为目标分片集群,从对应的数据库中调取该用户的服务信息。
125.步骤s46,检测分片指示信息是否存在目标用户标识,若是,进入步骤s47;若否,执行步骤s413;
126.步骤s47,检测多个分片标识各自对应的用户标识中是否存在目标用户标识,若存在,进入步骤s48;若不存在,执行步骤s49;
127.步骤s48,将该目标用户标识映射的分片集群确定为目标分片集群;
128.继上文描述,若用户发起服务调用请求时,并未指定响应该服务调用请求的分片集群,可以进一步检测该服务调用请求中是否包含有用于表示该用户的用户标识,如用户在客户端所在的应用平台注册账号的账号名称、地址等信息,若用户客户端提供了该用户的用户标识,接入网关设备可以依据预先获取的各服务配置规则,检测是否为该用户配置了对应的分片集群,即该类服务的多个分片集群各自对应的用户标识中,是否存在用户客户端的目标用户标识,若存在,说明预先为该用户分配了分片集群;反之,说明预先并未给该用户分配分片集群,需要进一步确定响应该用户客户端发送的服务调用请求的分片集群。
129.可见,在本技术实施例中,确定服务调用请求包含目标用户标识的情况下,可以将该目标用户标识作为输入参数,输入相应的服务配置规则,以获取相应的分片标识,将具有该分片标识的分片集群确定为目标分片集群。
130.若通过对服务调用请求携带的信息内容的分析,确定其并未包含用户客户端的目标用户标识,如下文描述的方式,可以随机选择一个分片集群作为目标分片集群,来响应该用户客户端发送的针对目标服务的服务调用请求;当然,本技术也可以依据各分片集群的负载情况选择一目标分片集群,本技术对这种场景下确定目标分片集群的方式不做限制,
可视情况而定。
131.步骤s49,检测这多个集群中是否存在默认分片集群,若存在,进入步骤s410;若不存在,执行步骤s414;
132.步骤s410,将默认分片集群确定为目标分片集群;
133.按照上文描述的检测方法,虽然用户客户端提供了其目标用户标识,但在服务注册阶段,并未针对该目标用户标识分配对应的分片集群,接入网关设备对各分片标识对应的用户标识中,无法查询到目标用户标识,这种情况下,可以选择预设的默认分片集群为响应该服务调用请求的目标分片集群,若预先未设置默认分片集群,可以输出请求转发异常提示信息,以使用户据此重新发起不包含目标用户标识的服务调用请求,或包含指定分片标识的服务调用请求,或请求注册目标用户标识对应的分片标识,接收到成功注册反馈信息后,再重新发送上述服务调用请求等,本技术对接收到请求转发异常提示信息的后续处理方法不做限制,可视情况而定。
134.步骤s411,是否存在到该指定分片标识对应的指定分片集群,若存在,进入步骤s412;若否,执行步骤s414;
135.步骤s412,将该指定分片集群确定为目标分片集群;
136.步骤s413,从这多个分片集群中,随机选择一分片集群为目标分片集群;
137.步骤s414,输出请求转发异常提示信息;
138.继上文描述,用户通过客户端发起服务调用请求时,提供了指定分片标识,但该指定分片标识并不一定真实存在,也就是说,目标服务对应的多个分片集群各自的分片标识中可能不存在该指定分片标识,意味着用户指定分片集群响应服务调用请求的操作并未成功,这种情况下,可以按照上述方式输出请求转发异常提示信息,以提醒用户重新发起服务调用请求;也可以随机选择一分片集群为目标分片集群等,本技术对此不做限制。
139.步骤s415,将服务调用请求发送至目标分片集群,由该目标分片集群依据负载均衡策略,通过相应的应用进程从目标数据库中调取所请求的服务信息,反馈至用户客户端。
140.在实际应用中,本技术对任一服务集群(如上述目标分片集群)按照负载均衡策略,响应接收到的各用户客户端发送的服务调用请求实现过程不做限制,如可以由其具有的多个应用进程依次轮流分发,也可以按照预设的比例权重进行分发等,可视情况而定,本技术实施例在此不做详述。
141.综上所述,本技术实施例中,通过在应用层面上对不同类型服务进行分片,由不同的分片集群替代数据库层面的分库分表,将数据库和服务作为一个整体(即一个服务集群)进行扩展,解决了数据库分库分表方法中,网络交互导致的性能损失,因sql语言约束无法实现跨库查询,路由复杂降低处理效率等技术问题,也就是说,本技术可以简单灵活、不受数据库类型约束地实现系统的无限扩展和扩容,满足如金融业务的无限制客户量和交易量扩展的应用需求。
142.参照图5,为本技术提出的数据服务处理装置的一可选示例的结构示意图,该装置可以包括:
143.服务调用请求接收模块51,用于接收用户客户端发送的服务调用请求;
144.调用请求信息得到模块52,用于解析所述服务调用请求,得到所述用户客户端的调用请求信息;所述调用请求信息包括所请求调用的目标服务的目标服务标识,以及针对
所述目标服务的分片指示信息;
145.目标分片集群获得模块53,用于依据应用层上构建的与所述目标服务标识对应的服务配置规则,获得所述目标服务标识和所述分片指示信息映射的目标分片集群;
146.服务调用请求转发模块54,用于将所述服务调用请求转发至所述目标分片集群,以使所述目标分片集群响应所述服务调用请求,从所述目标分片集群对应的目标数据库中,调取所请求的服务信息反馈至所述用户客户端。
147.可选的,该目标分片集群可以包括:
148.响应单元,用于按照负载均衡策略,调用所述目标分片集群的服务进程,以通过所述服务进程调取所述目标分片集群对应的目标数据库中,所述用户客户端所请求的服务信息,将所述服务信息反馈至所述用户客户端。
149.在本技术提出的一些实施例中,上述目标分片集群获得模块53可以包括:
150.服务配置规则调用单元,用于调用与所述目标服务标识对应的服务配置规则;
151.分片配置检测单元,用于依据所述服务配置规则,确定所述目标服务是否配置有多个分片集群;所述多个分片集群各自的数据库所存储的服务信息不同;
152.目标分片集群查询单元,用于在分片配置检测单元的检测结果为是的情况下,依据所述服务配置规则,查询所述分片指示信息映射的分片集群为目标分片集群;
153.第一服务调用请求转发单元,用于在分片配置检测单元的检测结果为否的情况下,将所述服务调用请求转发至所述目标服务对应的目标集群,以使所述目标集群响应所述服务调用请求,从所述目标集群对应的目标数据库中,调取所请求的服务信息反馈至所述用户客户端。
154.在一种可能的实现方式中,上述目标分片集群查询单元可以包括:
155.指定分片标志检测单元,用于检测所述分片指示信息是否存在指定分片标识;
156.第一目标分片集群确定单元,用于在指定分片标志检测单元的检测结果为是的情况下,将所述指定分片标识对应的指定分片集群确定为目标分片集群。
157.目标用户标识检测单元,用于在指定分片标志检测单元的检测结果为否的情况下,检测所述分片指示信息中是否存在所述用户客户端的目标用户标识;
158.第二目标分片集群确定单元,用于在目标用户标识检测单元的检测结果为是的情况下,查询所述目标用户标识映射的分片集群为目标分片集群;
159.第三目标分片集群确定单元,用于在目标用户标识检测单元的检测结果为否的情况下,从所述多个分片集群中,随机选择一分片集群为目标分片集群。
160.可选的,上述第二目标分片集群确定单元可以包括:
161.第一查询单元,用于查询所述分片指示信息映射的分片集群为目标分片集群;
162.默认分片集群检测单元,用于在未查询到目标用户标识映射的分片集群的情况下,检测所述多个分片集群中是否存在默认分片集群;
163.第四目标分片集群确定单元,用于在默认分片集群检测单元的检测结果为是的情况下,将所述默认分片集群确定为目标分片集群。
164.异常提示模块,用于在默认分片集群检测单元的检测结果为否的情况下,输出请求转发异常提示信息。
165.基于上文各实施例描述的装置,为了构建各类型服务对应的服务配置规则,上述
装置还可以包括:
166.服务注册信息获取模块,用于获取任一类型服务的服务注册信息;
167.其中,所述服务注册信息可以包括用于表征该服务是否支持分片的分片字段标识;若支持分片,针对该服务构建的一个或多个分片集群各自的分片标识,以及各所述分片集群对应的数据库关联的用户标识等信息,该数据库可以用于存储所关联的用户标识对应的服务信息;
168.服务配置规则构建模块,用于依据所述服务注册信息,构建与该服务的服务标识对应的服务配置规则。
169.需要说明的是,关于上述各装置实施例中的各种模块、单元等,均可以作为程序模块存储在存储器中,由处理器执行存储在存储器中的上述程序模块,以实现相应的功能,关于各程序模块及其组合所实现的功能,以及达到的技术效果,可以参照上述方法实施例相应部分的描述,本实施例不再赘述。
170.本技术还提供了一种计算机可读存储介质,其上可以存储计算机程序,该计算机程序可以被处理器调用并加载,以实现上述实施例描述的数据服务处理方法的各步骤。
171.参照图6所示,为适用于本技术提出的数据服务处理方法的接入网关设备的一可选示例的硬件结构示意图,如图6所示,该接入网关设备可以包括至少一个存储器61和至少一个处理器62,其中:
172.存储器61可以用于存储实现上述方法实施例描述的数据服务处理方法的程序;处理器62可以用于调用并执行存储器61存储的所述程序,以实现上述相应方法实施例的数据服务处理方法的各步骤,具体实现过程可以参照上文相应实施例的描述,本实施例在此不做赘述。
173.在本技术实施例中,存储器61可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件或其他易失性固态存储器件。处理器62,可以为中央处理器(central processing unit,cpu)、特定应用集成电路(application

specific integrated circuit,asic)、数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件等。
174.结合上文方法实施例的描述,上述存储器61还可以用于存储不同类型服务对应的服务配置规则,如路由分片信息等,为了获取构建该服务配置规则的相关信息,该接入网关设备还可以包括通信接口,如wifi模块、5g/6g(第五代移动通信网络/第六代移动通信网络)模块、gprs模块等通信模块的数据接口,用于实现与各服务集群的通信连接,以及与不同终端的通信连接等,本技术对该通信接口的类型及数量不做限制,可视情况而定。
175.应该理解的,对于不同类型的通信接口,可以依据相应通信方式遵循的通信协议,实现与连接的终端/服务集群等设备的数交互,实现过程本技术不做详述。
176.另外,图6所示的接入网关设备的结构并不构成对本技术实施例中接入网关设备的限定,在实际应用中,接入网关设备可以包括比图6所示的更多或更少的部件,或者组合某些部件,本技术在此不做一一列举。
177.最后,需要说明的是,关于上述各实施例中,诸如第一、第二等之类的关系术语仅仅用来将一个操作、单元或模块与另一个操作、单元或模块区分开来,而不一定要求或者暗示这些单元、操作或模块之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包
含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法或者系统中还存在另外的相同要素。
178.本说明书中各个实施例采用递进或并列的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置、系统、设备而言,由于其与实施例公开的方法对应,所以描述的比较简单,相关之处参见方法部分说明即可。
179.对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献