CN112019622A - 一种流量控制方法、系统、设备及可读存储介质 - Google Patents

一种流量控制方法、系统、设备及可读存储介质 Download PDF

Info

Publication number
CN112019622A
CN112019622A CN202010887340.6A CN202010887340A CN112019622A CN 112019622 A CN112019622 A CN 112019622A CN 202010887340 A CN202010887340 A CN 202010887340A CN 112019622 A CN112019622 A CN 112019622A
Authority
CN
China
Prior art keywords
service
agent
flow control
api
flow
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.)
Granted
Application number
CN202010887340.6A
Other languages
English (en)
Other versions
CN112019622B (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.)
Beijing Inspur Data Technology Co Ltd
Original Assignee
Beijing Inspur Data 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 Beijing Inspur Data Technology Co Ltd filed Critical Beijing Inspur Data Technology Co Ltd
Priority to CN202010887340.6A priority Critical patent/CN112019622B/zh
Publication of CN112019622A publication Critical patent/CN112019622A/zh
Application granted granted Critical
Publication of CN112019622B publication Critical patent/CN112019622B/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/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/20Traffic policing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种流量控制方法、系统、设备及可读存储介质,该方法包括:在容器云平台中创建应用服务后,创建与应用服务对应的服务代理;从容器云平台控制面获取代理配置信息;利用代理配置信息,对服务代理进行配置;利用服务代理,对应用服务进行流量控制。在该方法,可以在容器云平台中自动为应用增加API级的流量控制,同时对业务代码无侵入性,上层应用服务对此无感知。如此,便得开发人员及运维人员能够监控到线上应用的API具体状态,能够实现对API进行流量控制。

Description

