CN113973087B - 一种网页访问限流方法、装置及计算机可读存储介质 - Google Patents
一种网页访问限流方法、装置及计算机可读存储介质 Download PDFInfo
- Publication number
- CN113973087B CN113973087B CN202111407417.6A CN202111407417A CN113973087B CN 113973087 B CN113973087 B CN 113973087B CN 202111407417 A CN202111407417 A CN 202111407417A CN 113973087 B CN113973087 B CN 113973087B
- Authority
- CN
- China
- Prior art keywords
- access
- user
- current
- matrix
- dimension
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 49
- 238000003860 storage Methods 0.000 title claims abstract description 23
- 239000011159 matrix material Substances 0.000 claims abstract description 94
- 230000006698 induction Effects 0.000 claims description 19
- 230000002159 abnormal effect Effects 0.000 claims description 13
- 238000004364 calculation method Methods 0.000 claims description 9
- 230000004044 response Effects 0.000 claims description 6
- 230000001960 triggered effect Effects 0.000 claims description 6
- 230000002776 aggregation Effects 0.000 claims description 3
- 238000004220 aggregation Methods 0.000 claims description 3
- 239000000758 substrate Substances 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 238000004590 computer program Methods 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 4
- 238000009933 burial Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
- G06F16/9566—URL specific, e.g. using aliases, detecting broken or misspelled links
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明提供了一种网页访问限流方法、装置、系统及计算机可读存储介质,包括:当用户访问宿主应用的网页服务时,获取宿主应用发来的当前访问信息;根据当前访问信息生成用户访问序列,用户访问序列将用户的当前访问信息及预设次数的在先访问信息按时序排列;将用户访问序列输入访问矩阵池,以动态更新对应于各个用户的用户访问画像矩阵,用户访问画像矩阵根据用户历史访问数据生成且包括多个维度的访问归纳数据;根据用户标识从访问矩阵池获取对应的用户访问画像矩阵,基于用户访问序列和用户画像矩阵判断当前访问是否符合用户访问习惯。利用上述方法,能够通过分析用户访问数据实现针对不同用户的动态调整限流范围,来实现网页访问限流。
Description
技术领域
本发明属于限流领域,具体涉及一种网页访问限流方法、装置及计算机可读存储介质。
背景技术
本部分旨在为权利要求书中陈述的本发明的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
在开发高并发系统时,一般通过限流可以很好地控制系统的每秒查询率,从而达到保护系统的目的。上述限流的目的是通过对并发访问进行限速,一旦达到一定的速率就可以拒绝服务、排队等待、降级等。
目前常用的限流算法有两种:计数器算法和令牌桶算法。前者通过滑动窗口结合计数器实现WEB访问限流,后者使用大小固定的令牌桶并以恒定的速率源源不断地产生令牌。如果令牌桶中存在令牌,则允许发送请求;而如果令牌桶中不存在令牌,则不允许发送请求。
现有的限流算法,不管是计数器算法的阈值,还是令牌桶算法的桶大小和速率,都需要事先根据经验设置阈值,缺乏普适性,无法通过数据动态学习调整。
发明内容
针对上述现有技术中存在的问题,提出了一种网页访问限流方法、装置及计算机可读存储介质,利用这种方法、装置及计算机可读存储介质,能够解决上述问题。
本发明提供了以下方案。
第一方面,提供一种网页访问限流方法,包括:当用户访问宿主应用的网页服务时,获取宿主应用发来的当前访问信息;根据当前访问信息生成用户访问序列,用户访问序列将用户的当前访问信息及预设次数的在先访问信息按时序排列;将用户访问序列输入访问矩阵池,以动态更新对应于各个用户的用户访问画像矩阵,用户访问画像矩阵根据用户历史访问数据生成且包括多个维度的访问归纳数据;根据用户标识从访问矩阵池获取对应的用户访问画像矩阵,基于用户访问序列和用户画像矩阵判断当前访问是否符合用户访问习惯。
在一种实施方式中,当前访问信息包括:用户标识、当前服务URL和时间戳。
在一种实施方式中,基于用户访问序列和用户画像矩阵判断当前访问是否符合用户访问习惯,包括:根据用户访问画像矩阵确定各个维度的限流范围;根据用户访问序列获取对应于用户访问画像矩阵的各个维度的值;根据判断各个维度的值是否在限流范围内,以确定当前访问是否为正常访问。
在一种实施方式中,用户访问画像矩阵包括用户标识且包含如下任意一种或多种维度:用户单位时间内对特定URL请求总次数、用户单位时间内的URL请求总次数、用户单位时间内的URL请求总数与URL种类数的比值、全量用户单位时间内的特定URL请求总次数、全量用户单位时间内的URL请求总次数、全量用户单位时间内的URL请求总数与URL种类数的比值。
在一种实施方式中,还包括:在宿主应用内的网页服务入口处设置埋点,使得任意一个或多个用户访问网页服务时触发埋点以生成调用请求,调用请求包括当前访问信息;将当前访问的判断结果应答至宿主应用的埋点处,且当埋点收到非正常访问的应答时,向宿主应用反馈限流提醒。
在一种实施方式中,利用以下方法生成访问矩阵池:通过对用户历史访问数据分别进行时间维度和空间维度的数据归纳,得到访问矩阵池;其中,时间维度是指对单一用户的访问序列进行数据归纳,空间维度是指对同一时间不同用户并发的访问信息进行数据归纳。
在一种实施方式中,根据维度权重对用户画像矩阵的多个维度进行优先级排列;按照优先级顺序依次判断各个维度的值是否在对应的限流范围内;其中,一旦判断出当前访问是非正常访问,则无需对后续优先级维度进行判断。
第二方面,提供一种网页访问限流装置,包括:访问收纳模块,用于当用户访问宿主应用的网页服务时,获取宿主应用发来的当前访问信息;访问归集模块,用于根据当前访问信息生成用户访问序列,用户访问序列将用户的当前访问信息及预设次数的在先访问信息按时序排列;访问矩阵池,将用户访问序列输入访问矩阵池,以动态更新对应于各个用户的用户访问画像矩阵,用户访问画像矩阵根据用户历史访问数据生成且包括多个维度的访问归纳数据;限流计算模块,用于根据用户标识从访问矩阵池获取对应的用户访问画像矩阵,基于用户访问序列和用户画像矩阵判断当前访问是否符合用户访问习惯。
在一种实施方式中,当前访问信息包括:用户标识、当前服务URL和时间戳。
在一种实施方式中,限流计算模块,还用于:根据用户访问画像矩阵确定各个维度的限流范围;根据用户访问序列获取对应于用户访问画像矩阵的各个维度的值;根据判断各个维度的值是否在限流范围内,以确定当前访问是否为正常访问。
在一种实施方式中,用户访问画像矩阵包括用户标识且包含如下任意一种或多种维度:用户单位时间内对特定URL请求总次数、用户单位时间内的URL请求总次数、用户单位时间内的URL请求总数与URL种类数的比值、全量用户单位时间内的特定URL请求总次数、全量用户单位时间内的URL请求总次数、全量用户单位时间内的URL请求总数与URL种类数的比值。
在一种实施方式中,还包括:应用埋点模块,用于在宿主应用内的网页服务入口处设置埋点,使得任意一个或多个用户访问网页服务时触发埋点以生成调用请求,调用请求包括当前访问信息;结果输出模块,用于将当前访问的判断结果应答至宿主应用的埋点处,且当应用埋点模块收到非正常访问的应答时,向宿主应用反馈限流提醒。
在一种实施方式中,访问矩阵池还用于:通过对用户历史访问数据分别进行时间维度和空间维度的数据归纳,得到访问矩阵池;其中,时间维度是指对单一用户的访问序列进行数据归纳,空间维度是指对同一时间不同用户并发的访问信息进行数据归纳。
在一种实施方式中,限流计算模块还用于:根据维度权重对用户画像矩阵的多个维度进行优先级排列;按照优先级顺序依次判断各个维度的值是否在对应的限流范围内;其中,一旦判断出当前访问是非正常访问,则无需对后续优先级维度进行判断。
第三方面,提供一种网页访问限流装置,包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行:如第一方面的方法。
第四方面,提供一种计算机可读存储介质,计算机可读存储介质存储有程序,当程序被多核处理器执行时,使得多核处理器执行如第一方面的方法。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:本实施例中,无需事先设置阈值,能够实现基于根据用户历史访问数据生成且例如当前用户数据而动态更新的访问矩阵池判断是否需要对用户当前对网页服务的访问进行限流。
应当理解,上述说明仅是本发明技术方案的概述,以便能够更清楚地了解本发明的技术手段,从而可依照说明书的内容予以实施。为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举例说明本发明的具体实施方式。
附图说明
通过阅读下文的示例性实施例的详细描述,本领域普通技术人员将明白本文所述的优点和益处以及其他优点和益处。附图仅用于示出示例性实施例的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的标号表示相同的部件。在附图中:
图1为根据本发明一实施例的网页访问限流方法的流程示意图;
图2为根据本发明一实施例的网页访问限流装置的结构示意图;
图3为根据本发明又一实施例的网页访问限流装置的结构示意图。
在附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
在本申请实施例的描述中,应理解,诸如“包括”或“具有”等术语旨在指示本说明书中所公开的特征、数字、步骤、行为、部件、部分或其组合的存在,并且不旨在排除一个或多个其他特征、数字、步骤、行为、部件、部分或其组合存在的可能性。
除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”等的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
本申请中的所有代码都是示例性的,本领域技术人员根据所使用的编程语言,具体的需求和个人习惯等因素会在不脱离本申请的思想的条件下想到各种变型。
另外还需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
本申请提出一种网页访问限流方法,具体包括:当用户访问宿主应用的网页服务时,获取宿主应用发来的当前访问信息;根据当前访问信息生成用户访问序列,用户访问序列将用户的当前访问信息及预设次数的在先访问信息按时序排列;将用户访问序列输入访问矩阵池,以动态更新对应于各个用户的用户访问画像矩阵,用户访问画像矩阵根据用户历史访问数据生成且包括多个维度的访问归纳数据;根据用户标识从访问矩阵池获取对应的用户访问画像矩阵,基于用户访问序列和用户画像矩阵判断当前访问是否符合用户访问习惯。由此可以通过分析用户访问数据可实现针对不同用户的动态调整限流阈值,来实现网页访问限流。
图1为根据本申请一实施例的一种网页访问限流方法的流程示意图,用于对非正常访问进行限流,在该流程中,从设备角度而言,执行主体可以是一个或者多个电子设备;从程序角度而言,执行主体相应地可以是搭载于这些电子设备上的程序。
如图1所示,本实施例提供的方法可以包括以下步骤:
S101、当用户访问宿主应用的网页服务时,获取宿主应用发来的当前访问信息;
在一种实施方式中,当前访问信息包括:用户标识、当前服务URL和时间戳。例如,可以是(用户A,url1,时间戳10)。
在一种实施方式中,为了更无感地启动上述限流方法,还包括:在宿主应用内的网页服务入口处设置埋点,使得任意一个或多个用户访问网页服务时触发埋点以生成调用请求,调用请求包括当前访问信息。
例如,可以在需要执行限流研判和处置的宿主应用内设置埋点,具体可以位于宿主应用的网页服务入口,当宿主应用的网页服务被调用后触发埋点,第一时间以同步方式对网页限流方法发起调用并接受其反馈结果。
其中,可以通过对宿主应用提供HTTP服务,以接收宿主应用通过触发应用埋点而发送的调用请求,该调用请求中可以包括用户访问网页服务的当前访问信息。
S102、根据当前访问信息生成用户访问序列,用户访问序列将用户的当前访问信息及预设次数的在先访问信息按时序排列;
其中,当前访问信息可以包括(用户A,url1,时间戳10),其转换生成的用户访问序列可以包括[(用户A,url1,时间戳1),(用户A,url2,时间戳2),…,(用户A,url1,时间戳10)],其中,可以设定用户访问序列的信息数,比如10条,然后以当前访问信息为最后一个序列元素,提取用户A之前9次的在先访问信息,并组合成按时序排列的用户访问序列。
可以理解,如当前访问之前,用户发生的在先访问不满预设数量或者并未发生在先访问,也可以生产少于预设元素的用户访问序列。
例如,用户A在一秒内连续点击获取验证码按钮3次,其中获取验证码对应url为/getAuthCode,则三次请求分别对应的url序列数据为:
1、[(/getAuthCode,时间戳1)],
2、[(/getAuthCode,时间戳1),(/getAuthCode,时间戳2)]
3、[(/getAuthCode,时间戳1),(/getAuthCode,时间戳2),(/getAuthCode,时间戳3)]
S103、将用户访问序列输入访问矩阵池,以动态更新对应于各个用户的用户访问画像矩阵;
其中,用户访问画像矩阵根据用户历史访问数据生成且包括多个维度的访问归纳数据。例如,访问矩阵池基于实时不断输入的用户访问序列进行动态更新,在当前访问对应的用户访问数据输入之前,其已经通过在先输入的用户历史访问数据加工计算出用户访问矩阵以及用户访问习惯,由此可以滚动形成用户限流画像,以刻画用户在各个维度的访问归纳数据。
在一种实施方式中,为了生成访问矩阵池,还可以包括:通过对用户历史访问数据分别进行时间维度和空间维度的数据归纳,得到访问矩阵池;其中,时间维度是指对单一用户的访问序列进行数据归纳,空间维度是指对同一时间不同用户并发的访问信息进行数据归纳。最终形成访问矩阵池中的各个用户的用户访问画像矩阵,以此为依据对用户访问进行限流决策。
在一种实施方式中,用户访问画像矩阵包括用户标识且包含如下任意一种或多种维度:用户单位时间内对特定URL请求总次数、用户单位时间内的URL请求总次数、用户单位时间内的URL请求总数与URL种类数的比值、全量用户单位时间内的特定URL请求总次数、全量用户单位时间内的URL请求总次数、全量用户单位时间内的URL请求总数与URL种类数的比值。
其中,单位时间可以是1秒,全量用户是指接入访问矩阵池的全部用户。
可以理解,可以根据实际业务场景维度自行设计上述维度,本申请对此不作具体限制。
S104、根据用户标识从访问矩阵池获取对应的用户访问画像矩阵,基于用户访问序列和用户画像矩阵判断当前访问是否符合用户访问习惯。
可以理解,用户访问画像矩阵从多个维度刻画了用户的访问习惯,由此,可以根据用户访问画像矩阵来对用户访问序列中包含的用户最近几次的访问数据进行研判,以判断访问是否正常。
进一步地,也可以根据用户访问画像矩阵来对当前时间的多个用户并发生成的多个用户访问序列进行研判,以判断多个用户的访问是否正常。
在一种实施方式中,S104中的基于用户访问序列和用户画像矩阵判断当前访问是否符合用户访问习惯,具体可以包括:
根据用户访问画像矩阵确定各个维度的限流范围;根据用户访问序列获取对应于用户访问画像矩阵的各个维度的值;根据判断各个维度的值是否在限流范围内,以确定当前访问是否为正常访问。
例如,如根据用户A的用户访问画像矩阵确定该用户A在1秒内对特定URL请求(点击获取验证码getAuthCode)总次数的限流范围为小于2次、该用户A在1秒内的全部URL请求总次数的限流范围为小于5次、全量用户在1秒内对特定URL请求(点击获取验证码getAuthCode)总次数的限流范围为小于1000次,等等。那么可以获取各个维度的限流范围为:小于2;小于5;小于1000。基于此,可以对应根据用户访问序列获取对应于用户访问画像矩阵的各个维度的值,比如为:1;3;489。可以看出,此时各项指标都未超过限流范围,可以认为是正常访问。
可选地,还可以将判断规则设置为:如果超过限流范围不超过预设阈值时,也可以认为是正常访问。还可以将判断规则设置为:为每个维度设置权重,基于权重、是否超过限流范围(或者超过限流范围的程度)进行加权计算,如最终结果未超过设定值即可以认为是正常访问。本申请对此不作具体限制。
在一种实施方式中,为了减少不必要的计算量,本申请还可以包括:根据维度权重对用户画像矩阵的多个维度进行优先级排列;按照优先级顺序依次判断各个维度的值是否在对应的限流范围内;其中,一旦判断出当前访问是非正常访问,则无需对后续优先级维度进行判断。
在获取判断当前访问是否符合用户访问习惯的判断结果之后,将当前访问的判断结果应答至宿主应用的埋点处,且当埋点收到非正常访问的应答时,向宿主应用反馈限流提醒。比如提醒需执行丢弃请求、切断链接、告警等处理。
在本说明书的描述中,参考术语“一些可能的实施方式”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
关于本申请实施例的方法流程图,将某些操作描述为以一定顺序执行的不同的步骤。这样的流程图属于说明性的而非限制性的。可以将在本文中所描述的某些步骤分组在一起并且在单个操作中执行、可以将某些步骤分割成多个子步骤、并且可以以不同于在本文中所示出的顺序来执行某些步骤。可以由任何电路结构和/或有形机制(例如,由在计算机设备上运行的软件、硬件(例如,处理器或芯片实现的逻辑功能)等、和/或其任何组合)以任何方式来实现在流程图中所示出的各个步骤。
基于相同的技术构思,本发明实施例还提供一种网页访问限流装置,用于执行上述任一实施例所提供的网页访问限流方法。图2为本发明实施例提供的一种网页访问限流装置结构示意图。
如图2所示,装置20包括:
访问收纳模块201,用于当用户访问宿主应用的网页服务时,获取宿主应用发来的当前访问信息;
访问归集模块202,用于根据当前访问信息生成用户访问序列,用户访问序列将用户的当前访问信息及预设次数的在先访问信息按时序排列;
访问矩阵池203,将用户访问序列输入访问矩阵池,以动态更新对应于各个用户的用户访问画像矩阵,用户访问画像矩阵根据用户历史访问数据生成且包括多个维度的访问归纳数据;
限流计算模块204,用于根据用户标识从访问矩阵池获取对应的用户访问画像矩阵,基于用户访问序列和用户画像矩阵判断当前访问是否符合用户访问习惯。
在一种实施方式中,当前访问信息包括:用户标识、当前服务URL和时间戳。
在一种实施方式中,限流计算模块204,还用于:根据用户访问画像矩阵确定各个维度的限流范围;根据用户访问序列获取对应于用户访问画像矩阵的各个维度的值;根据判断各个维度的值是否在限流范围内,以确定当前访问是否为正常访问。
在一种实施方式中,用户访问画像矩阵包括用户标识且包含如下任意一种或多种维度:用户单位时间内对特定URL请求总次数、用户单位时间内的URL请求总次数、用户单位时间内的URL请求总数与URL种类数的比值、全量用户单位时间内的特定URL请求总次数、全量用户单位时间内的URL请求总次数、全量用户单位时间内的URL请求总数与URL种类数的比值。
在一种实施方式中,还包括:应用埋点模块200,用于在宿主应用内的网页服务入口处设置埋点,使得任意一个或多个用户访问网页服务时触发埋点以生成调用请求,调用请求包括当前访问信息;结果输出模块,用于将当前访问的判断结果应答至宿主应用的埋点处,且当应用埋点模块收到非正常访问的应答时,向宿主应用反馈限流提醒。
在一种实施方式中,访问矩阵池203还用于:通过对用户历史访问数据分别进行时间维度和空间维度的数据归纳,得到访问矩阵池;其中,时间维度是指对单一用户的访问序列进行数据归纳,空间维度是指对同一时间不同用户并发的访问信息进行数据归纳。
在一种实施方式中,限流计算模块204还用于:根据维度权重对用户画像矩阵的多个维度进行优先级排列;按照优先级顺序依次判断各个维度的值是否在对应的限流范围内;其中,一旦判断出当前访问是非正常访问,则无需对后续优先级维度进行判断。
需要说明的是,本申请实施例中的装置可以实现前述方法的实施例的各个过程,并达到相同的效果和功能,这里不再赘述。
图3为根据本申请一实施例的网页访问限流装置,用于执行图1所示出的网页访问限流方法,该装置包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述实施例所述的方法。
根据本申请的一些实施例,提供了网页访问限流方法的非易失性计算机存储介质,其上存储有计算机可执行指令,该计算机可执行指令设置为在由处理器运行时执行:上述实施例所述的方法。
本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、设备和计算机可读存储介质实施例而言,由于其基本相似于方法实施例,所以其描述进行了简化,相关之处可参见方法实施例的部分说明即可。
本申请实施例提供的装置、设备和计算机可读存储介质与方法是一一对应的,因此,装置、设备和计算机可读存储介质也具有与其对应的方法类似的有益技术效果,由于上面已经对方法的有益技术效果进行了详细说明,因此,这里不再赘述装置、设备和计算机可读存储介质的有益技术效果。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
虽然已经参考若干具体实施方式描述了本发明的精神和原理,但是应该理解,本发明并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本发明旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。
Claims (14)
1.一种网页访问限流方法,其特征在于,包括:
当用户访问宿主应用的网页服务时,获取所述宿主应用发来的当前访问信息,所述当前访问信息包括用户标识;
根据所述当前访问信息生成用户访问序列,所述用户访问序列将所述用户的所述当前访问信息及预设次数的在先访问信息按时序排列;
将所述用户访问序列输入访问矩阵池,以动态更新对应于各个用户的用户访问画像矩阵,所述用户访问画像矩阵根据用户历史访问数据生成且包括多个维度的访问归纳数据;
根据所述用户标识从所述访问矩阵池获取对应的所述用户访问画像矩阵;
根据所述用户访问画像矩阵确定各个维度的限流范围;
根据所述用户访问序列获取对应于所述用户访问画像矩阵的各个维度的值;
根据判断所述各个维度的值是否在所述限流范围内,以确定所述当前访问是否为正常访问。
2.根据权利要求1所述的方法,其特征在于,所述当前访问信息还包括:当前服务URL和时间戳。
3.根据权利要求1所述的方法,其特征在于,所述用户访问画像矩阵包括用户标识且包含如下任意一种或多种维度的访问归纳数据:
用户单位时间内对特定URL请求总次数、用户单位时间内的URL请求总次数、用户单位时间内的URL请求总数与URL种类数的比值、全量用户单位时间内的特定URL请求总次数、全量用户单位时间内的URL请求总次数、全量用户单位时间内的URL请求总数与URL种类数的比值。
4.根据权利要求1所述的方法,其特征在于,还包括:
在所述宿主应用内的网页服务入口处设置埋点,使得任意一个或多个用户访问所述网页服务时触发所述埋点以生成调用请求,所述调用请求包括所述当前访问信息;
将所述当前访问的判断结果应答至所述宿主应用的埋点处,且当所述埋点收到非正常访问的应答时,向所述宿主应用反馈限流提醒。
5.根据权利要求1所述的方法,其特征在于,利用以下方法生成所述访问矩阵池:
通过对用户历史访问数据分别进行时间维度和空间维度的数据归纳,得到所述访问矩阵池;
其中,所述时间维度是指对单一用户的访问序列进行数据归纳,所述空间维度是指对同一时间不同用户并发的访问信息进行数据归纳。
6.根据权利要求1所述的方法,其特征在于,
根据维度权重对所述用户画像矩阵的多个维度进行优先级排列;
按照优先级顺序依次判断所述各个维度的值是否在对应的所述限流范围内;
其中,一旦判断出所述当前访问是非正常访问,则无需对后续优先级维度进行判断。
7.一种网页访问限流装置,其特征在于,包括:
访问收纳模块,用于当用户访问宿主应用的网页服务时,获取所述宿主应用发来的当前访问信息,所述当前访问信息包括用户标识;
访问归集模块,用于根据所述当前访问信息生成用户访问序列,所述用户访问序列将所述用户的所述当前访问信息及预设次数的在先访问信息按时序排列;
访问矩阵池,将所述用户访问序列输入访问矩阵池,以动态更新对应于各个用户的用户访问画像矩阵,所述用户访问画像矩阵根据用户历史访问数据生成且包括多个维度的访问归纳数据;
限流计算模块,用于根据所述用户标识从所述访问矩阵池获取对应的所述用户访问画像矩阵,根据所述用户访问画像矩阵确定各个维度的限流范围;
根据所述用户访问序列获取对应于所述用户访问画像矩阵的各个维度的值;
根据判断所述各个维度的值是否在所述限流范围内,以确定所述当前访问是否为正常访问。
8.根据权利要求7所述的装置,其特征在于,所述当前访问信息还包括:当前服务URL和时间戳。
9.根据权利要求7所述的装置,其特征在于,所述用户访问画像矩阵包括用户标识且包含如下任意一种或多种维度:
用户单位时间内对特定URL请求总次数、用户单位时间内的URL请求总次数、用户单位时间内的URL请求总数与URL种类数的比值、全量用户单位时间内的特定URL请求总次数、全量用户单位时间内的URL请求总次数、全量用户单位时间内的URL请求总数与URL种类数的比值。
10.根据权利要求7所述的装置,其特征在于,还包括:
应用埋点模块,用于在所述宿主应用内的网页服务入口处设置埋点,使得任意一个或多个用户访问所述网页服务时触发所述埋点以生成调用请求,所述调用请求包括所述当前访问信息;
结果输出模块,用于将所述当前访问的判断结果应答至所述宿主应用的埋点处,且当所述应用埋点模块收到非正常访问的应答时,向所述宿主应用反馈限流提醒。
11.根据权利要求7所述的装置,其特征在于,所述访问矩阵池还用于:
通过对用户历史访问数据分别进行时间维度和空间维度的数据归纳,得到所述访问矩阵池;
其中,所述时间维度是指对单一用户的访问序列进行数据归纳,所述空间维度是指对同一时间不同用户并发的访问信息进行数据归纳。
12.根据权利要求7所述的装置,其特征在于,所述限流计算模块还用于:
根据维度权重对所述用户画像矩阵的多个维度进行优先级排列;
按照优先级顺序依次判断所述各个维度的值是否在对应的所述限流范围内;
其中,一旦判断出所述当前访问是非正常访问,则无需对后续优先级维度进行判断。
13.一种网页访问限流装置,其特征在于,包括:
至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行:如权利要求1-6中任一项所述的方法。
14.一种计算机可读存储介质,所述计算机可读存储介质存储有程序,当所述程序被多核处理器执行时,使得所述多核处理器执行如权利要求1-6中任一项所述的方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111407417.6A CN113973087B (zh) | 2021-11-24 | 2021-11-24 | 一种网页访问限流方法、装置及计算机可读存储介质 |
PCT/CN2022/117423 WO2023093206A1 (zh) | 2021-11-24 | 2022-09-07 | 一种网页访问限流方法、装置及计算机可读存储介质 |
TW111137565A TWI856384B (zh) | 2021-11-24 | 2022-10-03 | 網頁訪問限流方法、裝置及電腦可讀存儲介質 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111407417.6A CN113973087B (zh) | 2021-11-24 | 2021-11-24 | 一种网页访问限流方法、装置及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113973087A CN113973087A (zh) | 2022-01-25 |
CN113973087B true CN113973087B (zh) | 2024-01-05 |
Family
ID=79590248
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111407417.6A Active CN113973087B (zh) | 2021-11-24 | 2021-11-24 | 一种网页访问限流方法、装置及计算机可读存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN113973087B (zh) |
WO (1) | WO2023093206A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113973087B (zh) * | 2021-11-24 | 2024-01-05 | 中国银联股份有限公司 | 一种网页访问限流方法、装置及计算机可读存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107783987A (zh) * | 2016-08-25 | 2018-03-09 | 腾讯科技(深圳)有限公司 | 一种数据处理方法及装置 |
CN107918497A (zh) * | 2017-11-14 | 2018-04-17 | 厦门攸信信息技术有限公司 | 一种控制器的预测方法及系统 |
CN109274639A (zh) * | 2018-07-03 | 2019-01-25 | 阿里巴巴集团控股有限公司 | 开放平台异常数据访问的识别方法和装置 |
CN109271555A (zh) * | 2018-09-19 | 2019-01-25 | 上海哔哩哔哩科技有限公司 | 信息聚类方法、系统、服务器及计算机可读存储介质 |
CN109962855A (zh) * | 2017-12-14 | 2019-07-02 | 深圳市融汇通金科技有限公司 | 一种web服务器的限流方法、限流装置及终端设备 |
CN110677494A (zh) * | 2019-10-14 | 2020-01-10 | 腾讯科技(深圳)有限公司 | 访问响应方法和装置 |
CN111966995A (zh) * | 2020-08-17 | 2020-11-20 | 福建工程学院 | 一种基于用户行为的用户权限动态管控方法和装置以及设备 |
WO2021196097A1 (zh) * | 2020-04-01 | 2021-10-07 | 深圳市欢太科技有限公司 | 用户画像列表构建方法、装置、服务器以及存储介质 |
CN113645310A (zh) * | 2021-08-20 | 2021-11-12 | 北京高途云集教育科技有限公司 | 一种数据限流方法、装置、电子设备及可读存储介质 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170149828A1 (en) * | 2015-11-24 | 2017-05-25 | International Business Machines Corporation | Trust level modifier |
CN107222426B (zh) * | 2016-03-21 | 2021-07-20 | 阿里巴巴集团控股有限公司 | 控流的方法、装置及系统 |
CN107465648B (zh) * | 2016-06-06 | 2020-09-04 | 腾讯科技(深圳)有限公司 | 异常设备的识别方法及装置 |
CN107465686A (zh) * | 2017-08-23 | 2017-12-12 | 杭州安恒信息技术有限公司 | 基于网络异质大数据的ip信誉度计算方法及装置 |
CN111552933A (zh) * | 2020-03-30 | 2020-08-18 | 西安交大捷普网络科技有限公司 | 一种账号异常登录的识别方法与装置 |
CN111756702B (zh) * | 2020-05-29 | 2022-11-08 | 北京沃东天骏信息技术有限公司 | 数据安全防护方法、装置、设备和存储介质 |
CN113347205B (zh) * | 2021-06-30 | 2022-10-28 | 深圳前海微众银行股份有限公司 | 一种检测业务访问请求的方法及装置 |
CN113973087B (zh) * | 2021-11-24 | 2024-01-05 | 中国银联股份有限公司 | 一种网页访问限流方法、装置及计算机可读存储介质 |
-
2021
- 2021-11-24 CN CN202111407417.6A patent/CN113973087B/zh active Active
-
2022
- 2022-09-07 WO PCT/CN2022/117423 patent/WO2023093206A1/zh unknown
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107783987A (zh) * | 2016-08-25 | 2018-03-09 | 腾讯科技(深圳)有限公司 | 一种数据处理方法及装置 |
CN107918497A (zh) * | 2017-11-14 | 2018-04-17 | 厦门攸信信息技术有限公司 | 一种控制器的预测方法及系统 |
CN109962855A (zh) * | 2017-12-14 | 2019-07-02 | 深圳市融汇通金科技有限公司 | 一种web服务器的限流方法、限流装置及终端设备 |
CN109274639A (zh) * | 2018-07-03 | 2019-01-25 | 阿里巴巴集团控股有限公司 | 开放平台异常数据访问的识别方法和装置 |
CN109271555A (zh) * | 2018-09-19 | 2019-01-25 | 上海哔哩哔哩科技有限公司 | 信息聚类方法、系统、服务器及计算机可读存储介质 |
CN110677494A (zh) * | 2019-10-14 | 2020-01-10 | 腾讯科技(深圳)有限公司 | 访问响应方法和装置 |
WO2021196097A1 (zh) * | 2020-04-01 | 2021-10-07 | 深圳市欢太科技有限公司 | 用户画像列表构建方法、装置、服务器以及存储介质 |
CN111966995A (zh) * | 2020-08-17 | 2020-11-20 | 福建工程学院 | 一种基于用户行为的用户权限动态管控方法和装置以及设备 |
CN113645310A (zh) * | 2021-08-20 | 2021-11-12 | 北京高途云集教育科技有限公司 | 一种数据限流方法、装置、电子设备及可读存储介质 |
Non-Patent Citations (1)
Title |
---|
从Web日志中挖掘用户浏览偏爱路径;邢东山,沈钧毅,宋擒豹;计算机学报(11);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113973087A (zh) | 2022-01-25 |
TW202321949A (zh) | 2023-06-01 |
WO2023093206A1 (zh) | 2023-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110768912B (zh) | Api网关限流方法及装置 | |
CN110033247B (zh) | 支付渠道推荐方法及其系统 | |
US20220146995A1 (en) | Determining causal models for controlling environments | |
CN106709068B (zh) | 一种热点数据识别方法及其装置 | |
CN106776660A (zh) | 一种信息推荐方法及装置 | |
CN106033461A (zh) | 敏感信息的查询方法和装置 | |
CN113973087B (zh) | 一种网页访问限流方法、装置及计算机可读存储介质 | |
US20230012852A1 (en) | Condensed spoken utterances for automated assistant control of an intricate application gui | |
CN114330130A (zh) | 一种电池剩余使用寿命预测方法、设备及介质 | |
CN106469018A (zh) | 分布式存储系统的负载监控方法及设备 | |
JP7241789B2 (ja) | データ検索方法、装置、システム、デバイスおよびコンピュータ可読記憶媒体 | |
CN110955846A (zh) | 传播路径图生成方法及装置 | |
CN116894130A (zh) | 用于多页签的页面刷新处理方法、装置及处理器 | |
CN110109970B (zh) | 一种数据查询处理方法及装置 | |
TWI856384B (zh) | 網頁訪問限流方法、裝置及電腦可讀存儲介質 | |
CN114710318B (zh) | 一种限制爬虫高频访问的方法、装置、设备及介质 | |
CN108154377B (zh) | 广告作弊预测方法及装置 | |
CN115563173A (zh) | 一种数据处理方法、装置、设备及介质 | |
CN115222101A (zh) | 一种流量数据处理方法及装置 | |
CN114882713A (zh) | 基于多场景的信号控制方法、系统、设备和存储介质 | |
CN116187094B (zh) | 一种基于工作情况实时分析的质量工作预测系统 | |
CN110866033B (zh) | 一种用于预测查询资源占用量的特征确定方法及装置 | |
CN110990684A (zh) | 网页列表数据的排序方法及装置 | |
CN118260286A (zh) | 一种数据存储方法及装置 | |
CN118587004A (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40067106 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |