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

一种集群路由方法、装置、系统及存储介质与流程

2022-02-25 23:15:40 来源:中国专利 TAG:


1.本发明实施例涉及集群技术领域,尤其涉及一种集群路由方法、装置、系统及存储介质。


背景技术:

2.软件即服务(software-as-a-service,saas)云平台,由于租户越来越多,集群的承载量己经不足以支撑业务的发展。目前,在业界,要实现横向扩展,主要的方案是根据租户,来进行分库分表。将不同的租户分配到不同的数据库,以及不同的表号中。
3.但是目前方案有很大的限制性:单一集群,随着数据库的不断增加,如果使用数据库连接池的长连接,单一应用需要初始化的连接会越来越多,从而达到极限,无法真正做到无限地横向扩展的目的。只有单一集群,基本的缓存、nosql存储等基础服务,也会出现并发、性能不够用,也无法通过横向扩容达到扩展的目的。


技术实现要素:

4.本发明提供一种集群路由方法、装置、系统及存储介质,以实现对用户与集群间的通信。
5.第一方面,本发明实施例提供了一种集群路由方法,所述方法包括:
6.接收目标用户所发送的操作请求,所述操作请求根据所述目标用户所关联集群的集群号生成;
7.根据所述操作请求确定目标集群号;
8.根据所述目标集群号确定目标网关地址,将所述操作请求通过所述目标网关地址转发至目标集群号对应的集群。
9.进一步地,所述根据所述操作请求确定目标集群号,包括:
10.对所述操作请求进行解析;
11.将所述操作请求的请求头中携带的集群号确定为目标集群号。
12.进一步地,所述根据所述目标集群号确定目标网关地址,包括:
13.确定所述目标集群号对应的至少一个网关地址;
14.根据各所述网关地址的负载均衡情况确定目标网关地址。
15.进一步地,该方法还包括:
16.接收待维护用户;
17.根据每个集群的用户负载大小进行负载分析,确定待分配集群;
18.将所述待分配集群的集群号与所述待维护用户进行关联。
19.进一步地,该方法还包括:
20.将所述待分配集群的集群号与所述待维护用户的关联关系按照哈希类型存储至redis数据库。
21.第二方面,本发明实施例还提供了一种集群路由装置,该装置包括:
22.请求接收模块,用于接收目标用户所发送的操作请求,所述操作请求根据所述目标用户所关联集群的集群号生成;
23.集群号确定模块,用于根据所述操作请求确定目标集群号;
24.请求转发模块,用于根据所述目标集群号确定目标网关地址,将所述操作请求通过所述目标网关地址转发至目标集群号对应的集群。
25.进一步地,所述集群号确定模块,包括:
26.解析单元,用于对所述操作请求进行解析;
27.集群号确定单元,用于将所述操作请求的请求头中携带的集群号确定为目标集群号。
28.进一步地,所述请求转发模块,包括:
29.网关地址确定单元,用于确定所述目标集群号对应的至少一个网关地址;
30.目标地址确定单元,用于根据各所述网关地址的负载均衡情况确定目标网关地址。
31.进一步地,该装置还包括:
32.用户接收模块,用于接收待维护用户;
33.负载分析模块,用于根据每个集群的用户负载大小进行负载分析,确定待分配集群;
34.关联模块,用于将所述待分配集群的集群号与所述待维护用户进行关联。
35.进一步地,将所述待分配集群的集群号与所述待维护用户的关联关系按照哈希类型存储至redis数据库。
36.第三方面,本发明实施例还提供了一种集群路由系统,该系统包括:云平台和集群路由器;
37.所述云平台包括至少一个集群;
38.所述集群路由器包括:
39.一个或多个处理器;
40.存储器,用于存储一个或多个程序,
41.当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明实施例中任一所述的一种集群路由方法。
42.第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例中任一所述的一种集群路由方法。
43.本发明实施例提供了一种集群路由方法、装置、系统及存储介质,通过接收目标用户所发送的操作请求,所述操作请求根据所述目标用户所关联集群的集群号生成;根据所述操作请求确定目标集群号;根据所述目标集群号确定目标网关地址,将所述操作请求通过所述目标网关地址转发至目标集群号对应的集群。预先为用户分配集群,建立用户和集群号的关联关系,目标用户在请求连接数据库时,根据其关联的集群号生成操作请求;在接收到目标用户的操作请求后,确定用户对应的目标集群号,进一步确定目标网关地址,将操作请求通过目标网关地址转发到对应的集群,实现用户和集群之间的通信。通过对集群进行划分,形成不同的集群,在集群需要进行扩容时,直接增加集群,将用户与集群进行关联,实现用户和集群的连接。集群可以根据用户数量实现横向扩容,避免高并发、性能不够用的
情况发生。目标用户在进行数据请求时,仅需要根据其关联的集群号生成操作请求,即可实现与集群的通信连接。
附图说明
44.图1是本发明实施例一中的一种集群路由方法的流程图;
45.图2是本发明实施例二中的一种集群路由方法的流程图;
46.图3是本发明实施例三中的一种集群路由装置的结构示意图;
47.图4是本发明实施例四中的一种集群路由系统的结构示意图;
48.图5是本发明实施例四中的一种多集群路由实现示例图;
49.图6是本发明实施例四中的一种集群路由器的结构示意图。
具体实施方式
50.为使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术实施例方式作进一步地详细描述。应当明确,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本技术保护的范围。
51.下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
52.在本技术的描述中,需要理解的是,术语“第一”、“第二”、“第三”等仅用于区别类似的对象,而不必用于描述特定的顺序或先后次序,也不能理解为指示或暗示相对重要性。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本技术中的具体含义。此外,在本技术的描述中,除非另有说明,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
53.实施例一
54.图1给出了本技术实施例一提供的一种集群路由方法的流程示意图,该方法适用于将用户的请求转发至对应的集群的情况,该方法具体包括如下步骤:
55.s101、接收目标用户所发送的操作请求,操作请求根据目标用户所关联集群的集群号生成。
56.在本实施例中,目标用户具体可以理解为具有与集群建立连接,使用集群中数据资源的需求的用户。本技术中的集群以saas云平台的集群为例,在saas云平台中部署多个集群,每个集群部署多台服务器。目标用户即为使用此云平台的任意一个租户。操作请求具体可以理解为目标用户发出的请求使用集群资源的通信请求。集群号具体可以理解为用于标识集群的编号,集群号可以采用数字、字母等任意字符进行命名,或者不同类型字符之间组合进行命令。每个集群有唯一的编号,通过集群号可以区分不同的集群。
57.具体的,目标用户在具有访问集群的需求时,根据其关联的集群的集群号生成操作请求,即在操作请求中携带集群号。接收由目标用户所发送的操作请求。
58.现有技术中云平台仅有单一集群,因此,在存在新增用户时,需要进行分库分表。当数据库不断增加,如果使用数据库连接池的长连接,单一应用需要初始化的连接会越来越多,为操作带来不便,同时也会出现并发、性能不够用的情况。因此,本技术中通过云平台为用户提供服务时,采用多集群实现业务功能。即云平台中包含多个集群,在新增用户时,将用户与集群关联,维护用户与集群的关系。如果用户量过大,需要进行扩容,此时可以直接增加集群,避免出现集群高并发、性能不够用的情况发生。
59.s102、根据操作请求确定目标集群号。
60.在本实施例中,目标集群号具体可以理解为目标用户所对应集群的集群号。由于操作请求中携带了集群号,对操作请求进行解析,得到目标集群号。
61.s103、根据目标集群号确定目标网关地址,将操作请求通过目标网关地址转发至目标集群号对应的集群。
62.在本实施例中,目标网关地址具体可以理解为访问目标集群号对应的集群所使用的网关地址。每个集群均有多个网关地址以供用户访问。预先存储每个集群号对应的网关地址,在确定目标集群号后,根据映射关系确定目标集群号对应的各网关地址,从各网关地址中筛选出目标网关地址,将操作请求通过目标网关地址转发到目标集群号对应的集群。
63.本发明实施例提供了一种集群路由方法,通过接收目标用户所发送的操作请求,所述操作请求根据所述目标用户所关联集群的集群号生成;根据所述操作请求确定目标集群号;根据所述目标集群号确定目标网关地址,将所述操作请求通过所述目标网关地址转发至目标集群号对应的集群。预先为用户分配集群,建立用户和集群号的关联关系,目标用户在请求连接数据库时,根据其关联的集群号生成操作请求;在接收到目标用户的操作请求后,确定用户对应的目标集群号,进一步确定目标网关地址,将操作请求通过目标网关地址转发到对应的集群,实现用户和集群之间的通信。通过对集群进行划分,形成不同的集群,在集群需要进行扩容时,直接增加集群,将用户与集群进行关联,实现用户和集群的连接。集群可以根据用户数量实现横向扩容,避免高并发、性能不够用的情况发生。目标用户在进行数据请求时,仅需要根据其关联的集群号生成操作请求,即可实现与集群的通信连接。
64.实施例二
65.图2为本发明实施例二提供的一种集群路由方法的流程图。本实施例的技术方案在上述技术方案的基础上进一步细化,具体主要包括如下步骤:
66.s201、接收目标用户所发送的操作请求,操作请求根据目标用户所关联集群的集群号生成。
67.s202、对操作请求进行解析。
68.具体的,操作请求按照预先约定的报文类型生成,例如本技术实施例中操作请求以http请求为例,在收到操作请求后,按照其对应的解析规则进行解析,得到操作请求的报文中携带的信息。
69.s203、将操作请求的请求头中携带的集群号确定为目标集群号。
70.可以在操作请求的任意位置携带集群号,本技术将集群号保存在操作请求的请求头中,对代码无侵入性。解析操作请求后,确定操作请求的请求头中携带的集群号,将此集群号确定为目标集群号。
71.s204、确定目标集群号对应的至少一个网关地址。
72.在通过集群提供服务时,需要为用户提供集群的访问地址。预先为每个集群分配对应的网关地址,通过网关地址访问集群。由于每个集群均具有对应的集群号,因此预先将每个集群的集群号及其对应的各网关地址关联起来。在确定目标集群号后,通过关联关系确定其对应的网关地址。集群号与网关地址的对应关系可以通过数据表进行存储,存储可以是在本地,也可以是在数据库,例如redis数据库。在已知目标集群号后,查询目标集群号对应的网关地址。
73.s205、根据各网关地址的负载均衡情况确定目标网关地址。
74.集群在工作时,可能存在同时被大量的用户访问的情况,每个用户选择一个网关地址访问此集群,因此一个网关地址可能承载多个用户的访问。通过轮询的负载均衡算法确定每个网关地址的负载均衡情况,选择合适的网关地址作为目标网关地址,提高系统吞吐量,加强数据处理能力,提高网络的灵活性和可用性。
75.s206、将操作请求通过目标网关地址转发至目标集群号对应的集群。
76.将操作请求通过目标网关地址转发至目标集群号对应的集群后,由集群进行相应处理,对目标用户的操作请求进行响应,以便目标用户实现数据查询、存储等相应操作。
77.作为本实施例的一个可选实施例,本可选实施例进一步优化包括a1-a3:
78.a1、接收待维护用户。
79.在本实施例中,待维护用户具体可以理解为云平台的新增用户。当云平台存在新增用户,即新的用户注册云平台账户,使用云平台的资源时,需要为其分配集群。因此,将新增用户作为待维护用户,建立待维护用户与集群的关联关系。待维护用户的账号信息可以由工作人员手动输入,也可以在检测到有新的用户账号注册时,直接将其作为待维护用户。
80.a2、根据每个集群的用户负载大小进行负载分析,确定待分配集群。
81.在本实施例中,待分配集群具体可以理解为等待分配用户的集群。由于每个集群已经负载了一部分用户,不同的集群所负载的用户数量可能不一样,而集群无法在无限制的增加用户数量的情况下保证处理效率。因此,为保证集群的处理效率,需要多个集群共同分担用户。通过对云平台中的每个集群所负载的用户量进行负载分析,从各个集群中选择合适的待分配集群。保证所有用户可以均匀的分配到不同的集群中。
82.a3、将待分配集群的集群号与待维护用户进行关联。
83.确定待分配集群的集群号,建立此集群号与待维护用户之间的关联关系。当待维护用户请求云平台的资源时,待维护用户作为目标用户,根据其关联的集群号生成操作请求,进而实现集群访问。
84.作为本实施例的一个可选实施例,本可选实施例进一步优化包括:将所述待分配集群的集群号与所述待维护用户的关联关系按照哈希类型存储至redis数据库。
85.本发明实施例提供了一种集群路由方法,通过接收目标用户所发送的操作请求,所述操作请求根据所述目标用户所关联集群的集群号生成;根据所述操作请求确定目标集群号;根据所述目标集群号确定目标网关地址,将所述操作请求通过所述目标网关地址转发至目标集群号对应的集群。预先为用户分配集群,建立用户和集群号的关联关系,目标用户在请求连接数据库时,根据其关联的集群号生成操作请求;在接收到目标用户的操作请求后,确定用户对应的目标集群号,进一步确定目标网关地址,将操作请求通过目标网关地
址转发到对应的集群,实现用户和集群之间的通信。通过对集群进行划分,形成不同的集群,在集群需要进行扩容时,直接增加集群,将用户与集群进行关联,实现用户和集群的连接。集群可以根据用户数量实现横向扩容,避免高并发、性能不够用的情况发生。目标用户在进行数据请求时,仅需要根据其关联的集群号生成操作请求,即可实现与集群的通信连接。在存在新增用户时,将其作为待维护用户,考虑集群的用户负载大小,为待维护用户确定待分配集群,并建立关联关系,以便用户快速、便捷的访问集群,同时保证集群的高可用性。
86.实施例三
87.图3为本发明实施例三提供的一种集群路由装置的结构示意图,该装置包括:请求接收模块31、集群号确定模块32和请求转发模块33。
88.其中,请求接收模块31,用于接收目标用户所发送的操作请求,所述操作请求根据所述目标用户所关联集群的集群号生成;
89.集群号确定模块32,用于根据所述操作请求确定目标集群号;
90.请求转发模块33,用于根据所述目标集群号确定目标网关地址,将所述操作请求通过所述目标网关地址转发至目标集群号对应的集群。
91.本发明实施例提供了一种集群路由装置,通过接收目标用户所发送的操作请求,所述操作请求根据所述目标用户所关联集群的集群号生成;根据所述操作请求确定目标集群号;根据所述目标集群号确定目标网关地址,将所述操作请求通过所述目标网关地址转发至目标集群号对应的集群。预先为用户分配集群,建立用户和集群号的关联关系,目标用户在请求连接数据库时,根据其关联的集群号生成操作请求;在接收到目标用户的操作请求后,确定用户对应的目标集群号,进一步确定目标网关地址,将操作请求通过目标网关地址转发到对应的集群,实现用户和集群之间的通信。通过对集群进行划分,形成不同的集群,在集群需要进行扩容时,直接增加集群,将用户与集群进行关联,实现用户和集群的连接。集群可以根据用户数量实现横向扩容,避免高并发、性能不够用的情况发生。目标用户在进行数据请求时,仅需要根据其关联的集群号生成操作请求,即可实现与集群的通信连接。
92.进一步地,所述集群号确定模块32,包括:
93.解析单元,用于对所述操作请求进行解析;
94.集群号确定单元,用于将所述操作请求的请求头中携带的集群号确定为目标集群号。
95.进一步地,所述请求转发模块33,包括:
96.网关地址确定单元,用于确定所述目标集群号对应的至少一个网关地址;
97.目标地址确定单元,用于根据各所述网关地址的负载均衡情况确定目标网关地址。
98.进一步地,该装置还包括:
99.用户接收模块,用于接收待维护用户;
100.负载分析模块,用于根据每个集群的用户负载大小进行负载分析,确定待分配集群;
101.关联模块,用于将所述待分配集群的集群号与所述待维护用户进行关联。
102.进一步地,将所述待分配集群的集群号与所述待维护用户的关联关系按照哈希类型存储至redis数据库。
103.本发明实施例所提供的集群路由装置可执行本发明任意实施例所提供的集群路由方法,具备执行方法相应的功能模块和有益效果。
104.实施例四
105.图4为本发明实施例四提供的一种集群路由系统的结构示意图,该系统包括云平台41和集群路由器42;所述云平台包括至少一个集群411。
106.示例性的,图5为本发明实施例提供的一种多集群路由实现示例图;负载均衡51接收目标用户的操作请求,将操作请求转发给集群路由器52。集群路由器52根据操作请求的请求头中携带的集群号确定目标集群号,根据目标集群号确定目标网关地址,并将操作请求通过目标网关地址转发至目标集群号对应的集群53中。集群路由器52为前端服务,多个集群构成后端服务集群组。
107.图6为本发明实施例四提供的一种集群路由器的结构示意图。如图6所示,该集群路由器包括处理器60、存储器61、输入装置62和输出装置63;集群路由器中处理器60的数量可以是一个或多个,图6中以一个处理器60为例;集群路由器中的处理器60、存储器61、输入装置62和输出装置63可以通过总线或其他方式连接,图6中以通过总线连接为例。
108.存储器61作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的集群路由方法对应的程序指令/模块(例如,集群路由装置中的请求接收模块31、集群号确定模块32和请求转发模块33)。处理器60通过运行存储在存储器61中的软件程序、指令以及模块,从而执行集群路由器的各种功能应用以及数据处理,即实现上述的集群路由方法。
109.存储器61可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器61可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器61可进一步包括相对于处理器60远程设置的存储器,这些远程存储器可以通过网络连接至集群路由器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
110.输入装置62可用于接收输入的数字或字符信息,以及产生与集群路由器的用户设置以及功能控制有关的键信号输入。输出装置63可包括显示屏等显示设备。
111.实施例五
112.本发明实施例五还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种集群路由方法,该方法包括:
113.接收目标用户所发送的操作请求,所述操作请求根据所述目标用户所关联集群的集群号生成;
114.根据所述操作请求确定目标集群号;
115.根据所述目标集群号确定目标网关地址,将所述操作请求通过所述目标网关地址转发至目标集群号对应的集群。
116.当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的集群路由
方法中的相关操作。
117.通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、闪存(flash)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
118.值得注意的是,上述集群路由装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
119.注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
再多了解一些

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

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

相关文献