一种流量控制方法、系统、设备及可读存储介质
技术领域
本发明涉及计算机应用技术领域,特别是涉及一种流量控制方法、系统、设备及可读存储介质。
背景技术
在当前容器云平台中,对于服务应用的遥测及流量管控均基于应用级别。即,一直缺少7层网络的应用服务API级别的流量管控,这使得开发人员及运维人员只能监控到线上应用的整体水平,无法感知应用API的具体状态,更无法对某个API进行流量控制。如果想做细粒度的流量控制,只能侵入业务代码并手动打埋点,实现困难,且手动操作容易引发业务逻辑混乱。
综上所述,如何有效地实现更细粒度的流量控制等问题,是目前本领域技术人员急需解决的技术问题。
发明内容
本发明的目的是提供一种流量控制方法、系统、设备及可读存储介质,能够实现应用服务API级别的流量管控。
为解决上述技术问题,本发明提供如下技术方案:
一种流量控制方法,包括:
在容器云平台中创建应用服务后,创建与所述应用服务对应的服务代理;
从容器云平台控制面获取代理配置信息;
利用所述代理配置信息,对所述服务代理进行配置;
利用所述服务代理,对所述应用服务进行流量控制。
优选地,还包括:
从所述容器云平台控制面获取代理配置修改信息;
利用所述代理配置修改信息,修改所述服务代理的配置。
优选地,还包括:
利用所述服务代理,统计所述应用服务中特定API的遥测信息;
将所述遥测信息传递给监控数据库。
优选地,还包括:
利用所述遥测信息生成所述特定API的健康报告;所述遥测信息包括;请求数量、响应报文状态统计、每秒请求数量和响应时间。
优选地,利用所述服务代理,对所述应用服务进行流量控制,包括:
获取出入站流量,并利用所述服务代理中的API匹配规则对出入站流量进行控制。
优选地,所述获取出入站流量,并利用所述服务代理中的API匹配规则对出入站流量进行控制,包括:
获取并解析入站流量,得到请求对应的URL;
从所述API匹配规则中查询确定所述URL对应的控制操作;所述控制操作为限制流量进入、熔断直接返回或流量削峰;
对所述请求执行所述控制操作。
优选地,所述获取出入站流量,并利用所述服务代理中的API匹配规则对出入站流量进行控制,包括:
获取并解析出站流量,得到响应码和响应时间;
在利用所述响应码确定对应的目标API出现连续错误报文的情况下,熔断所述目标API;
在所述响应时间超过预设响应阈值的情况下,触发所述目标API对应的流量削峰操作。
一种流量控制系统,包括:
服务代理创建模块,用于在容器云平台中创建应用服务后,创建与所述应用服务对应的服务代理;
配置信息获取模块,用于从容器云平台控制面获取代理配置信息;
配置模块,用于利用所述代理配置信息,对所述服务代理进行配置;
流量控制模块,用于利用所述服务代理,对所述应用服务进行流量控制。
一种流量控制设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现上述流量控制方法的步骤。
一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述流量控制方法的步骤。
应用本发明实施例所提供的方法,在容器云平台中创建应用服务后,创建与应用服务对应的服务代理;从容器云平台控制面获取代理配置信息;利用代理配置信息,对服务代理进行配置;利用服务代理,对应用服务进行流量控制。
在本方法中,在创建应用服务后,为应用服务创建对应的服务代理。然后,从容器云平台控制面获取代理品种信息,基于该代理配置信息便可对服务代理进行配置。完成配置后,便可利用服务代理对应用服务进行流量控制。也就是说,基于每个应用服务对应的服务代理,可以实现服务级别的流量控制。也就是说,在本方法中,可以在容器云平台中自动为应用增加API级的流量控制,同时对业务代码无侵入性,上层应用服务对此无感知。如此,便得开发人员及运维人员能够监控到线上应用的API具体状态,能够实现对API进行流量控制。
相应地,本发明实施例还提供了与上述流量控制方法相对应的流量控制系统、设备和可读存储介质,具有上述技术效果,在此不再赘述。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中一种流量控制方法的实施流程图;
图2为本发明实施例中一种流量控制方法应用架构示意图;
图3为本发明实施例中一种具体的流程示意图;
图4为本发明实施例中一种流量控制装置的结构示意图;
图5为本发明实施例中一种流量控制设备的结构示意图;
图6为本发明实施例中一种流量控制设备的具体结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,图1为本发明实施例中一种流量控制方法的流程图,该方法包括以下步骤:
S101、在容器云平台中创建应用服务后,创建与应用服务对应的服务代理。
首先,需要说明的是,在一个容器云平台中至少包括一个应用,在一个应用中一般包括多个应用服务;一个具体应用服务对应多个API(Application ProgrammingInterface,应用程序接口),API一般对应于服务应用的一个URI。也就是说,在本发明实施例中,一个应用服务对应多个API,该API唯一对应应用中的一个URL。
在创建好一个应用服务之后,为该应用服务创建一个服务代理。即,在本发明实施例中应用服务与服务代理一一对应,或者说本发明实施例中的服务代理是服务级别的。
S102、从容器云平台控制面获取代理配置信息。
其中,容器云平台控制面即能够对容器云平台进行控制管理的控制界面,用户可以在容器云平台控制面中输入配置。
从容器云平台控制面可以获取关于服务代理的配置信息。例如,是否启动某个应用服务对应的服务代理,为某个服务代理设置代理规则(如API匹配规则,即以API为单位,设置流量控制策略)。
S103、利用代理配置信息,对服务代理进行配置。
得到代理配置信息之后,便可基于该代理配置信息为服务代理进行配置。需要说明的是,在一个应用中,对应的服务代理的数量可以小于等于服务的数量,因此,基于代理配置信息对服务代理进行配置可以具体为根据某一个应用服务的代理配置信息对相应的服务代理进行配置;也可以拿到整个应用的全部代理配置信息,依次对各个服务代理进行配置。
对服务代理进行配置即确定服务代理对所代理的应用服务中各个API的流量控制策略。例如,对于某个具有3个API的应用服务,可针对这3个API分别对应的URL分别设置不同的流量控制策略,如对第一个URL设置响应时间阈值(用于判断响应是否超时,进一步确定是否流量削峰),对第二个URL设置连接数阈值(用于控制并发访问量),对第三个URL设置熔断阈值(在连续出现熔断阈值对应次数的错误报文后,对该URL进行熔断处理)。
S104、利用服务代理,对应用服务进行流量控制。
在服务代理配置完成后,便可利用该服务代理,对应用服务进行流量控制。由于每个服务代理仅针对每一个应用服务的流量控制,即流量控制的粒度为服务级别,相较于应用级别的流量控制,本发明实施例所提供的流量控制方案能够让开发人员从服务级别对业务流量进行控制,能够满足复杂应用场景的需求。
具体的,服务代理相对于客户端而言,该服务代理即应用服务,即服务代理充当应用服务的角色与客户端进行交互;服务代理相当于应用服务而言,服务代理即客户端,即服务代理充当客户端角色与应用服务进行交互。也就是说,服务代理能够获取到客户端发往应用服务的数据,也能够获取应用服务发往客户端的数据。为了便于区别,在本实施例中,将客户端发往应用服务的数据称之为入站流量;将应用服务发往客户端的数据称之为出站流量。基于此,在本发明实施例中利用服务代理,对应用服务进行流量控制,具体包括:获取出入站流量,并利用API匹配规则对出入站流量进行控制。
由于出站流量和入站流量对应的数据内容会存在区别,因而在实际应用中,可具体对出站流量和入站流量采用不同的控制策略。
基于入站流量,所进行的流量控制过程,具体包括:
步骤一、获取并解析入站流量,得到请求对应的URL;
步骤二、从API匹配规则中查询确定URL对应的控制操作;控制操作为限制流量进入、熔断直接返回或流量削峰;
步骤三、对请求执行控制操作。
为便于描述,下面将上述三个步骤结合起来进行说明。
在获取到入站流量(即拦截到客户端发往应用服务的请求)后,通过解析该入站流量,可确定请求对应的URL。也就是说,确定出该请求需要被哪一个具体的API所处理。
此时,可以中API匹配规则中查询确定该URL对应的控制操作。即确定出该请求对应的API的控制操作是什么。具体来说,对于一个URL,其对应的控制操作可以为限制流量进入、熔断直接返回或流量削峰。当然,在实际应用中,也可根据需求,为一个URL设置多种控制操作。
其中,限制流量进入即对输入至该API的流量进行控制;熔断直接反馈,即停用该API(未经API处理,而直接反馈应答内容);流量削峰即控制该API的流量峰值,降低并发量。
在明确请求对应的URL的控制操作之后,便可针对该请求执行相应的控制操作。
基于出站流量,所进行的流程控制,具体包括:
步骤一、获取并解析出站流量,得到响应码和响应时间;
步骤二、在利用响应码确定对应的目标API出现连续错误报文的情况下,熔断目标API;
步骤三、在响应时间超过预设响应阈值的情况下,触发目标API对应的流量削峰操作。
为便于描述,下面对上述三个步骤结合起来进行说明。
在应用服务反馈了应答数据后,服务代理即可得到出站流量。在解析应答数据后,可以得到包括但不限于响应码和响应时间。
基于响应码,可以确定对应的目标API是否出现连续错误报文,具体的可以设置一个连续错误数量的阈值,当达到该阈值,确定出现连续错误报文。在确定目标API出现连续错误报文,则可熔断目标API。
基于响应时间,可以确定是否超过预设响应阈值,如果超过,即表明当前目标API无法快速有效地进行应答,由于很可能是因为请求量大,排队等待所致,此时可以对目标API进行削峰操作。
应用本发明实施例所提供的方法,在容器云平台中创建应用服务后,创建与应用服务对应的服务代理;从容器云平台控制面获取代理配置信息;利用代理配置信息,对服务代理进行配置;利用服务代理,对应用服务进行流量控制。
在本方法中,在创建应用服务后,为应用服务创建对应的服务代理。然后,从容器云平台控制面获取代理品种信息,基于该代理配置信息便可对服务代理进行配置。完成配置后,便可利用服务代理对应用服务进行流量控制。也就是说,基于每个应用服务对应的服务代理,可以实现服务级别的流量控制。也就是说,在本方法中,可以在容器云平台中自动为应用增加API级的流量控制,同时对业务代码无侵入性,上层应用服务对此无感知。如此,便得开发人员及运维人员能够监控到线上应用的应用API的具体状态,能够实现对某个API进行流量控制。
需要说明的是,基于上述实施例,本发明实施例还提供了相应的改进方案。在优选/改进实施例中涉及与上述实施例中相同步骤或相应步骤之间可相互参考,相应的有益效果也可相互参照,在本文的优选/改进实施例中不再一一赘述。
优选地,还可对服务代理的配置进行修改,以便适应应用场景需求变化。具体的实现过程,包括:
步骤一、从容器云平台控制面获取代理配置修改信息;
步骤二、利用代理配置修改信息,修改服务代理的配置。
在有业务变化或者是应用场景变化后,用户可以根据实际应用需求,在容器云平台控制面对代理配置进行修改,如修改具体控制策略,修改策略中的参数(如阈值)。如此,便可从容器云平台获取到代理配置修改信息。然后,利用这些代理配置修改信息对服务代理的配置进行修改。
优选地,在实际应用中,不仅会有流量控制需求,还有遥测需求,基于上述实施例的基础上,还可实现应用服务级别的遥测。具体的实现过程,包括:
步骤一、利用服务代理,统计应用服务中特定API的遥测信息;
步骤二、将遥测信息传递给监控数据库。
进一步,还可基于得到的遥测信息生成评估特定API的健康报告。具体实现,利用遥测信息生成特定API的健康报告;遥测信息包括;请求数量、响应报文状态统计、每秒请求数量和响应时间。
为便于理解,下面举例说明,具体如何实现遥测和流量控制。请参考图2,图2为本发明实施例中一种流量控制方法应用架构示意图。
容器云平台中,每创建一个应用服务,平台自动为其装配一个服务代理,服务代理中包括遥测装置、流量控制装置及配置装置。服务代理通过修改iptables(网络过滤器)规则,可以实现劫持服务的出入站流量,通过劫持出入站流量。其中,遥测装置可以统计特定API的入站流量和出站响应;流量控制装置限制某个API的入站流量大小、熔断阈值等;配置装置可以于平台交互,定时更新API配置,并应用到遥测装置和流量控制装置。
其中,配置装置与容器云平台实时通信,配置装置初次启动时,可从容器云平台中拉取本应用服务的配置信息;当容器云平台中有配置更新时,平台控制面组件会实时将配置更新以增量的方式下发到配置装置中,配置装置接收到配置后,实时将此配置应用到遥测装置以及流量控制装置中。遥测装置的配置项主要包括url匹配规则以及统计项。流量控制装置的配置项主要包括url匹配规则、响应时间阈值、连接数阈值、熔断阈值和限流算法等。
具体实现流程,请参考图3,图3为本发明实施例中一种具体的流程示意图。
对于从客户端到应用服务的入站流量,服务代理劫持后将请求信息进行解析,获取请求的url、源ip信息、报文头信息等,然后执行以下操作:
首先,遥测装置会获取请求的url,并与配置中的API匹配规则进行匹配。匹配成功后则会按照对应的统计策略进行统计,如统计有请求次数、每秒请求次数、请求源ip统计等。统计后得到的数据可以依赖平台传递至监控数据库中,也可对接第三方数据库以用于可视化展示。统计完遥测信息之后,将请求和解析数据转发至流量控制装置。
其次,流量控制装置根据配置的API匹配规则,将url匹配的请求进行控制操作,包括限制流量进入、熔断直接返回、流量削峰等。对于限制流量进入,装置会在配置中读取对应API的连接数量,例如接口最大http连接数量等,如果当前连接数大于此阈值,则会拒绝后来的请求;对于熔断功能,本装置会读取最近一段时间内的错误响应数量,若超过设置的阈值,本装置不会再将流量转发至后端服务,而是直接返回带有服务器超时响应码(503)以及特定标签的响应报文;对于流量削峰,本装置会依据配置文件采用令牌桶算法或其他流量限制算法,将过多的请求放入请求队列等待下一步处理,以免对后端服务造成过大的压力。
对于从应用服务到客户端的出站流量,服务代理劫持后将请求信息进行解析,获取响应报文的响应状态码、响应时间、请求头信息等,然后执行以下操作:
响应报文首先到达流量控制装置,此装置会获取响应码,若同一API连续出现多次错误报文,则会以特定标识标记此API,从而触发此API的熔断;当响应时间超过配置中的阈值,则会标记特定标识,从而触发流量削峰操作。
当流量到达遥测装置时,遥测装置根据报文响应码进行统计,也可以根据配置对报文中特定字段进行统计,统计数据存入数据库中。此外,遥测装置也会对接口响应时间进行统计,并根据流量控制装置生成的特定标识为API生成简单的健康报告。响应报文最终发送到客户端。
配置装置会根据容器云平台控制面的操作,对遥测装置和流量控制装置的配置实时更新。
也就是说,在容器云平台中,基于服务代理实现出入站流量的劫持,并在解析请求后,依据配置对请求的API流量进行特定统计以及流量控制操作,从而无侵入的实现应用服务的API级别的遥测和流量控制。
相应于上面的方法实施例,本发明实施例还提供了一种流量控制系统,下文描述的流量控制系统与上文描述的流量控制方法可相互对应参照。
参见图4所示,该装置包括以下模块:
服务代理创建模块101,用于在容器云平台中创建应用服务后,创建与应用服务对应的服务代理;
配置信息获取模块102,用于从容器云平台控制面获取代理配置信息;
配置模块103,用于利用代理配置信息,对服务代理进行配置;
流量控制模块104,用于利用服务代理,对应用服务进行流量控制。
应用本发明实施例所提供的系统,在容器云平台中创建应用服务后,创建与应用服务对应的服务代理;从容器云平台控制面获取代理配置信息;利用代理配置信息,对服务代理进行配置;利用服务代理,对应用服务进行流量控制。
在本系统中,在创建应用服务后,为应用服务创建对应的服务代理。然后,从容器云平台控制面获取代理品种信息,基于该代理配置信息便可对服务代理进行配置。完成配置后,便可利用服务代理对应用服务进行流量控制。也就是说,基于每个应用服务对应的服务代理,可以实现服务级别的流量控制。也就是说,在本系统中,可以在容器云平台中自动为应用增加API级的流量控制,同时对业务代码无侵入性,上层应用服务对此无感知。如此,便得开发人员及运维人员能够监控到线上应用的API具体状态,能够实现对API进行流量控制。
在本发明的一种具体实施方式中,还包括:
配置修改模块,用于从容器云平台控制面获取代理配置修改信息;利用代理配置修改信息,修改服务代理的配置。
在本发明的一种具体实施方式中,还包括:
遥测模块,用于利用服务代理,统计应用服务中特定API的遥测信息;将遥测信息传递给监控数据库。
在本发明的一种具体实施方式中,还包括:
健康报告模块,用于利用遥测信息生成特定API的健康报告;遥测信息包括;请求数量、响应报文状态统计、每秒请求数量和响应时间。
在本发明的一种具体实施方式中,流量控制模块104,具体用于获取出入站流量,并利用服务代理中的API匹配规则对出入站流量进行控制。
在本发明的一种具体实施方式中,流量控制模块104,具体用于获取并解析入站流量,得到请求对应的URL;从API匹配规则中查询确定URL对应的控制操作;控制操作为限制流量进入、熔断直接返回或流量削峰;对请求执行控制操作。
在本发明的一种具体实施方式中,流量控制模块104,具体用于获取并解析出站流量,得到响应码和响应时间;在利用响应码确定对应的目标API出现连续错误报文的情况下,熔断目标API;在响应时间超过预设响应阈值的情况下,触发目标API对应的流量削峰操作。
相应于上面的方法实施例,本发明实施例还提供了一种流量控制设备,下文描述的一种流量控制设备与上文描述的一种流量控制方法可相互对应参照。
参见图5所示,该流量控制设备包括:
存储器332,用于存储计算机程序;
处理器322,用于执行计算机程序时实现上述方法实施例的流量控制方法的步骤。
具体的,请参考图6,图6为本实施例提供的一种流量控制设备的具体结构示意图,该流量控制设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)322(例如,一个或一个以上处理器)和存储器332,存储器332存储有一个或一个以上的计算机应用程序342或数据344。其中,存储器332可以是短暂存储或持久存储。存储在存储器332的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对数据处理设备中的一系列指令操作。更进一步地,中央处理器322可以设置为与存储器332通信,在流量控制设备301上执行存储器332中的一系列指令操作。
流量控制设备301还可以包括一个或一个以上电源326,一个或一个以上有线或无线网络接口350,一个或一个以上输入输出接口358,和/或,一个或一个以上操作系统341。
上文所描述的流量控制方法中的步骤可以由流量控制设备的结构实现。
相应于上面的方法实施例,本发明实施例还提供了一种可读存储介质,下文描述的一种可读存储介质与上文描述的一种流量控制方法可相互对应参照。
一种可读存储介质,可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例的流量控制方法的步骤。
该可读存储介质具体可以为U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可存储程序代码的可读存储介质。
本领域技术人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

