CN109981757B - 一种面向小规模微服务架构的api网关负载均衡方法 - Google Patents

一种面向小规模微服务架构的api网关负载均衡方法 Download PDF

Info

Publication number
CN109981757B
CN109981757B CN201910188288.2A CN201910188288A CN109981757B CN 109981757 B CN109981757 B CN 109981757B CN 201910188288 A CN201910188288 A CN 201910188288A CN 109981757 B CN109981757 B CN 109981757B
Authority
CN
China
Prior art keywords
service
micro
api gateway
load balancing
small
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910188288.2A
Other languages
English (en)
Other versions
CN109981757A (zh
Inventor
于震
黄伟
鞠强
魏亮
周国庆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qingdao Teld New Energy Technology Co Ltd
Original Assignee
Qingdao Teld New Energy Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qingdao Teld New Energy Technology Co Ltd filed Critical Qingdao Teld New Energy Technology Co Ltd
Priority to CN201910188288.2A priority Critical patent/CN109981757B/zh
Publication of CN109981757A publication Critical patent/CN109981757A/zh
Application granted granted Critical
Publication of CN109981757B publication Critical patent/CN109981757B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明属于云计算技术领域,涉及一种负载均衡算法。一种面向小规模微服务架构的API网关负载均衡算法,包括如下步骤:(1)判断请求来源中微服务标识是否包含在API网关路由表中;(2)根据微服务标识确定其所属业务集群;(3)根据业务集群信息检索符合条件的后端微服务容器列表;(4)获取API网关即时时间的毫秒级最后1位数,对后端微服务容器数量取余,将该余数作为后端微服务容器列表的索引,选举为符合条件的后端微服务容器;(5)API网关携带微服务请求参数向特定的后端微服务容器发起服务调用。本发明的面向小规模微服务架构的API网关负载均衡算法,大大提高了API网关系统高可用性,同时简洁的负载均衡算法易于实施,均衡性强。

Description

一种面向小规模微服务架构的API网关负载均衡方法
技术领域
本发明属于云计算技术领域,涉及一种负载均衡方法。
背景技术
微服务架构作为一种轻量级云计算解决方案,基于业务维度将大型复杂软件应用拆分成多个微服务,具有去中心化特征,实现敏捷开发和快速部署。微服务架构在计算机云计算领域获得越来越广泛的应用。微服务架构中通常会搭建API服务网关统一处理来自各客户端的请求,这种架构将真正提供业务运算的各类服务隐藏于后端,既能对业务运算模块起到安全保护的作用,也便于灵活配置扩容。由于后端微服务容器数量众多,解决方案中都会涉及如何选择指定容器提供服务的负载均衡方法。通用负载均衡方法包括随机、轮询、加权轮询、动态轮询、最少连接、最快算法、观察法等。传统的负载均衡方法都基于固定的路由表,后端微服务容器变动时必须更改路由表后重启API网关才能生效。无法提供连续不间断服务。且在负载均衡前加入过多的前置处理,如限流检查、黑白名单、服务器可用性检查。导致算法过重,性能较差。API网关花费大部分开销在前置处理中,对路由表的动态性关注不足。
发明内容
本发明的目的在于支持静态、动态路由表,简化反向代理过程,聚焦API网关的负载均衡特性。
本发明实现其目的采用的技术方案是:一种面向小规模微服务架构的API网关负载均衡方法,包括如下步骤:
(1)判断请求来源中微服务标识是否包含在API网关路由表中;
(2)根据微服务标识确定其所属业务集群;
(3)根据业务集群信息检索符合条件的后端微服务容器列表;
(4)获取API网关即时时间的毫秒级最后1位数,对后端微服务容器数量取余,将该余数作为后端微服务容器列表的索引,选举为符合条件的后端微服务容器;
(5)API网关携带微服务请求参数向特定的后端微服务容器发起服务调用。
进一步的,所述的API网关路由表包括微服务标识与业务集群关系、各业务集群下包含的微服务容器列表两类信息,其中微服务容器信息包含IP地址及开放的端口。
进一步优选的,路由表允许在不重启API网关的情况下动态更新。
进一步优选的,出于安全考虑,避免微服务容器被恶意攻击,IP地址为内网地址。
进一步优选的,步骤(1)中,如果请求的微服务标识不在API网关路由表中,则返回403资源不可用错误给服务请求方。
进一步优选的,步骤(2)中,如果所属业务集群不存在,则返回403资源不可用错误给服务请求方。
进一步优选的,步骤(3)中,如果没有符合条件的后端微服务容器,则返回403资源不可用错误给服务调用方。
与传统的负载均衡方法相比,本发明的面向小规模微服务架构的API网关负载均衡方法,有益效果在于:
1、API网关路由表支持动态更新,可在不重启API网关的前提下生效,提高了系统可用性;
2、基于业务集群管理各微服务容器;
3、针对微服务容器流量控制、资源可用性、健康状况等检查不放在API网关层面,剔除各种复杂因素,使得负载均衡方法本身简洁高效,专注于均衡本身,降低系统开销,提高处理效率;
4、均衡性强。
本发明的面向小规模微服务架构的API网关负载均衡方法,大大提高了API网关系统高可用性,同时简洁的负载均衡方法易于实施,均衡型强。
附图说明
图1是本发明实施例的面向小规模微服务架构的API网关负载均衡方法流程图。
具体实施方式
下面以主流的Nginx反向代理服务器作为API网关的应用示例来阐述本发明的详细技术方案及特征和优点。
1、在Nginx上配置静态路由表信息或部署支持动态路由表更新的管理服务模块;
2、在Nginx上部署包含本发明所述负载均衡方法实现过程的路由服务模块;
3、客户端向API网关发起微服务请求,其中包含微服务标识信息为GetOrders;
4、API网关从微服务路由表中检查微服务标识GetOrder存在,并检索出其所属的业务集群类型为Order;
5、API网关根据根据业务集群类型标识Order从容器路由表中检索符合条件的后端微服务容器列表,获得3个符合条件的微服务容器;
6、API网关获取即时时间为2018-11-22 10:05:04:135,获取其毫秒最后一位数7,对容器数量3取余得到1,将1作为索引从后端微服务容器列表中取得微服务容器2(索引从0开始);
7、API网关携带客户端请求参数向微服务容器2发起服务请求;
8、微服务容器2返回请求结果给API网关,ApI网关反馈给客户端。

Claims (5)

1.一种面向小规模微服务架构的API网关负载均衡方法,其特征在于:包括如下步骤:
(1)判断请求来源中微服务标识是否包含在API网关路由表中;
(2)根据微服务标识确定其所属业务集群;
(3)根据业务集群信息检索符合条件的后端微服务容器列表;
(4)获取API网关即时时间的毫秒级最后1位数,对后端微服务容器数量取余,将该余数作为后端微服务容器列表的索引,选举为符合条件的后端微服务容器;
(5)API网关携带微服务请求参数向特定的后端微服务容器发起服务调用;
其中,所述的API网关路由表包括微服务标识与业务集群关系、各业务集群下包含的微服务容器列表两类信息,其中微服务容器信息包含IP地址及开放的端口;路由表允许在不重启API网关的情况下动态更新。
2.根据权利要求1所述的面向小规模微服务架构的API网关负载均衡方法,其特征在于:IP地址为内网地址。
3.根据权利要求1或2所述的面向小规模微服务架构的API网关负载均衡方法,其特征在于:步骤(1)中,如果请求的微服务标识不在API网关路由表中,则返回403资源不可用错误给服务请求方。
4.根据权利要求1或2所述的面向小规模微服务架构的API网关负载均衡方法,其特征在于:步骤(2)中,如果所属业务集群不存在,则返回403资源不可用错误给服务请求方。
5.根据权利要求1或2所述的面向小规模微服务架构的API网关负载均衡方法,其特征在于:步骤(3)中,如果没有符合条件的后端微服务容器,则返回403资源不可用错误给服务调用方。
CN201910188288.2A 2019-03-13 2019-03-13 一种面向小规模微服务架构的api网关负载均衡方法 Active CN109981757B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910188288.2A CN109981757B (zh) 2019-03-13 2019-03-13 一种面向小规模微服务架构的api网关负载均衡方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910188288.2A CN109981757B (zh) 2019-03-13 2019-03-13 一种面向小规模微服务架构的api网关负载均衡方法

Publications (2)

Publication Number Publication Date
CN109981757A CN109981757A (zh) 2019-07-05
CN109981757B true CN109981757B (zh) 2022-07-08

Family

ID=67078708

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910188288.2A Active CN109981757B (zh) 2019-03-13 2019-03-13 一种面向小规模微服务架构的api网关负载均衡方法

Country Status (1)

Country Link
CN (1) CN109981757B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110532101B (zh) * 2019-09-03 2022-05-03 中国联合网络通信集团有限公司 微服务集群的部署系统及方法
CN111225030B (zh) * 2019-12-16 2023-01-10 航天信息股份有限公司 一种基于信任评估策略对微服务进行选择的方法及系统
CN111683133B (zh) * 2020-06-04 2023-04-28 重庆英楼维兴信息科技有限公司 一种基于微服务架构的业务限流方法及相关装置
CN112738175B (zh) * 2020-12-23 2022-08-23 深圳壹账通智能科技有限公司 请求处理方法及相关设备
CN113114765A (zh) * 2021-04-13 2021-07-13 成都九洲电子信息系统股份有限公司 一种基于反向代理的接口调用系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107612955A (zh) * 2016-07-12 2018-01-19 深圳市远行科技股份有限公司 微服务提供方法、装置及系统
CN108965007A (zh) * 2018-07-19 2018-12-07 北京车和家信息技术有限公司 Api网关接口配置更新方法及装置
CN108989389A (zh) * 2018-06-11 2018-12-11 北京航空航天大学 一种建立智能合约微服务化的方法
CN109194760A (zh) * 2018-09-14 2019-01-11 深圳市佰仟金融服务有限公司 业务处理方法、网络系统及服务器
CN109218212A (zh) * 2018-09-03 2019-01-15 四川长虹电器股份有限公司 一种通过api网关对流量进行限制的方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10691514B2 (en) * 2017-05-08 2020-06-23 Datapipe, Inc. System and method for integration, testing, deployment, orchestration, and management of applications

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107612955A (zh) * 2016-07-12 2018-01-19 深圳市远行科技股份有限公司 微服务提供方法、装置及系统
CN108989389A (zh) * 2018-06-11 2018-12-11 北京航空航天大学 一种建立智能合约微服务化的方法
CN108965007A (zh) * 2018-07-19 2018-12-07 北京车和家信息技术有限公司 Api网关接口配置更新方法及装置
CN109218212A (zh) * 2018-09-03 2019-01-15 四川长虹电器股份有限公司 一种通过api网关对流量进行限制的方法
CN109194760A (zh) * 2018-09-14 2019-01-11 深圳市佰仟金融服务有限公司 业务处理方法、网络系统及服务器

Also Published As

Publication number Publication date
CN109981757A (zh) 2019-07-05

Similar Documents

Publication Publication Date Title
CN109981757B (zh) 一种面向小规模微服务架构的api网关负载均衡方法
US11924273B1 (en) Point to node in a multi-tiered middleware environment
US10291547B2 (en) Systems and methods for determining routing information for a network request
USRE45806E1 (en) System and method for the optimization of database access in data base networks
CN103780679B (zh) 基于http协议的长延时远程调用方法
US9432321B2 (en) Method and apparatus for messaging in the cloud
US7925785B2 (en) On-demand capacity management
US11431827B2 (en) Data center management system
CN109951323B (zh) 一种日志分析方法和系统
CN105681217A (zh) 用于容器集群的动态负载均衡方法及系统
CN110086886B (zh) 动态会话保持方法及装置
CN105227602A (zh) 一种负载均衡的方法、客户端、注册服务器和系统
CN110677348B (zh) 基于缓存集群路由的数据分发方法、访问方法及各自装置
CN107888787B (zh) 一种媒体接入请求的处理方法及装置
CN110581784B (zh) 一种节点健康检查方法、装置及设备
US8930518B2 (en) Processing of write requests in application server clusters
TW201724001A (zh) 全域資訊獲取、處理及更新方法、裝置和系統
CN108989399A (zh) 一种集群公共数据查询方法、系统、装置及可读存储介质
CN111541765B (zh) 一种用于多级路由调度的方法及系统
CN110661780A (zh) 一种基于saas应用的无线城市数据共享方法与系统
CN112866421A (zh) 基于分布式缓存以及nsq的智能合约运行方法及装置
CN1567835A (zh) 智能网中的分布式集群业务管理系统及业务管理方法
CN105025042B (zh) 一种确定数据信息的方法及系统、代理服务器
US20190158585A1 (en) Systems and Methods for Server Failover and Load Balancing
CN111131367A (zh) 一种分布式接入服务处理方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 266100 Shandong Province, Qingdao city Laoshan District Songling Road No. 336

Applicant after: QINGDAO TGOOD ELECTRIC Co.,Ltd.

Applicant after: Telai New Energy Co.,Ltd.

Address before: 266100 Shandong Province, Qingdao city Laoshan District Songling Road No. 336

Applicant before: QINGDAO TGOOD ELECTRIC Co.,Ltd.

Applicant before: QINGDAO TELD NEW ENERGY Co.,Ltd.

CB02 Change of applicant information
TA01 Transfer of patent application right

Effective date of registration: 20200618

Address after: Room 1001, 10 / F, No. 336, Songling Road, Laoshan District, Qingdao City, Shandong Province

Applicant after: Qingdao teltel New Energy Technology Co.,Ltd.

Address before: 266100 Shandong Province, Qingdao city Laoshan District Songling Road No. 336

Applicant before: QINGDAO TGOOD ELECTRIC Co.,Ltd.

Applicant before: Telai New Energy Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant