CN116614444A - 一种业务参数限流方法、装置、设备及存储介质 - Google Patents
一种业务参数限流方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116614444A CN116614444A CN202310744998.5A CN202310744998A CN116614444A CN 116614444 A CN116614444 A CN 116614444A CN 202310744998 A CN202310744998 A CN 202310744998A CN 116614444 A CN116614444 A CN 116614444A
- Authority
- CN
- China
- Prior art keywords
- access information
- real
- information
- time access
- parameter
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000004364 calculation method Methods 0.000 claims abstract description 82
- 238000004590 computer program Methods 0.000 claims description 17
- 238000002347 injection Methods 0.000 claims description 5
- 239000007924 injection Substances 0.000 claims description 5
- 238000004891 communication Methods 0.000 description 5
- 238000005111 flow chemistry technique Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 4
- 239000000243 solution Substances 0.000 description 3
- 241000700189 Hystrix <Rodentia> Species 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/20—Traffic policing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/29—Flow control; Congestion control using a combination of thresholds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/625—Queue scheduling characterised by scheduling criteria for service slots or service orders
- H04L47/627—Queue scheduling characterised by scheduling criteria for service slots or service orders policing
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing 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)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种业务参数限流方法、装置、设备及存储介质,应用于客户端,涉及互联网领域,包括:将当前的第一实时访问信息以及第一实时访问信息对应的参数类型通过服务端转发至消息队列,以便flink平台消费消息队列的信息,基于与参数类型对应的计算工具对第一实时访问信息的业务参数进行实时计算,得到计算结果;接收平台判定计算结果超过预设限流阈值时,通过服务端转发的超过预设限流阈值的目标访问信息,将目标访问信息保存至本地,得到本地保存信息;基于本地保存信息判断当前的第二实时访问信息的业务参数是否超出预设限流阈值,若超出,进行相应的拦截操作以完成限流操作。由此,本申请能对瞬时流量或恶意攻击进行限流处理。
Description
技术领域
本发明涉及互联网领域,特别涉及一种业务参数限流方法、装置、设备及存储介质。
背景技术
在发生突发流量的情况下,现有的限流框架如hystrix,sentinel都是无差别限流,无法识别流量共性,无差别统计,计数,超出阈值后执行限流,一旦遭受流量攻击或saas平台单商户流量过大,会影响到整个平台。没法识别流量特征。在遭遇外部攻击或者单个商户活动,系统没办法主动应对,只能发现异常接受告警再现场应对。因此,如何应对瞬时流量或恶意攻击是本领域亟待解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种业务参数限流方法、装置、设备及存储介质,能够在突发流量的情况下识别出具有相同参数的请求保护系统拒绝超出能力范围的流量,同时不影响正常的流量。其具体方案如下:
第一方面,本申请公开了一种业务参数限流方法,应用于客户端,包括:
将当前的第一实时访问信息以及所述第一实时访问信息对应的参数类型通过服务端转发至消息队列,以便flink平台消费所述消息队列的信息,并基于与所述参数类型对应的计算工具对所述第一实时访问信息的业务参数进行实时计算,以得到计算结果;
接收所述flink平台判定所述计算结果超过预设限流阈值时,通过所述服务端转发的超过所述预设限流阈值的目标访问信息,并将所述目标访问信息保存至本地,以得到本地保存信息;
基于所述本地保存信息判断当前的第二实时访问信息的业务参数是否超出所述预设限流阈值,若所述第二实时访问信息的业务参数超出所述预设限流阈值,则进行相应的拦截操作以完成限流操作。
可选的,所述将第一实时访问信息以及所述第一实时访问信息对应的参数类型通过服务端转发至消息队列,包括:
基于切面注入的方式将所述第一实时访问信息以及所述第一实时访问信息对应的参数类型发送至所述服务端,以便所述服务端将所述第一实时访问信息以及所述参数类型转发至kafka消息队列。
可选的,所述接收所述flink平台判定所述计算结果超过预设限流阈值时,通过所述服务端转发的超过所述预设限流阈值的目标访问信息,并将所述目标访问信息保存至本地,以得到本地保存信息,包括:
接收所述flink平台判定所述计算结果超过预设限流阈值时,通过所述flink平台将超过所述预设限流阈值的目标访问信息发送至所述消息队列,以便所述服务端消费所述消息队列的信息,并对所述目标访问信息标记预设有效访问时间,得到标记后访问信息,将所述标记后访问信息转发至所述客户端;所述目标访问信息中包括预设目标参数在当前窗口对应的访问次数;
将所述标记后访问信息发送至本地进行保存,以得到所述本地保存信息。
可选的,所述基于所述本地保存信息判断当前的第二实时访问信息的业务参数是否超出所述预设限流阈值,包括:
确定所述第二实时访问信息的业务参数的当前统计时间是否为所述本地保存信息中的所述预设有效访问时间;
若是,则判断所述第二实时访问信息的业务参数是否超出所述预设限流阈值;
若否,则直接执行放行操作。
可选的,所述判断所述第二实时访问信息的业务参数是否超出所述预设限流阈值,包括:
在拦截请求入口处判断所述第二实时访问信息的业务参数是否存在于所述本地保存信息中;
若是,则判定第二实时访问信息的业务参数超出所述预设限流阈值;
若否,则判定第二实时访问信息的业务参数没有超出所述预设限流阈值。
可选的,所述方法还包括:
基于业务场景和系统能力确定与所述参数类型对应的预设限流阈值。
第二方面,本申请公开了一种业务参数限流方法,应用于服务端,包括:
接收客户端发送的第一实时访问信息以及所述第一实时访问信息对应的参数类型,并将所述第一实时访问信息以及所述第一实时访问信息对应的参数类型发送至消息队列,以便flink平台消费所述消息队列的信息,并基于与所述参数类型对应的计算工具对所述第一实时访问信息的业务参数进行实时计算,以得到计算结果;
接收所述flink平台判定所述计算结果超过预设限流阈值时,发送的超过所述预设限流阈值的目标访问信息,并将所述目标访问信息转发至所述客户端,以便所述客户端将所述目标访问信息保存至本地,以得到本地保存信息,并基于所述本地保存信息判断当前的第二实时访问信息的业务参数是否超出所述预设限流阈值,若所述第二实时访问信息的业务参数超出所述预设限流阈值,则进行相应的拦截操作以完成限流操作。
第三方面,本申请公开了一种业务参数限流装置,应用于客户端,包括:
信息转发模块,用于将当前的第一实时访问信息以及所述第一实时访问信息对应的参数类型通过服务端转发至消息队列,以便flink平台消费所述消息队列的信息,并基于与所述参数类型对应的计算工具对所述第一实时访问信息的业务参数进行实时计算,以得到计算结果;
信息接收模块,用于接收所述flink平台判定所述计算结果超过预设限流阈值时,通过所述服务端转发的超过所述预设限流阈值的目标访问信息,并将所述目标访问信息保存至本地,以得到本地保存信息;
判断模块,用于基于所述本地保存信息判断当前的第二实时访问信息的业务参数是否超出所述预设限流阈值,若所述第二实时访问信息的业务参数超出所述预设限流阈值,则进行相应的拦截操作以完成限流操作。
第四方面,本申请公开了一种电子设备,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现前述公开的所述的业务参数限流方法的步骤。
第五方面,本申请公开了一种计算机可读存储介质,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的所述的业务参数限流方法的步骤。
由上可知,本申请进行业务参数限流时,客户端首先将当前的第一实时访问信息以及所述第一实时访问信息对应的参数类型通过服务端转发至消息队列,以便flink平台消费所述消息队列的信息,并基于与所述参数类型对应的计算工具对所述第一实时访问信息的业务参数进行实时计算,以得到计算结果;接收所述flink平台判定所述计算结果超过预设限流阈值时,通过所述服务端转发的超过所述预设限流阈值的目标访问信息,并将所述目标访问信息保存至本地,以得到本地保存信息;基于所述本地保存信息判断当前的第二实时访问信息的业务参数是否超出所述预设限流阈值,若所述第二实时访问信息的业务参数超出所述预设限流阈值,则进行相应的拦截操作以完成限流操作。可见,本申请通过开源流处理框架的强大计算能力,对各种维度指标的计算非常快,并且同时监控平台所有的计算,如果超出设定的阈值,可被秒级感知,秒级被客户端感知,秒级实现拦截。同时,提前设定拦截阈值,系统便可自行计算无须人工操作即可拦截,单个特定参数流量超出阈值后可快速识别快速拦截。这样一来,通过本申请可以进行参数级别的流量隔离和识别。使得系统可以有选择的拒绝某一参数特征,而不影响系统的其他商户或用户。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种业务参数限流方法流程图;
图2为本申请公开的一种实施任务处理流程图;
图3为本申请公开的一种具体的业务参数限流方法流程图;
图4为本申请公开的一种业务参数限流方法流程图;
图5为本申请提供的一种视频素材筛选装置结构示意图;
图6为本申请提供的一种电子设备结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
现有的限流框架如hystrix,sentinel都是无差别限流,无法识别流量共性,无差别统计,计数,超出阈值后执行限流,一旦遭受流量攻击或saas平台单商户流量过大,会影响到整个平台,没法识别流量特征。在遭遇外部攻击或单个商户活动,系统没办法主动应对只能发现异常接受告警再现场应对。为了解决上述问题,本申请公开了一种业务参数限流方法,能够解决遭遇突发流量,无法识别流量特征并隔离的缺点。
参见图1所示,本发明实施例公开了一种业务参数限流方法,应用于客户端,包括:
步骤S11、将当前的第一实时访问信息以及所述第一实时访问信息对应的参数类型通过服务端转发至消息队列,以便flink平台消费所述消息队列的信息,并基于与所述参数类型对应的计算工具对所述第一实时访问信息的业务参数进行实时计算,以得到计算结果。
本实施例中,在进行业务参数限流之前,要基于业务场景和系统能力确定与所述参数类型对应的预设限流阈值,例如根据业务场景saas场景指定单个商户5s内请求次数不能超过10000次。同时配置不同参数类型对应的计算窗口。再基于切面注入的方式将所述第一实时访问信息以及所述第一实时访问信息对应的参数类型发送至所述服务端,以便所述服务端将所述第一实时访问信息以及所述参数类型转发至kafka消息队列。具体的,应用sdk(Software Development Kit,软件开发工具包)通过切面注入的方式,向统一的流量上报中心,上报流量,流量上报中心端将本次访问信息发送至kafka消息队列,且本次访问信息中包括参数类型,如请求的ip或本次请求的所属商户。之后flink平台消费所述消息队列的信息,并基于与所述参数类型对应的计算工具对所述第一实时访问信息的业务参数进行实时计算,以得到计算结果。本申请实时计算的过程如图2所示,job的任务主要工作逻辑为消费kafka消息,根据参数类型做实时计算。
步骤S12、接收所述flink平台判定所述计算结果超过预设限流阈值时,通过所述服务端转发的超过所述预设限流阈值的目标访问信息,并将所述目标访问信息保存至本地,以得到本地保存信息。
本实施例中,若flink平台判定所述计算结果超过预设限流阈值,则将超出阈值的再发送消息到kafka,消息内容为某个参数(如当前商户或ip)当前窗口的访问次数为多少;就是通过所述flink平台将超过所述预设限流阈值的目标访问信息发送至所述消息队列,以便所述服务端消费所述消息队列的信息,并对所述目标访问信息标记预设有效访问时间,得到标记后访问信息,将所述标记后访问信息转发至所述客户端;所述目标访问信息中包括预设目标参数在当前窗口对应的访问次数;将所述标记后访问信息发送至本地进行保存,以得到所述本地保存信息。就是当前业务参数的统计时间为预设的有效访问事件,则可以继续判断,如果不在,则这次的统计信息则无效,即使超出阈值也不再进行拦截。
步骤S13、基于所述本地保存信息判断当前的第二实时访问信息的业务参数是否超出所述预设限流阈值,若所述第二实时访问信息的业务参数超出所述预设限流阈值,则进行相应的拦截操作以完成限流操作。
本实施例中,首先需要确定所述第二实时访问信息的业务参数的当前统计时间是否为所述本地保存信息中的所述预设有效访问时间;若是,则判断所述第二实时访问信息的业务参数是否超出所述预设限流阈值;若否,则直接执行放行操作。之后在拦截请求入口处判断所述第二实时访问信息的业务参数是否存在于所述本地保存信息中;若是,则判定第二实时访问信息的业务参数超出所述预设限流阈值;若否,则判定第二实时访问信息的业务参数没有超出所述预设限流阈值。若所述第二实时访问信息的业务参数超出所述预设限流阈值,则进行相应的拦截操作以完成限流操作。如果未超出正常放行,正常进行业务。
由上可知,本申请进行业务参数限流时,客户端首先将当前的第一实时访问信息以及所述第一实时访问信息对应的参数类型通过服务端转发至消息队列,以便flink平台消费所述消息队列的信息,并基于与所述参数类型对应的计算工具对所述第一实时访问信息的业务参数进行实时计算,以得到计算结果;接收所述flink平台判定所述计算结果超过预设限流阈值时,通过所述服务端转发的超过所述预设限流阈值的目标访问信息,并将所述目标访问信息保存至本地,以得到本地保存信息;基于所述本地保存信息判断当前的第二实时访问信息的业务参数是否超出所述预设限流阈值,若所述第二实时访问信息的业务参数超出所述预设限流阈值,则进行相应的拦截操作以完成限流操作。可见,本申请通过开源流处理框架的强大计算能力,对各种维度指标的计算非常快,并且同时监控平台所有的计算,如果超出设定的阈值,可被秒级感知,秒级被客户端感知,秒级实现拦截。同时,提前设定拦截阈值,系统便可自行计算无须人工操作即可拦截,单个特定参数流量超出阈值后可快速识别快速拦截。这样一来,通过本申请可以进行参数级别的流量隔离和识别。使得系统可以有选择的拒绝某一参数特征,而不影响系统的其他商户或用户。
参见图3所示,本发明实施例公开了一种具体的业务参数限流方法,包括:
本实施例中,首先根据业务和系统能力等规划指定限流规则,并保存。例如,根据业务场景saas场景指定单个商户5s内请求次数不能超过10000次。之后客户端首先将客户端将访问信息上报到服务端再发送到消息队列,flink消费消息队列消息并根据规则配置做实时计算,如果达到指标值,则存入到发送给服务端。服务端将超限的参数值推送给客户端,客户端应用服务接入sdk,sdk会拉取限流规则,负责接管http接口的入口处,在此上报流量,并构建上下文负责规则匹配。如果匹配到命中规则,则拦截请求。例如当前商户在当前窗口的访问次数,如果超过阈值则拦截,否则放行。
由上可知,本申请通过开源流处理框架的强大计算能力,对各种维度指标的计算非常快,并且同时监控平台所有的计算,如果超出设定的阈值,可被秒级感知,秒级被客户端感知,秒级实现拦截。同时,提前设定拦截阈值,系统便可自行计算无须人工操作即可拦截,单个特定参数流量超出阈值后可快速识别快速拦截。这样一来,通过本申请可以进行参数级别的流量隔离和识别。使得系统可以有选择地拒绝某一参数特征,而不影响系统的其他商户或用户。
参见图4所示,本发明实施例公开了一种业务参数限流方法,应用于服务端,包括:
步骤S21、接收客户端发送的第一实时访问信息以及所述第一实时访问信息对应的参数类型,并将所述第一实时访问信息以及所述第一实时访问信息对应的参数类型发送至消息队列,以便flink平台消费所述消息队列的信息,并基于与所述参数类型对应的计算工具对所述第一实时访问信息的业务参数进行实时计算,以得到计算结果。
步骤S22、接收所述flink平台判定所述计算结果超过预设限流阈值时,发送的超过所述预设限流阈值的目标访问信息,并将所述目标访问信息转发至所述客户端,以便所述客户端将所述目标访问信息保存至本地,以得到本地保存信息,并基于所述本地保存信息判断当前的第二实时访问信息的业务参数是否超出所述预设限流阈值,若所述第二实时访问信息的业务参数超出所述预设限流阈值,则进行相应的拦截操作以完成限流操作。
由上可知,本申请进行业务参数限流时,服务端首先接收客户端发送的第一实时访问信息以及所述第一实时访问信息对应的参数类型,并将所述第一实时访问信息以及所述第一实时访问信息对应的参数类型发送至消息队列,以便flink平台消费所述消息队列的信息,并基于与所述参数类型对应的计算工具对所述第一实时访问信息的业务参数进行实时计算,以得到计算结果;接收所述flink平台判定所述计算结果超过预设限流阈值时,发送的超过所述预设限流阈值的目标访问信息,并将所述目标访问信息转发至所述客户端,以便所述客户端将所述目标访问信息保存至本地,以得到本地保存信息,并基于所述本地保存信息判断当前的第二实时访问信息的业务参数是否超出所述预设限流阈值,若所述第二实时访问信息的业务参数超出所述预设限流阈值,则进行相应的拦截操作以完成限流操作。可见,本申请通过开源流处理框架的强大计算能力,对各种维度指标的计算非常快,并且同时监控平台所有的计算,如果超出设定的阈值,可被秒级感知,秒级被客户端感知,秒级实现拦截。同时,提前设定拦截阈值,系统便可自行计算无须人工操作即可拦截,单个特定参数流量超出阈值后可快速识别快速拦截。这样一来,通过本申请可以进行参数级别的流量隔离和识别。使得系统可以有选择地拒绝某一参数特征,而不影响系统的其他商户或用户。
参见图5所示,本发明实施例公开了一种业务参数限流装置,应用于客户端,包括:
信息转发模块11,用于将当前的第一实时访问信息以及所述第一实时访问信息对应的参数类型通过服务端转发至消息队列,以便flink平台消费所述消息队列的信息,并基于与所述参数类型对应的计算工具对所述第一实时访问信息的业务参数进行实时计算,以得到计算结果;
信息接收模块12,用于接收所述flink平台判定所述计算结果超过预设限流阈值时,通过所述服务端转发的超过所述预设限流阈值的目标访问信息,并将所述目标访问信息保存至本地,以得到本地保存信息;
判断模块13,用于基于所述本地保存信息判断当前的第二实时访问信息的业务参数是否超出所述预设限流阈值,若所述第二实时访问信息的业务参数超出所述预设限流阈值,则进行相应的拦截操作以完成限流操作。
由上可知,本申请进行业务参数限流时,客户端首先将当前的第一实时访问信息以及所述第一实时访问信息对应的参数类型通过服务端转发至消息队列,以便flink平台消费所述消息队列的信息,并基于与所述参数类型对应的计算工具对所述第一实时访问信息的业务参数进行实时计算,以得到计算结果;接收所述flink平台判定所述计算结果超过预设限流阈值时,通过所述服务端转发的超过所述预设限流阈值的目标访问信息,并将所述目标访问信息保存至本地,以得到本地保存信息;基于所述本地保存信息判断当前的第二实时访问信息的业务参数是否超出所述预设限流阈值,若所述第二实时访问信息的业务参数超出所述预设限流阈值,则进行相应的拦截操作以完成限流操作。可见,本申请通过开源流处理框架的强大计算能力,对各种维度指标的计算非常快,并且同时监控平台所有的计算,如果超出设定的阈值,可被秒级感知,秒级被客户端感知,秒级实现拦截。同时,提前设定拦截阈值,系统便可自行计算无须人工操作即可拦截,单个特定参数流量超出阈值后可快速识别快速拦截。这样一来,通过本申请可以进行参数级别的流量隔离和识别。使得系统可以有选择的拒绝某一参数特征,而不影响系统的其他商户或用户。
在一些具体的实施例中,所述信息转发模块11,可以包括:
信息转发单元,用于基于切面注入的方式将所述第一实时访问信息以及所述第一实时访问信息对应的参数类型发送至所述服务端,以便所述服务端将所述第一实时访问信息以及所述参数类型转发至kafka消息队列。
在一些具体的实施例中,所述信息接收模块12,可以包括:
信息接受单元,用于接收所述flink平台判定所述计算结果超过预设限流阈值时,通过所述flink平台将超过所述预设限流阈值的目标访问信息发送至所述消息队列,以便所述服务端消费所述消息队列的信息,并对所述目标访问信息标记预设有效访问时间,得到标记后访问信息,将所述标记后访问信息转发至所述客户端;所述目标访问信息中包括预设目标参数在当前窗口对应的访问次数;
本地保存单元,用于将所述标记后访问信息发送至本地进行保存,以得到所述本地保存信息。
在一些具体的实施例中,所述判断模块13,可以包括:
时间确定单元,用于确定所述第二实时访问信息的业务参数的当前统计时间是否为所述本地保存信息中的所述预设有效访问时间;
参数判断单元,用于若是,则判断所述第二实时访问信息的业务参数是否超出所述预设限流阈值;
放行单元,用于若否,则直接执行放行操作。
在一些具体的实施例中,所述参数判断单元,可以包括:
参数判断子单元,用于在拦截请求入口处判断所述第二实时访问信息的业务参数是否存在于所述本地保存信息中;
第一判定子单元,用于若是,则判定第二实时访问信息的业务参数超出所述预设限流阈值;
第二判定子单元,用于若否,则判定第二实时访问信息的业务参数没有超出所述预设限流阈值。
在一些具体的实施例中,所述装置,还可以包括:
阈值确定模块,用于基于业务场景和系统能力确定与所述参数类型对应的预设限流阈值。
进一步的,本申请实施例还公开了一种电子设备,图6是根据一示例性实施例示出的电子设备20结构图,图中的内容不能认为是对本申请的使用范围的任何限制。
图6为本申请实施例提供的一种电子设备20的结构示意图。该电子设备20,具体可以包括:至少一个处理器21、至少一个存储器22、电源23、通信接口24、输入输出接口25和通信总线26。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的业务参数限流方法中的相关步骤。另外,本实施例中的电子设备20具体可以为电子计算机。
本实施例中,电源23用于为电子设备20上的各硬件设备提供工作电压;通信接口24能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源可以包括操作系统221、计算机程序222等,存储方式可以是短暂存储或者永久存储。
其中,操作系统221用于管理与控制电子设备20上的各硬件设备以及计算机程序222,其可以是Windows Server、Netware、Unix、Linux等。计算机程序222除了包括能够用于完成前述任一实施例公开的由电子设备20执行的业务参数限流方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。
进一步的,本申请还公开了一种计算机可读存储介质,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的业务参数限流方法。关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本申请所提供的技术方案进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种业务参数限流方法,其特征在于,应用于客户端,包括:
将当前的第一实时访问信息以及所述第一实时访问信息对应的参数类型通过服务端转发至消息队列,以便flink平台消费所述消息队列的信息,并基于与所述参数类型对应的计算工具对所述第一实时访问信息的业务参数进行实时计算,以得到计算结果;
接收所述flink平台判定所述计算结果超过预设限流阈值时,通过所述服务端转发的超过所述预设限流阈值的目标访问信息,并将所述目标访问信息保存至本地,以得到本地保存信息;
基于所述本地保存信息判断当前的第二实时访问信息的业务参数是否超出所述预设限流阈值,若所述第二实时访问信息的业务参数超出所述预设限流阈值,则进行相应的拦截操作以完成限流操作。
2.根据权利要求1所述的业务参数限流方法,其特征在于,所述将第一实时访问信息以及所述第一实时访问信息对应的参数类型通过服务端转发至消息队列,包括:
基于切面注入的方式将所述第一实时访问信息以及所述第一实时访问信息对应的参数类型发送至所述服务端,以便所述服务端将所述第一实时访问信息以及所述参数类型转发至kafka消息队列。
3.根据权利要求1所述的业务参数限流方法,其特征在于,所述接收所述flink平台判定所述计算结果超过预设限流阈值时,通过所述服务端转发的超过所述预设限流阈值的目标访问信息,并将所述目标访问信息保存至本地,以得到本地保存信息,包括:
接收所述flink平台判定所述计算结果超过预设限流阈值时,通过所述flink平台将超过所述预设限流阈值的目标访问信息发送至所述消息队列,以便所述服务端消费所述消息队列的信息,并对所述目标访问信息标记预设有效访问时间,得到标记后访问信息,将所述标记后访问信息转发至所述客户端;所述目标访问信息中包括预设目标参数在当前窗口对应的访问次数;
将所述标记后访问信息发送至本地进行保存,以得到所述本地保存信息。
4.根据权利要求3所述的业务参数限流方法,其特征在于,所述基于所述本地保存信息判断当前的第二实时访问信息的业务参数是否超出所述预设限流阈值,包括:
确定所述第二实时访问信息的业务参数的当前统计时间是否为所述本地保存信息中的所述预设有效访问时间;
若是,则判断所述第二实时访问信息的业务参数是否超出所述预设限流阈值;
若否,则直接执行放行操作。
5.根据权利要求4所述的业务参数限流方法,其特征在于,所述判断所述第二实时访问信息的业务参数是否超出所述预设限流阈值,包括:
在拦截请求入口处判断所述第二实时访问信息的业务参数是否存在于所述本地保存信息中;
若是,则判定第二实时访问信息的业务参数超出所述预设限流阈值;
若否,则判定第二实时访问信息的业务参数没有超出所述预设限流阈值。
6.根据权利要求1至5任一项所述的业务参数限流方法,其特征在于,还包括:
基于业务场景和系统能力确定与所述参数类型对应的预设限流阈值。
7.一种业务参数限流方法,其特征在于,应用于服务端,包括:
接收客户端发送的第一实时访问信息以及所述第一实时访问信息对应的参数类型,并将所述第一实时访问信息以及所述第一实时访问信息对应的参数类型发送至消息队列,以便flink平台消费所述消息队列的信息,并基于与所述参数类型对应的计算工具对所述第一实时访问信息的业务参数进行实时计算,以得到计算结果;
接收所述flink平台判定所述计算结果超过预设限流阈值时,发送的超过所述预设限流阈值的目标访问信息,并将所述目标访问信息转发至所述客户端,以便所述客户端将所述目标访问信息保存至本地,以得到本地保存信息,并基于所述本地保存信息判断当前的第二实时访问信息的业务参数是否超出所述预设限流阈值,若所述第二实时访问信息的业务参数超出所述预设限流阈值,则进行相应的拦截操作以完成限流操作。
8.一种业务参数限流装置,其特征在于,应用于客户端,包括:
信息转发模块,用于将当前的第一实时访问信息以及所述第一实时访问信息对应的参数类型通过服务端转发至消息队列,以便flink平台消费所述消息队列的信息,并基于与所述参数类型对应的计算工具对所述第一实时访问信息的业务参数进行实时计算,以得到计算结果;
信息接收模块,用于接收所述flink平台判定所述计算结果超过预设限流阈值时,通过所述服务端转发的超过所述预设限流阈值的目标访问信息,并将所述目标访问信息保存至本地,以得到本地保存信息;
判断模块,用于基于所述本地保存信息判断当前的第二实时访问信息的业务参数是否超出所述预设限流阈值,若所述第二实时访问信息的业务参数超出所述预设限流阈值,则进行相应的拦截操作以完成限流操作。
9.一种电子设备,其特征在于,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现如权利要求1至7任一项所述的业务参数限流方法的步骤。
10.一种计算机可读存储介质,其特征在于,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的业务参数限流方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310744998.5A CN116614444A (zh) | 2023-06-21 | 2023-06-21 | 一种业务参数限流方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310744998.5A CN116614444A (zh) | 2023-06-21 | 2023-06-21 | 一种业务参数限流方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116614444A true CN116614444A (zh) | 2023-08-18 |
Family
ID=87674676
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310744998.5A Pending CN116614444A (zh) | 2023-06-21 | 2023-06-21 | 一种业务参数限流方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116614444A (zh) |
-
2023
- 2023-06-21 CN CN202310744998.5A patent/CN116614444A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10432650B2 (en) | System and method to protect a webserver against application exploits and attacks | |
JP4945573B2 (ja) | イベント通知相関のための方法および管理エージェント | |
RU2660635C2 (ru) | Способ и устройство для управления цепочкой услуги потока услуги | |
CN108415811B (zh) | 一种监测业务逻辑的方法及装置 | |
CN101594320A (zh) | 一种基于snmp协议的消息交互方法 | |
US11233694B2 (en) | Method and device for processing communication path | |
CN101409654B (zh) | 一种网络管理系统中处理snmp信息的方法 | |
CN107579854B (zh) | 一种集群告警方法、装置、设备和计算机可读存储介质 | |
CN111510325B (zh) | 报警信息推送方法、服务器、客户端及系统 | |
CN112583850B (zh) | 网络攻击防护方法、装置及系统 | |
CN112711514A (zh) | 一种终端设备的监控系统、方法及装置 | |
CN105812405A (zh) | 一种处理消息的方法、装置及系统 | |
US20170214536A1 (en) | Background traffic downloading method, device, and system | |
EP4167530A1 (en) | Network monitoring method, electronic device and storage medium | |
CN108418794B (zh) | 一种智能变电站通信网络抵御arp攻击的方法及系统 | |
CN110730087A (zh) | 一种告警风暴的处理方法及装置 | |
CN116614444A (zh) | 一种业务参数限流方法、装置、设备及存储介质 | |
KR102275065B1 (ko) | 보안 통제 장치 및 방법 | |
WO2015000428A1 (zh) | 数据处理的方法、服务器及系统 | |
CN107911229A (zh) | 运行状态改变的提醒方法、装置、电子设备及存储介质 | |
US11811834B2 (en) | Lawfully intercepting traffic and providing the traffic to a content destination based on content destination availabilities and priorities | |
CN109089281B (zh) | 一种集群通信方法、终端设备及存储介质 | |
CN112929347B (zh) | 一种限频方法、装置、设备及介质 | |
KR101826728B1 (ko) | 로그 관리 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체 | |
WO2017165999A1 (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 |