Claims (10)

1.一种流量控制方法,其特征在于,包括:
在容器云平台中创建应用服务后,创建与所述应用服务对应的服务代理;
从容器云平台控制面获取代理配置信息;
利用所述代理配置信息,对所述服务代理进行配置;
利用所述服务代理,对所述应用服务进行流量控制。
2.根据权利要求1所述的流量控制方法,其特征在于,还包括:
从所述容器云平台控制面获取代理配置修改信息;
利用所述代理配置修改信息,修改所述服务代理的配置。
3.根据权利要求1所述的流量控制方法,其特征在于,还包括:
利用所述服务代理,统计所述应用服务中特定API的遥测信息;
将所述遥测信息传递给监控数据库。
4.根据权利要求3所述的流量控制方法,其特征在于,还包括:
利用所述遥测信息生成所述特定API的健康报告;所述遥测信息包括;请求数量、响应报文状态统计、每秒请求数量和响应时间。
5.根据权利要求1所述的流量控制方法,其特征在于,利用所述服务代理,对所述应用服务进行流量控制,包括:
获取出入站流量,并利用所述服务代理中的API匹配规则对出入站流量进行控制。
6.根据权利要求5所述的流量控制方法,其特征在于,所述获取出入站流量,并利用所述服务代理中的API匹配规则对出入站流量进行控制,包括:
获取并解析入站流量,得到请求对应的URL;
从所述API匹配规则中查询确定所述URL对应的控制操作;所述控制操作为限制流量进入、熔断直接返回或流量削峰;
对所述请求执行所述控制操作。
7.根据权利要求5所述的流量控制方法,其特征在于,所述获取出入站流量,并利用所述服务代理中的API匹配规则对出入站流量进行控制,包括:
获取并解析出站流量,得到响应码和响应时间;
在利用所述响应码确定对应的目标API出现连续错误报文的情况下,熔断所述目标API;
在所述响应时间超过预设响应阈值的情况下,触发所述目标API对应的流量削峰操作。
8.一种流量控制系统,其特征在于,包括:
服务代理创建模块,用于在容器云平台中创建应用服务后,创建与所述应用服务对应的服务代理;
配置信息获取模块,用于从容器云平台控制面获取代理配置信息;
配置模块,用于利用所述代理配置信息,对所述服务代理进行配置;
流量控制模块,用于利用所述服务代理,对所述应用服务进行流量控制。
9.一种流量控制设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述流量控制方法的步骤。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述流量控制方法的步骤。
CN202010887340.6A 2020-08-28 2020-08-28 一种流量控制方法、系统、设备及可读存储介质 Active CN112019622B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010887340.6A CN112019622B (zh) 2020-08-28 2020-08-28 一种流量控制方法、系统、设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010887340.6A CN112019622B (zh) 2020-08-28 2020-08-28 一种流量控制方法、系统、设备及可读存储介质

