一种API网关的集群管理方法及装置与流程

文档序号:33706947发布日期:2023-03-31 22:01阅读:63来源:国知局
一种API网关的集群管理方法及装置与流程
一种api网关的集群管理方法及装置
技术领域
1.本发明涉及通信技术领域,尤其是一种api网关的集群管理方法及装置。


背景技术:

2.现有api网关作为流量转发的关键通道,为了保证其高性能,一般都是无状态的。但是单台api网关的容量是有限的,为了提高api网关的容量,一般会将api网关通过搭建多级架构的方式,来提高容量。但是这种方式一般需要每个api网关配置一份业务数据,配置较为繁琐,api网关的扩容和缩容,还需要同时调整前置负载均衡设备,增加了运维工作的难度,也增加了配置的复杂性。


技术实现要素:

3.为了解决现有技术存在的上述问题,本发明提供一种api网关的集群管理方法及装置,实现了无状态api网关的集群管理,扩展了api网关的容量,提高了api网关的健壮性和可靠性。
4.为实现上述目的,本发明采用下述技术方案:
5.在本发明一实施例中,提出了一种api网关的集群管理方法,该方法包括:
6.通过集群管理中心建立api网关集群;
7.api网关向集群管理中心进行注册,并与配置中心建立连接通道;
8.api网关从配置中心加载所属api网关集群的配置数据到内存,并监听所属api网关集群配置数据的变化情况,将变化的配置数据加载到内存;
9.集群管理中心监控api网关集群的状态,并将api网关集群信息同步给前置负载均衡设备。
10.进一步地,集群管理中心可以建立多个api网关集群,api网关集群通过集群id唯一标识。
11.进一步地,api网关通过集群id向集群管理中心进行注册,加入对应的api网关集群。
12.进一步地,集群管理中心对外呈现api网关集群的状态信息以及api网关集群下的所有api网关的状态信息。
13.进一步地,当api网关集群的配置数据发生变化时,由配置中心向该api网关集群下的所有api网关进行广播,api网关收到配置数据变化通知后,向配置中心读取变化的配置数据并加载到内存。
14.进一步地,集群管理中心监控到api网关集群的状态变化,当有api网关增加或者减少时,则通知对应的api网关集群的前置负载均衡设备进行相应上游节点的增加或者删除,并通知配置中心。
15.在本发明一实施例中,还提出了一种api网关的集群管理装置,该装置包括:
16.集群管理中心,用于建立api网关集群;监控api网关集群的状态,并将api网关集
群信息同步给前置负载均衡设备;
17.api网关,用于向集群管理中心进行注册,并与配置中心建立连接通道;从配置中心加载所属api网关集群的配置数据到内存,并监听所属api网关集群配置数据的变化情况,将变化的配置数据加载到内存;
18.配置中心,用于管理api网关集群的配置数据。
19.进一步地,集群管理中心可以建立多个api网关集群,api网关集群通过集群id唯一标识。
20.进一步地,api网关通过集群id向集群管理中心进行注册,加入对应的api网关集群。
21.进一步地,集群管理中心对外呈现api网关集群的状态信息以及api网关集群下的所有api网关的状态信息。
22.进一步地,当api网关集群的配置数据发生变化时,由配置中心向该api网关集群下的所有api网关进行广播,api网关收到配置数据变化通知后,向配置中心读取变化的配置数据并加载到内存。
23.进一步地,集群管理中心监控到api网关集群的状态变化,当有api网关增加或者减少时,则通知对应的api网关集群的前置负载均衡设备进行相应上游节点的增加或者删除,并通知配置中心。
24.在本发明一实施例中,还提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现前述api网关的集群管理。
25.在本发明一实施例中,还提出了一种计算机可读存储介质,计算机可读存储介质存储有执行api网关的集群管理计算机程序。
26.有益效果:
27.本发明扩展了api网关的容量,提高了api网关的健壮性以及可靠性。
附图说明
28.图1是本发明api网关的集群管理方法流程示意图;
29.图2是本发明api网关的集群管理装置结构示意图;
30.图3是本发明计算机设备结构示意图。
具体实施方式
31.下面将参考若干示例性实施方式来描述本发明的原理和精神,应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
32.本领域技术人员知道,本发明的实施方式可以实现为一种装置、装置、节点、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
33.本发明的实施方式,提出了一种api网关的集群管理方法及装置,通过集群管理中
心建立api网关集群,api网关向集群管理中心进行注册,并与配置中心建立连接通道;api网关从配置中心加载所属api网关集群的配置数据到内存,并监听所属api网关集群配置数据的变化情况,将变化的配置数据加载到内存;集群管理中心监控api网关集群的状态,并将api网关集群信息同步给前置负载均衡设备。本发明实现了无状态api网关的集群管理,扩展了api网关的容量,提高了api网关的健壮性和可靠性。
34.下面参考本发明的若干代表性实施方式,详细阐释本发明的原理和精神。
35.图1是本发明api网关的集群管理方法流程示意图。如图1所示,该方法包括:
36.s1:通过集群管理中心建立api网关集群;
37.集群管理中心可以建立多个api网关集群,api网关集群通过集群id唯一标识。
38.api网关集群由多个api网关以及多个前置负载均衡设备构成。
39.s2:api网关向集群管理中心进行注册,并与配置中心建立连接通道;
40.api网关通过集群id向集群管理中心进行注册,加入对应的api网关集群。
41.api网关注册成功之后,从集群管理中心获取配置中心通信方式以及密钥;
42.api网关与配置中心建立websocket连接,并从配置中心拉取所属api网关集群的配置数据。
43.配置中心由分布式数据库构成,并通过集群id区分每个api网关集群的配置数据,每个api网关集群的配置数据相互隔离。
44.s3:api网关监听所属api网关集群配置数据的变化情况,并将变化的配置数据加载到内存;
45.具体的,用户通过web页面对api网关集群进行配置。
46.具体的,api网关在数据库初始化阶段,从配置中心加载所属api网关集群的全量配置数据到api网关的内存;
47.api网关通过内存中的全量配置数据,对api请求进行处理,提高了处理的性能。
48.api网关维持与配置中心的websocket连接关系。
49.当api网关集群的配置数据发生变化时,由配置中心向该api网关集群下的所有api网关进行广播,api网关收到配置数据变化通知后,向配置中心读取变化的配置数据并加载到内存,从而实现了配置数据的动态加载。
50.s4:集群管理中心监控api网关集群的状态,并同步将api网关集群信息同步给前置负载均衡设备。
51.api网关集群信息包括api网关集群的节点信息、端口信息以及权重。
52.集群管理中心对外呈现api网关集群的状态信息以及api网关集群下的所有api网关的状态信息。
53.集群管理中心监控到api网关集群的状态变化,当有api网关增加或者减少时,则通知对应的api网关集群的前置负载均衡设备进行相应上游节点的增加或者删除。
54.需要说明的是,尽管在上述实施例及附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
55.为了对上述api网关的集群管理方法进行更为清楚的解释,下面结合一个具体的
实施例来进行说明,然而值得注意的是该实施例仅是为了更好地说明本发明,并不构成对本发明不当的限定。
56.实施例:
57.s1:通过集群管理中心建立api网关集群;
58.用户通过集群管理中心建立api网关集群,每个api网关集群中的api网关是相互独立的。
59.具体实施时,用户在集群管理中心创建集群名称,并为集群分配集群id。
60.集群管理中心可以建立多个api网关集群,api网关集群通过集群id唯一标识。
61.api网关集群由多个api网关以及多个前置负载均衡设备构成。
62.s2:api网关向集群管理中心进行注册,并与配置中心建立连接通道;
63.api网关通过集群id向集群管理中心进行注册,加入对应的api网关集群。
64.用户为api网关配置集群管理中心的地址以及所属集群id,api网关初始化阶段,向集群管理中心进行注册,集群管理中心收到注册信息之后,根据注册信息中的集群id,确定该api网关所属的api网关集群。
65.api网关注册成功之后,从集群管理中心获取配置中心通信方式以及密钥;
66.api网关与配置中心建立websocket连接,并从配置中心拉取所属api网关集群的配置数据。
67.配置中心由分布式数据库构成,并通过集群id隔离每个api网关集群的配置数据,每个api网关集群的配置数据相互隔离。
68.s3:api网关监听所属api网关集群配置数据的变化情况,并将变化的配置数据加载到内存;
69.具体的,用户通过web页面对api网关集群进行配置,通过web配置的数据,被写进配置中心。
70.具体的,api网关在数据库初始化阶段,从配置中心加载所属api网关集群的全量配置数据到api网关的内存;
71.api网关通过内存中的配置数据,对api请求进行处理,提高了处理的性能。
72.api网关维持与配置中心的websocket连接关系。
73.当api网关集群的配置数据发生变化时,由配置中心向api网关集群下的所有api网关进行广播,api网关收到配置数据变化通知后,向配置中心读取变化的配置数据并加载到内存,从而实现了配置数据的动态加载。
74.具体实施时,可以将配置数据按照业务类型定义为不同的key,配置中心只需要发送变化配置数据的key,api网关即可知道哪个业务的配置发生变化,并发送对应的查询接口获取变化的配置数据。
75.具体实施时,可以由api网关不断的比对配置中心对应业务的版本变化情况,根据版本确定配置数据是否变化,并及时更新配置数据。
76.具体实施时,也可以由配置中心主动将变化的配置数据推送至对应的api网关。
77.具体实施时,当api网关增加或者删除时,由集群管理中心将api网关所代理的后端服务的节点信息同步给配置中心。
78.s4:集群管理中心监控api网关集群的状态,并同步将api网关集群信息同步给前
置负载均衡设备。
79.api网关集群信息包括api网关集群的节点信息、端口信息以及权重。
80.集群管理中心监控到api网关集群的状态变化,当有api网关增加或者减少时,则通知对应api网关集群的前置负载均衡设备进行相应上游节点即api网关所代理的后端服务的节点的增加或者删除,并通知配置中心。
81.集群管理中心,不仅管理api网关,还管理api网关的前置负载均衡设备。
82.具体实施时,一组前置负载均衡设备可以负责多个api网关集群的业务,前置负载均衡设备可以是四层或者七层代理,也可以是路由器或者交换机,根据网络层信息进行负载均衡。
83.集群管理中心将api网关集群的节点信息,同步给前置负载均衡设备,由前置负载均衡设备调整对应的转发策略。
84.集群管理中心对外呈现api网关集群的状态信息以及api网关集群下的所有api网关的状态信息。
85.基于同一发明构思,本发明还提出一种api网关的集群管理装置。该装置的实施可以参见上述方法的实施,重复之处不再赘述。以下所使用的术语“模块”,可以是实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
86.图2是本发明api网关的集群管理装置结构示意图。如图2所示,该装置包括:
87.集群管理中心101,用于建立api网关集群;监控api网关集群的状态,并将api网关集群信息同步给前置负载均衡设备;
88.集群管理中心101可以建立多个api网关集群,api网关集群通过集群id唯一标识;
89.集群管理中心101对外呈现api网关集群的状态信息以及api网关集群下的所有api网关102的状态信息;
90.集群管理中心101监控到api网关集群的状态变化,当有api网关102增加或者减少时,则通知对应的api网关集群的前置负载均衡设备进行相应上游节点的增加或者删除,并通知配置中心103。
91.api网关102,用于向集群管理中心101进行注册,并与配置中心103建立连接通道;从配置中心103加载所属api网关集群的配置数据到内存,并监听所属api网关集群配置数据的变化情况,将变化的配置数据加载到内存;
92.api网关102通过集群id向集群管理中心101进行注册,加入对应的api网关集群;
93.当api网关集群的配置数据发生变化时,由配置中心103向该api网关集群下的所有api网关进行广播,api网关102收到配置数据变化通知后,向配置中心103读取变化的配置数据并加载到内存。
94.配置中心103,用于管理api网关集群的配置数据。
95.应当注意,尽管在上文详细描述中提及了api网关的集群管理装置的若干模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多模块的特征和功能可以在一个模块中具体化。反之,上文描述的一个模块的特征和功能可以进一步划分为由多个模块来具体化。
96.基于前述发明构思,如图3所示,本发明还提出一种计算机设备200,包括存储器
210、处理器220及存储在存储器210上并可在处理器220上运行的计算机程序230,处理器220执行计算机程序230时实现前述api网关的集群管理方法。
97.基于前述发明构思,本发明还提出一种计算机可读存储介质,计算机可读存储介质存储有执行前述api网关的集群管理的计算机程序。
98.本发明提出的api网关的集群管理方法及装置,扩展了api网关的容量,提高了api网关的健壮性以及可靠性。
99.虽然已经参考若干具体实施方式描述了本发明的精神和原理,但是应该理解,本发明并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本发明旨在涵盖所附权利要求的精神和范围内所包含的各种修改和等同布置。
100.对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1