Publications (2)

Publication Number Publication Date
CN112019622A true CN112019622A (zh) 2020-12-01
CN112019622B CN112019622B (zh) 2023-05-26

Family

ID=73502793

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010887340.6A Active CN112019622B (zh) 2020-08-28 2020-08-28 一种流量控制方法、系统、设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN112019622B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113220723A (zh) * 2021-04-27 2021-08-06 深圳市云网万店科技有限公司 一种流量控制方法、装置、计算机设备及存储介质
CN113965421A (zh) * 2021-12-23 2022-01-21 北京微步在线科技有限公司 应用程序接口的获取方法、装置和分析方法、装置
WO2022206231A1 (zh) * 2021-03-30 2022-10-06 阿里巴巴(中国)有限公司 Kubernetes集群的负载均衡的处理方法、装置及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109104467A (zh) * 2018-07-25 2018-12-28 北京京东尚科信息技术有限公司 开发环境构建方法、装置以及平台系统和存储介质
CN109688005A (zh) * 2018-12-24 2019-04-26 华中科技大学 一种高可用无侵入的系统架构
CN110380986A (zh) * 2019-07-23 2019-10-25 中南民族大学 基于Zuul的流量限制方法、装置、设备及存储介质
CN111277631A (zh) * 2020-01-13 2020-06-12 广州虎牙科技有限公司 负载均衡的配置方法、装置、系统、设备及存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109104467A (zh) * 2018-07-25 2018-12-28 北京京东尚科信息技术有限公司 开发环境构建方法、装置以及平台系统和存储介质
CN109688005A (zh) * 2018-12-24 2019-04-26 华中科技大学 一种高可用无侵入的系统架构
CN110380986A (zh) * 2019-07-23 2019-10-25 中南民族大学 基于Zuul的流量限制方法、装置、设备及存储介质
CN111277631A (zh) * 2020-01-13 2020-06-12 广州虎牙科技有限公司 负载均衡的配置方法、装置、系统、设备及存储介质

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022206231A1 (zh) * 2021-03-30 2022-10-06 阿里巴巴(中国)有限公司 Kubernetes集群的负载均衡的处理方法、装置及存储介质
CN113220723A (zh) * 2021-04-27 2021-08-06 深圳市云网万店科技有限公司 一种流量控制方法、装置、计算机设备及存储介质
CN113965421A (zh) * 2021-12-23 2022-01-21 北京微步在线科技有限公司 应用程序接口的获取方法、装置和分析方法、装置

Also Published As

Publication number Publication date
CN112019622B (zh) 2023-05-26

Similar Documents

Publication Publication Date Title
CN112019622A (zh) 一种流量控制方法、系统、设备及可读存储介质
US10897406B2 (en) Scheduling method for content delivery network, and device
KR101730584B1 (ko) 실시간 데이터를 제공하기 위한 시스템 및 방법
EP2858016A1 (en) System and method for orchestrating mobile data networks in a machine-to-machine environment
US20090157835A1 (en) Presence Enabled Instance Messaging for Distributed Energy Management Solutions
US20130212227A1 (en) System and method for streaming data via http
US20100008377A1 (en) Queue management based on message age
CN108696400A (zh) 网络监测方法和装置
KR101416280B1 (ko) 이벤트 처리 시스템 및 방법
US20120036208A1 (en) Polling-based secure network message notification system and method with performance enhancing features
CN110620699B (zh) 消息到达率确定方法、装置、设备和计算机可读存储介质
CN112087499A (zh) 一种物联网云管理方法及系统
CN113791759A (zh) 代码开发的处理方法、装置、电子设备与存储介质
US7512949B2 (en) Status hub used by autonomic application servers
CN112448987A (zh) 一种熔断降级的触发方法、系统和存储介质
CN116633991B (zh) 用于远程场景的用户界面显示控制方法和系统
US20170223136A1 (en) Any Web Page Reporting and Capture
CN113542424B (zh) 数据处理方法、装置、设备及可读存储介质
CN112436951B (zh) 一种预知流量路径的方法和装置
CN115883639A (zh) 一种web实时消息推送方法及装置、设备、存储介质
CN114095531A (zh) 智慧城市物联网设备的云管理方法以及物联网云平台系统
KR102000199B1 (ko) 사물 인터넷 플랫폼 서비스 제공 방법 및 서버장치
US11526574B2 (en) Server of statistics for optimization of client-server requests
KR20190070630A (ko) 서버 토폴로지 생성 방법
US20120331094A1 (en) Multi-party reporting in profile-based data collection

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
GR01 Patent grant
GR01 Patent grant