CN113010818B - 访问限流方法、装置、电子设备及存储介质 - Google Patents

访问限流方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN113010818B
CN113010818B CN202110203480.1A CN202110203480A CN113010818B CN 113010818 B CN113010818 B CN 113010818B CN 202110203480 A CN202110203480 A CN 202110203480A CN 113010818 B CN113010818 B CN 113010818B
Authority
CN
China
Prior art keywords
service
frequency
access
local
application
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
CN202110203480.1A
Other languages
English (en)
Other versions
CN113010818A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202110203480.1A priority Critical patent/CN113010818B/zh
Publication of CN113010818A publication Critical patent/CN113010818A/zh
Application granted granted Critical
Publication of CN113010818B publication Critical patent/CN113010818B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9574Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06MCOUNTING MECHANISMS; COUNTING OF OBJECTS NOT OTHERWISE PROVIDED FOR
    • G06M1/00Design features of general application
    • G06M1/27Design features of general application for representing the result of count in the form of electric signals, e.g. by sensing markings on the counter drum
    • G06M1/272Design features of general application for representing the result of count in the form of electric signals, e.g. by sensing markings on the counter drum using photoelectric means
    • 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
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请涉及计算机技术领域,特别涉及云技术领域,公开了一种访问限流方法、装置、电子设备及存储介质,该方法为:获得访问频率查询请求携带的目标业务的业务标识;在对应业务标识的共享内存段中,获得业务标识对应的访问本地次数阈值和上一次保存的历史已访问次数,并对历史已访问次数进行更新,获得当前已访问次数,访问本地次数阈值是基于业务标识对应的最新的访问总次数、以及最新的限流服务器总台数生成的;若当前已访问次数不大于访问本地次数阈值,则向应用服务器返回允许提供应用服务的查询结果。从本地的共享内存中读取数据,提高了数据的读写效率;基于可伸缩部署的限流服务器总台数和最新的访问总次数,动态更新访问本地次数阈值。

Description

访问限流方法、装置、电子设备及存储介质
技术领域
本申请涉及计算机技术领域,特别涉及云技术领域,公开了一种访问限流方法、装置、电子设备及存储介质。
背景技术
在高并发场景下,可以通过限流的方式对一个时间窗口内的并发请求进行限速,从而达到保护系统的目的。在相关技术中,提供限流服务的服务器从其他服务器的数据库(DataBase,DB)中获取目标业务的历史已访问次数和访问本地次数阈值,若当前已访问次数大于访问本地次数阈值,则暂停向该目标业务提供应用服务。在获取历史已访问次数和访问本地次数阈值时,受到服务器间的网络通信状态的影响,数据的读写效率较低;另外,访问本地次数阈值是基于固定数量的限流服务器生成的,无法适应高并发场景下限流服务器的动态分配特点。
发明内容
本申请实施例提供一种访问限流方法、装置、电子设备及存储介质,用以提高数据的读写效率和动态计算访问本地次数阈值。
本申请实施例提供了一种访问限流方法,该方法应用于限流服务器,包括:
接收应用服务器发送的访问频率查询请求,并获得所述访问频率查询请求携带的目标业务的业务标识;
在对应所述业务标识所设置的共享内存段中,获得所述业务标识对应的访问本地次数阈值和上一次保存的历史已访问次数,并对所述历史已访问次数进行更新,获得当前已访问次数,所述访问本地次数阈值是基于所述业务标识对应的最新的访问总次数、以及最新的限流服务器总台数生成的,所述访问本地次数阈值表征所述限流服务器记录的所述应用服务器在所述业务时间段内为所述目标业务提供应用服务的次数上限,所述访问总次数表征所述应用服务器在所述业务时间段内为所述目标业务提供应用服务的总次数;
若所述当前已访问次数不大于所述访问本地次数阈值,则向所述应用服务器返回允许提供应用服务的查询结果,以使所述应用服务器在所述业务时间段内为所述目标业务提供相应的应用服务。
可选的,在获得所述访问频率查询请求携带的目标业务的业务标识之后,在获得所述业务标识对应的访问本地次数阈值和上一次保存的历史已访问次数之前,还包括:
若确定在本地的缓存进程中未获取到所述业务标识,则判定所述访问频率查询请求不符合预设的拦截条件;
其中,所述拦截条件表征在接收到所述访问频率查询请求之前,对应所述业务标识记录的历史已访问次数等于所述访问本地次数阈值。
可选的,还包括:
若确定在本地的缓存进程中获取到所述业务标识,则拦截所述访问频率查询请求,并向所述应用服务器返回拒绝提供应用服务的查询结果,以使所述应用服务器在所述设定时间段内暂停向所述目标业务提供相应的应用服务。
可选的,在对应所述业务标识设置的共享内存段中,获得所述业务标识对应的访问本地次数阈值和历史已访问次数,包括:
在所述共享内存段中获取所述业务标识对应的频率计数器;
从所述频率计数器中读取所述访问本地次数阈值和所述历史已访问次数。
可选的,还包括:
若在所述共享内存段中未获取到所述业务标识对应的频率计数器,则从本地的配置文件中获取所述业务标识对应的最新的访问总次数,以及最新的限流服务器总台数;
基于所述最新的访问总次数和所述最新的限流服务器总台数,获得所述业务标识对应的访问本地次数阈值,并基于所述访问本地次数阈值生成对应的频率计数器。
可选的,在获取到所述业务标识对应的频率计数器之后,在从所述频率计数器中读取所述访问次数阈值和所述历史访问次数之前,还包括:
从所述频率计数器中获取计数器创建时间和计数器更新时间,基于当前计数器调用时间对所述计数器更新时间进行更新,获得最新的计数器更新时间;
基于所述计数器创建时间和所述最新的计数器更新时间,确定对应所述频率计数器预设的有效时长未超时。
可选的,在对所述历史已访问次数进行更新,获得所述当前已访问次数之后,在向所述应用服务器返回允许提供应用服务的查询结果之前,还包括:
使用中央处理器CPU原子命令,将所述当前已访问次数写入所述业务标识对应的频率计数器中。
可选的,还包括:
按照设定的扫描周期扫描所述共享内存中的各个频率计数器;
对有效时长已超时的频率计数器执行进程释放。
本申请实施例提供了一种访问限流装置,该装置应用于限流服务器,包括:
获取单元,用于接收应用服务器发送的访问频率查询请求,并获得所述访问频率查询请求携带的目标业务的业务标识;
处理单元,用于在对应所述业务标识所设置的共享内存段中,获得所述业务标识对应的访问本地次数阈值和上一次保存的历史已访问次数,并对所述历史已访问次数进行更新,获得当前已访问次数,所述访问本地次数阈值是基于所述业务标识对应的最新的访问总次数、以及最新的限流服务器总台数生成的,所述访问本地次数阈值表征所述限流服务器记录的所述应用服务器在所述业务时间段内为所述目标业务提供应用服务的次数上限,所述访问总次数表征所述应用服务器在所述业务时间段内为所述目标业务提供应用服务的总次数;
若所述当前已访问次数不大于所述访问本地次数阈值,则向所述应用服务器返回允许提供应用服务的查询结果,以使所述应用服务器在所述业务时间段内为所述目标业务提供相应的应用服务。
可选的,在获得所述访问频率查询请求携带的目标业务的业务标识之后,在获得所述业务标识对应的访问本地次数阈值和上一次保存的历史已访问次数之前,所述处理单元还用于:
若确定在本地的缓存进程中未获取到所述业务标识,则判定所述访问频率查询请求不符合预设的拦截条件;
其中,所述拦截条件表征在接收到所述访问频率查询请求之前,对应所述业务标识记录的历史已访问次数等于所述访问本地次数阈值。
可选的,所述处理单元还用于:
若确定在本地的缓存进程中获取到所述业务标识,则拦截所述访问频率查询请求,并向所述应用服务器返回拒绝提供应用服务的查询结果,以使所述应用服务器在所述设定时间段内暂停向所述目标业务提供相应的应用服务。
可选的,所述处理单元用于:
在所述共享内存段中获取所述业务标识对应的频率计数器;
从所述频率计数器中读取所述访问本地次数阈值和所述历史已访问次数。
可选的,所述处理单元还用于:
若在所述共享内存段中未获取到所述业务标识对应的频率计数器,则从本地的配置文件中获取所述业务标识对应的最新的访问总次数,以及最新的限流服务器总台数;
基于所述最新的访问总次数和所述最新的限流服务器总台数,获得所述业务标识对应的访问本地次数阈值,并基于所述访问本地次数阈值生成对应的频率计数器。
可选的,在获取到所述业务标识对应的频率计数器之后,在从所述频率计数器中读取所述访问次数阈值和所述历史访问次数之前,所述处理单元还用于:
从所述频率计数器中获取计数器创建时间和计数器更新时间,基于当前计数器调用时间对所述计数器更新时间进行更新,获得最新的计数器更新时间;
基于所述计数器创建时间和所述最新的计数器更新时间,确定对应所述频率计数器预设的有效时长未超时。
可选的,在对所述历史已访问次数进行更新,获得所述当前已访问次数之后,在向所述应用服务器返回允许提供应用服务的查询结果之前,所述处理单元还用于:
使用中央处理器CPU原子命令,将所述当前已访问次数写入所述业务标识对应的频率计数器中。
可选的,所述处理单元还用于:
按照设定的扫描周期扫描所述共享内存中的各个频率计数器;
对有效时长已超时的频率计数器执行进程释放。
本申请实施例提供的一种电子设备,包括处理器和存储器,其中,所述存储器存储有程序代码,当所述程序代码被所述处理器执行时,使得所述处理器执行上述任意一种访问限流方法的步骤。
本申请实施例提供一种计算机可读存储介质,其包括程序代码,当所述程序代码在电子设备上运行时,所述程序代码用于使所述电子设备执行上述任意一种访问限流方法的步骤。
本申请有益效果如下:
本申请实施例提供了一种访问限流方法、装置、电子设备及存储介质。在本申请实施例中,接收应用服务器发送的访问频率查询请求,并获得访问频率查询请求携带的目标业务的业务标识;在对应业务标识所设置的共享内存段中,获得业务标识对应的访问本地次数阈值和上一次保存的历史已访问次数,并对历史已访问次数进行更新,获得当前已访问次数,其中,访问本地次数阈值表征是基于业务标识对应的最新的访问总次数、以及最新的限流服务器总台数生成的,访问本地次数阈值限流服务器记录的应用服务器在业务时间段内为目标业务提供应用服务的次数上限;若当前已访问次数不大于访问本地次数阈值,则向应用服务器返回允许提供应用服务的查询结果,以使应用服务器在业务时间段内为目标业务提供相应的应用服务。从业务标识对应的共享内存段中获取历史已访问次数和访问本地次数阈值,并基于历史已访问次数和访问本地次数阈值,判断应用服务器是否在业务时间段为目标业务提供相应的应用服务,从本地的共享内存中读取数据,相较于通过通信网络在服务器之间传输数据来说,大大提高了数据的读写效率;而基于可伸缩部署的限流服务器总台数和最新的访问总次数,可以动态更新访问本地次数阈值。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例中一种应用场景的一个可选的示意图;
图2a为本申请实施例中访问限流系统的架构示意图;
图2b为本申请实施例中应用服务器与一台限流服务器之间的数据交互示意图;
图2c为本申请实施例中共享内存的内部示意图;
图3为本申请实施例中访问限流方法的流程示意图;
图4a为本申请实施例中共享内存内部的数据交互示意图;
图4b为本申请实施例中频率计数器a'的示意图;
图4c为本申请实施例中共享内存段与私有内存段的示意图;
图4d为本申请实施例中新的频率计数器b"的示意图;
图4e为本申请实施例中新的频率计数器a"的示意图;
图4f为本申请实施例中对频率计数器a'执行读写操作的示意图;
图4g为本申请实施例中对频率计数器a'执行读写操作的示意图;
图5为本申请实施例中应用于限流服务器的访问限流装置的结构示意图;
图6为应用本申请实施例中一种电子设备的一个硬件组成结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请技术方案的一部分实施例,而不是全部的实施例。基于本申请文件中记载的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请技术方案保护的范围。
本申请涉及云技术(Cloud technology)领域,云技术是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。
具体地,云技术是应用云计算(Cloud computing)商业模式的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称。云技术可以组成资源池,按需所用,灵活便利。云计算技术将变成云技术的重要支撑,在云技术网络系统的后台服务中需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,在未来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,而这只能通过云计算来实现。
云计算是指信息技术(Information Technology,IT)基础设施的交付和使用模式,指通过网络以按需、易扩展的方式获得所需资源;而广义云计算是指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需服务,这种服务可以是IT和软件、互联网相关,也可以是其他服务。云计算是网格计算(Grid Computing)、分布式计算(DistributedComputing)、并行计算(Parallel Computing)、效用计算(UtilityComputing)、网络存储(Network Storage Technologies)、虚拟化(Virtualization)、负载均衡(Load Balance)等传统计算机和网络技术发展融合的产物。随着互联网、实时数据流、连接设备多样化的发展,以及搜索服务、社会网络、移动商务和开放协作等需求的推动,云计算迅速发展起来。不同于以往的并行分布式计算,云计算的产生从理念上将推动整个互联网模式、企业管理模式发生革命性的变革。
随着互联网的发展壮大,像“主机/终端”或“客户机/服务器”传统的应用系统模式已经不能适应新的环境,因此产生了新的分布式应用系统,相应地,新的开发模式(即“浏览器/服务器”结构、“瘦客户机”模式)也应运而生,而应用服务器(Application Server)便是一种实现上述模式的核心技术。
应用服务器上驻留了网络应用程序,应用服务器为网络应用程序提供了一种简单的、可管理的访问系统资源的机制。除此之外,应用服务器还提供了低级的服务,如超文本传输协议(Hyper Text Transfer Protocol,HTTP)的实现和数据库的连接管理。
为了避免应用服务器因一个时间窗口内接收到的高并发请求而崩溃,应用服务器每接收到一个业务请求,需向限流服务器查询业务请求是否满足限流条件,若是,则暂停提供相应的应用服务;若否,则继续提供相应的应用服务。而限流服务器正是提供限流服务的服务器,通过对一个时间窗口内的并发请求进行计算,或者对一个时间窗口内的非并发请求进行计算,在确定同一业务标识的当前已访问次数达到访问本地次数阈值时,命令应用服务器执行暂停提供相应的应用服务、排队等待或者降级等处理。
在本申请实施例中,采用分布式架构部署限流服务器,这样应用服务器可向提供限流服务的任意一服务器发送访问频率查询请求,在解决了传统的服务器单体架构带来的系统容量低、扩展性差问题的同时,还可以减轻每台限流服务器的压力,提高每台限流服务器的工作效率。利用分布式架构的特性,还可以根据目标业务的需求量,可伸缩部署服务该业务标识的限流服务器,即在目标业务的需求量增长时,自动地增加服务该目标业务的限流服务器的总台数,以及在目标业务的需求量降低时,自动地减少服务该目标业务的限流服务器的总台数。
下面对本申请实施例的设计思想进行简要介绍:
在高并发场景下,可以通过限流的方式对一个时间窗口内的并发请求进行限速,从而达到保护系统的目的。在相关技术中,提供限流服务的服务器从其他服务器的数据库中获取目标业务的历史已访问次数和访问本地次数阈值,若当前已访问次数大于访问本地次数阈值,则暂停向该目标业务提供应用服务。在获取历史已访问次数和访问本地次数阈值时,受到服务器之间的网络通信状态的影响,读写数据效率较低;另外,访问本地次数阈值是基于目标业务的最大访问总数和固定数量的限流服务器计算得到的,也无法适应限流服务器动态分配的场景。有鉴于此,本申请实施例提出了一种新的访问限流的方法、装置、电子设备及存储介质。
该方法包括:接收应用服务器发送的访问频率查询请求,并获得访问频率查询请求携带的目标业务的业务标识;在对应业务标识设置的共享内存段中,获得业务标识对应的访问本地次数阈值和上一次保存的历史已访问次数,并对历史已访问次数进行更新,获得当前已访问次数,其中,访问本地次数阈值表征限流服务器记录的应用服务器在业务时间段内为目标业务提供应用服务的次数上限;若当前已访问次数不大于访问本地次数阈值,则向应用服务器返回允许提供应用服务的查询结果,以使应用服务器在业务时间段内为目标业务提供相应的应用服务。从业务标识对应的共享内存段中获取历史已访问次数和访问本地次数阈值,并基于历史已访问次数和访问本地次数阈值,判断应用服务器是否在业务时间段为目标业务提供相应的应用服务,从本地的共享内存中读取数据,相较于通过通信网络在服务器之间传输数据来说,大大提高了数据的读写效率。
以下结合说明书附图对本申请的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本申请,并不用于限定本申请,并且在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互结合。
参阅图1示出的应用场景示意图。该应用场景图中包括两个终端设备110和一个应用服务器130。
用户可通过终端设备110登录应用操作界面120,在本申请实施例中,终端设备110是用户使用的电子设备,该电子设备可以是个人计算机、手机、平板电脑、笔记本、电子书阅读器、智能家居、可穿戴设备、车载计算机等计算机设备。
各终端设备110通过通信网络与应用服务器130进行通信。在一种可选的实施方式中,通信网络是有线网络或者无线网络,因此,终端设备110可通过有线网络或者无线网络,直接或间接地与应用服务器130建立通信连接,本申请在此不做限制。应用服务器130可以是独立的物理服务器130,也可以是多个物理服务器130构成的服务器130集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器130,本申请在此不做限制。其中,服务器也可以是区块链系统的节点。
其中,应用服务器130在接收到终端设备发送的业务请求时,需向相应的限流服务器发送访问频率查询请求,在收到限流服务器返回的允许提供应用服务的查询结果时,在业务时间段内为目标业务提供相应的应用服务。
参阅图2a示出的访问限流系统的架构示意图,该系统包括一台应用服务器和多台限流服务器,一个业务标识所对应的频率计数器可存储在多台限流服务器上,但一台限流服务器上仅存储了一个业务标识所对应的频率计数器,因此,每台限流服务器所包含的频率计数器总数不一定相同,不同限流服务器上可能存储了针对同一业务标识的频率计数器,也可能存储了不同业务标识的频率计数器,如,限流服务器1上分别存储了业务标识a、b和c的频率计数器,限流服务器2上分别存储了业务标识a、c和e的频率计数器,限流服务器3上分别存储了业务标识a和d的频率计数器。
虽然每台限流服务器都可以基于应用服务器发送的业务标识a,判断应用服务器是否在业务时间段为目标业务提供相应的应用服务,但是应用服务器只需向任意一限流服务器发送访问频率查询请求即可,并在限流服务器返回允许提供应用服务的查询结果时,在业务时间段为目标业务提供相应的应用服务;或者在限流服务器返回拒绝提供应用服务的查询结果时,在业务时间段暂停为目标业务提供相应的应用服务。
具体地,参阅图2b所示的数据交互示意图,一个限流服务器包括限流服务组件,以及与限流服务组件相关联的缓存(Cache)组件、本地的配置(Configuration)文件和共享内存。
限流服务组件是提供限流服务的硬件设备,限流服务组件在接收到应用服务器发送的访问频率查询请求时,触发生成相应的限流服务进程,通过限流服务进程判断是否对访问频率查询请求对应的目标业务进行限流处理。缓存组件是安装在限流服务器本地上的硬件设备,主要用于存储历史已访问次数等于访问本地次数阈值的业务标识,已达到节省读写数据的时间、提高工作效率的目的。
在限流服务器的本地磁盘中存储了本地的配置文件,而配置文件中存储了各个业务标识各自对应的最新的访问总次数,以及最新的限流服务器总台数。共享内存是提供数据读写功能的大容量内存,参阅图2c示出的共享内存的内部示意图,共享内存的各个内存段中分别存储了各个业务标识各自对应的频率计数器,频率计数器可实时统计各个业务标识在本地记录的当前已访问次数。
接下来,参阅图3示出的流程示意图,对本申请实施例提出的访问限流方法的过程进行介绍。
S301:限流服务器接收应用服务器发送的访问频率查询请求,并获得访问频率查询请求携带的目标业务的业务标识。
用户通过设备向应用服务器对应的接口发送目标业务请求,目标业务请求中携带了用户标识和设备标识,如目标业务为支付业务时,用户标识可为商户号,设备标识可为终端的互联网协议(Internet Protocol,IP)地址;应用服务器基于接收到的目标业务请求,生成相应的访问频率查询请求,并将访问频率查询请求发送给限流服务器;限流服务器解析访问频率查询请求,获取请求所携带的业务标识,业务标识包括接口号、用户标识和设备标识。可以理解,目标业务也可以是如即时通信、数据请求等其他信息传输业务。
在前述介绍中提到过限流服务器采用分布式架构部署,也就是说,每台限流服务器可为不同的目标业务提供限流服务,而多台限流服务器也可为同一目标业务提供限流服务。但应用服务器无需向全部的限流服务器发送访问频率查询请求,只需向任意一限流服务器发送访问频率查询请求即可。
S302:在对应业务标识所设置的共享内存段中,获得业务标识对应的访问本地次数阈值和上一次保存的历史已访问次数,并对历史已访问次数进行更新,获得当前已访问次数,访问本地次数阈值是基于业务标识对应的最新的访问总次数、以及最新的限流服务器总台数生成的,访问本地次数阈值表征限流服务器记录的应用服务器在业务时间段内为目标业务提供应用服务的次数上限。
参阅图4a所示的共享内存内部的数据交互示意图,对限流服务组件与共享内存之间的数据交互过程进行介绍。
当业务标识对应的历史已访问次数等于访问本地次数阈值时,无需从共享内存段中获取业务标识对应的频率计数器,更无需对频率计数器执行读写操作,更新频率计数器中统计的历史已访问次数,因此,在本申请实施例中还提出了一种拦截场景的优化方案,即在业务标识对应的历史已访问次数等于访问本地次数阈值时,直接拦截后续发来的访问频率查询请求,这样在面对数量巨大的请求时,可以节省读写数据的时间,提高工作效率。
具体地,在执行步骤302之前,判断本地的缓存进程中是否获取到了业务标识,若是,则拦截访问频率查询请求,并向应用服务器返回拒绝提供应用服务的查询结果,以使应用服务器在设定时间段内暂停向目标业务提供相应的应用服务;若否,则判定访问频率查询请求不符合预设的拦截条件;其中,拦截条件表征在接收到访问频率查询请求之前,对应业务标识记录的历史已访问次数等于访问本地次数阈值。
例如,限流服务进程1对接收到的访问频率查询请求1进行解析,获取该请求携带的业务标识a,若限流服务进程1在缓存进程中未获取到业务标识a,则获取业务标识a对应的频率计数器a'进行后续的处理;否则,拦截访问频率查询请求1,并向应用服务器返回拒绝提供应用服务的查询结果,以使应用服务器在1分钟之内暂停向用户A的支付业务提供相应的支付服务。
例如,限流服务组件同时接收到访问频率查询请求1和访问频率查询请求2,基于访问频率查询请求1生成限流服务进程1,由限流服务进程1解析访问频率查询请求1,获取该请求携带的业务标识a,限流服务进程1在缓存进程中未获取到业务标识a,则获取业务标识a对应的频率计数器a'进行后续的处理;接着基于访问频率查询请求2生成限流服务进程2,再由限流服务进程2解析访问频率查询请求2,获取该请求携带的业务标识a,限流服务进程2在缓存进程中获取到了业务标识a,则拦截访问频率查询请求2,并向应用服务器返回拒绝提供应用服务的查询结果,以使应用服务器在1分钟之内暂停向用户A的支付业务提供相应的支付服务。
又例如,限流服务进程同时接收到访问频率查询请求1和访问频率查询请求2,基于访问频率查询请求1生成限流服务进程1,由限流服务进程1解析访问频率查询请求1,获取该请求携带的业务标识a,限流服务进程1在缓存进程中获取到了业务标识a,则拦截访问频率查询请求1,并向应用服务器返回拒绝提供应用服务的查询结果,以使应用服务器在1分钟之内暂停向用户A的支付业务提供相应的支付服务;
接着,基于访问频率查询请求2生成限流服务进程2,再由限流服务进程2解析访问频率查询请求2,获取该请求携带的业务标识a,限流服务进程在缓存进程中继续获取到了业务标识a,则拦截访问频率查询请求2,并向应用服务器返回拒绝提供应用服务的查询结果,以使应用服务器在1分钟之内暂停向用户A的支付业务提供相应的支付服务。
为了保证限流服务器的稳定性,防止共享内存不断膨胀,在本申请实施例中还设计了一个频率清理进程,按照设定的扫描周期扫描共享内存中的各个频率计数器,对有效时长已超时的频率计数器执行进程释放。例如,频率计数器a'的有效时间为1分钟,每隔2分钟扫描共享内存中的所有频率计数器,对有效时长(指的是频率计数器的存在时间)超过1分钟的频率计数器执行进程释放。
但在限流服务器运行的过程中,还有可能出现在相邻两个扫描周期之间超时的频率计数器,因此,在获取到业务标识对应的频率计数器之后,在从频率计数器中读取访问次数阈值和历史访问次数之前,还包括:从频率计数器中获取计数器创建时间和计数器更新时间,基于当前计数器调用时间对计数器更新时间进行更新,获得最新的计数器更新时间;再基于计数器创建时间和最新的计数器更新时间,确定对应所述频率计数器预设的有效时长未超时。
例如,参阅图4b所示的频率计数器a'示意图,频率计数器a'的有效时间为1分钟,计数器创建时间为19:30,计数器更新时间为19:32,当前计数器调用时间为19:33,则最新的计数器更新时间应为19:33,那么频率计数器a'的有效时长为3分钟,远远超过了预设的有效时间,因此,对频率计数器a'执行进程释放,并生成业务标识对应的新的频率计数器a"。
若访问频率查询请求未被拦截,则限流服务进程在共享内存段中获取业务标识对应的频率计数器,从频率计数器中读取访问本地次数阈值和历史已访问次数。
参阅图4c示出的示意图,在相关技术中,限流服务组件若接收到多个访问频率查询请求,可基于每个访问频率查询请求生成相应的限流服务进程,但每个进程的频率计数器存储在各自的私有内存段中,限流服务进程2无法读取限流服务进程1在私有内存段中存储的频率计数器,可能会出现同一业务标识的频率计数器的数据不同步的问题,为了解决这个问题,本申请实施例将频率计数器存储在共享内存段中,这样在一台限流服务器上,每个业务标识只存储各自对应的一个频率计数器,方便读取数据,便于同步数据;另外,从本地的共享内存中读取数据,相较于通过通信网络在服务器之间传输数据来说,也大大地提高了数据的读写效率。
若在共享内存段中未获取到业务标识对应的频率计数器,则从本地的配置文件中获取业务标识对应的最新的访问总次数,以及最新的限流服务器总台数;其中,访问总次数表征应用服务器在业务时间段内为目标业务提供应用服务的总次数;再基于最新的访问总次数和最新的限流服务器总台数,获得业务标识对应的访问本地次数阈值,并基于访问本地次数阈值生成对应的频率计数器。
在本申请实施例中,利用分布式架构的特性,可根据目标业务的需求量,可伸缩部署服务该业务标识的限流服务器,但相关技术中仍然采用固定数量的限流服务器为对应的业务标识提供限流服务,也不会在配置文件中存储业务标识更新后的相关数据,不能适应高并发场景下目标业务的需求量实时变化的特点。但目标业务的需求量变化不会太频繁,因此,以业务时间段为基准,更新业务标识对应的最新的访问总次数,以及最新的限流服务器总台数即可。
例如,业务标识b对应的最新的访问总次数为1200次,最新的限流服务器总台数由3台更新为6台,那么业务标识b对应的访问本地次数阈值由400次更新为200次,因此,如图4d所示的新的频率计数器b"中的访问本地次数阈值更新为200次。
又例如,原频率计数器a'被释放进程之后,获取业务标识a对应的最新的访问总次数为1600次,最新的限流服务器总台数为4台,则生成的新的频率计数器a"中记录的访问本地次数阈值为400次。
应用服务器在接收到针对同一目标业务的并发请求时,会生成包含同一业务标识的多个访问频率查询请求,若限流服务器并行处理多个访问频率查询请求,容易导致该业务标识对应的频率计数器出现读写错误,为了解决这个问题,在本申请实施例中,在对历史已访问次数进行更新,获得当前已访问次数之后,在向应用服务器返回允许提供应用服务的查询结果之前,还包括:使用中央处理器CPU原子命令,将当前已访问次数写入业务标识对应的频率计数器中。采用CPU原子命令的方式,可以保证当前只有一个限流服务进程对频率计数器执行数据写操作。
例如,参阅图4f所示的示意图,限流服务组件同时接收到访问频率查询请求1和访问频率查询请求2,基于访问频率查询请求1生成限流服务进程1,由限流服务进程1解析访问频率查询请求1,获取该请求携带的业务标识a,限流服务进程1在缓存进程中未获取到业务标识a,则获取业务标识a对应的频率计数器a',采用CPU原子命令对频率计数器a'执行数据写操作,更新后的已访问次数为201次,并向应用服务器返回允许提供应用服务的查询结果,以使应用服务器在1分钟内为用户A的支付业务提供相应的支付服务。
接着,基于访问频率查询请求2生成限流服务进程2,再由限流服务进程2解析访问频率查询请求2,获取该请求携带的业务标识a,限流服务进程2在缓存进程中未获取到业务标识a,则获取业务标识a对应的频率计数器a',采用CPU原子命令对频率计数器a'执行数据写操作,更新后的已访问次数为202次,并向应用服务器返回允许提供应用服务的查询结果,以使应用服务器在1分钟内为用户A的支付业务提供相应的支付服务。
S303:若当前已访问次数不大于访问本地次数阈值,则向应用服务器返回允许提供应用服务的查询结果,以使应用服务器在业务时间段内为目标业务提供相应的应用服务。
例如,参阅图4g所示的示意图,限流服务组件同时接收到访问频率查询请求1和访问频率查询请求2,基于访问频率查询请求1生成限流服务进程1,由限流服务进程1解析访问频率查询请求1,获取该请求携带的业务标识a,限流服务进程1在缓存进程中未获取到业务标识a,则获取业务标识a对应的频率计数器a',采用CPU原子命令对频率计数器a'执行数据写操作,更新后的已访问次数为201次,并向应用服务器返回允许提供应用服务的查询结果,以使应用服务器在1分钟内为用户A的支付业务提供相应的支付服务。
与上述方法实施例基于同一发明构思,本申请实施例还提供了一种应用于限流服务器的访问限流装置的结构示意图。参阅图5所示的结构示意图,访问限流装置500可以包括:
获取单元501,用于接收应用服务器发送的访问频率查询请求,并获得所述访问频率查询请求携带的目标业务的业务标识;
处理单元502,用于在对应所述业务标识所设置的共享内存段中,获得所述业务标识对应的访问本地次数阈值和上一次保存的历史已访问次数,并对所述历史已访问次数进行更新,获得当前已访问次数,所述访问本地次数阈值表征所述限流服务器记录的所述应用服务器在所述业务时间段内为所述目标业务提供应用服务的次数上限;
若所述当前已访问次数不大于所述访问本地次数阈值,则向所述应用服务器返回允许提供应用服务的查询结果,以使所述应用服务器在所述业务时间段内为所述目标业务提供相应的应用服务。
可选的,在获得所述访问频率查询请求携带的目标业务的业务标识之后,在获得所述业务标识对应的访问本地次数阈值和上一次保存的历史已访问次数之前,所述处理单元502还用于:
若确定在本地的缓存进程中未获取到所述业务标识,则判定所述访问频率查询请求不符合预设的拦截条件;
其中,所述拦截条件表征在接收到所述访问频率查询请求之前,对应所述业务标识记录的历史已访问次数等于所述访问本地次数阈值。
可选的,所述处理单元502还用于:
若确定在本地的缓存进程中获取到所述业务标识,则拦截所述访问频率查询请求,并向所述应用服务器返回拒绝提供应用服务的查询结果,以使所述应用服务器在所述设定时间段内暂停向所述目标业务提供相应的应用服务。
可选的,所述处理单元502用于:
在所述共享内存段中获取所述业务标识对应的频率计数器;
从所述频率计数器中读取所述访问本地次数阈值和所述历史已访问次数。
可选的,所述处理单元502还用于:
若在所述共享内存段中未获取到所述业务标识对应的频率计数器,则从本地的配置文件中获取所述业务标识对应的最新的访问总次数,以及最新的限流服务器总台数;其中,所述访问总次数表征所述应用服务器在所述业务时间段内为所述目标业务提供应用服务的总次数;
基于所述最新的访问总次数和所述最新的限流服务器总台数,获得所述业务标识对应的访问本地次数阈值,并基于所述访问本地次数阈值生成对应的频率计数器。
可选的,在获取到所述业务标识对应的频率计数器之后,在从所述频率计数器中读取所述访问次数阈值和所述历史访问次数之前,所述处理单元502还用于:
从所述频率计数器中获取计数器创建时间和计数器更新时间,基于当前计数器调用时间对所述计数器更新时间进行更新,获得最新的计数器更新时间;
基于所述计数器创建时间和所述最新的计数器更新时间,确定对应所述频率计数器预设的有效时长未超时。
可选的,在对所述历史已访问次数进行更新,获得所述当前已访问次数之后,在向所述应用服务器返回允许提供应用服务的查询结果之前,所述处理单元502还用于:
使用中央处理器CPU原子命令,将所述当前已访问次数写入所述业务标识对应的频率计数器中。
可选的,所述处理单元502还用于:
按照设定的扫描周期扫描所述共享内存中的各个频率计数器;
对有效时长已超时的频率计数器执行进程释放。
为了描述的方便,以上各部分按照功能划分为各模块(或单元)分别描述。当然,在实施本申请时可以把各模块(或单元)的功能在同一个或多个软件或硬件中实现。
在介绍了本申请示例性实施方式的多媒体内容的识别方法和装置之后,接下来,介绍根据本申请的另一示例性实施方式的电子设备。
所属技术领域的技术人员能够理解,本申请的各个方面可以实现为系统、方法或程序产品。因此,本申请的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
与上述方法实施例基于同一发明构思,本申请实施例中还提供了一种电子设备。该电子设备可以用于判断应用服务器是否在业务时间段为目标业务提供相应的应用服务。在一种实施例中,该电子设备可以是服务器,如图1所示的服务器130,也可以是其他电子设备,如图1所示的终端设备110。在该实施例中,电子设备的结构可以如图6所示,包括存储器601,通讯模块603以及一个或多个处理器602。
存储器601,用于存储处理器602执行的计算机程序。存储器601可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统,以及运行即时通讯功能所需的程序等;存储数据区可存储各种即时通讯信息和操作指令集等。
存储器601可以是易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM);存储器601也可以是非易失性存储器(non-volatilememory),例如只读存储器,快闪存储器(flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD);或者存储器601是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器601可以是上述存储器的组合。
处理器602,可以包括一个或多个中央处理单元(central processing unit,CPU)或者为数字处理单元等等。处理器602,用于调用存储器601中存储的计算机程序时实现上述访问限流方法。
通讯模块603用于与终端设备和其他服务器进行通信。
本申请实施例中不限定上述存储器601、通讯模块603和处理器602之间的具体连接介质。本公开实施例在图6中以存储器601和处理器602之间通过总线604连接,总线604在图6中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。总线604可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器601中存储有计算机存储介质,计算机存储介质中存储有计算机可执行指令,计算机可执行指令用于实现本申请实施例的多媒体内容的识别方法。处理器602用于执行上述的多媒体内容的识别方法。
本申请的实施例还提供了一种计算机存储介质,计算机存储介质中存储有计算机可执行指令,计算机可执行指令用于实现本申请任一实施例所记载的访问限流方法。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read-Only Memory)、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本申请上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
在一些可能的实施方式中,本申请提供的访问限流方法的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在计算机设备上运行时,程序代码用于使计算机设备执行本说明书上述描述的根据本申请各种示例性实施方式的访问限流方法中的步骤,例如,计算机设备可以执行如图3中所示的步骤。
程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
本申请的实施方式的程序产品可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在计算装置上运行。然而,本申请的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被命令执行系统、装置或者器件使用或者与其结合使用。
可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由命令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (8)

1.一种访问限流方法,其特征在于,该方法应用于限流服务器,包括:
接收应用服务器发送的访问频率查询请求,并获得所述访问频率查询请求携带的目标业务的业务标识;
在共享内存段中获取所述业务标识对应的频率计数器,从所述频率计数器中读取访问本地次数阈值与上一次保存的历史已访问次数,其中,若在所述共享内存段中未获取所述业务标识对应的频率计数器,则从本地的配置文件中获取所述业务标识对应的最新的访问总次数,以及最新的限流服务器总台数,并基于所述最新的访问总次数与所述最新的限流服务器总台数,获得所述业务标识对应的访问本地次数阈值,基于所述访问本地次数阈值生成对应的频率计数器;
对所述历史已访问次数进行更新,获得当前已访问次数;其中,所述访问本地次数阈值是基于所述业务标识对应的最新的访问总次数以及最新的限流服务器总台数生成的,所述访问本地次数阈值表征所述限流服务器记录的所述应用服务器在业务时间段内为所述目标业务提供应用服务的次数上限,所述访问总次数表征所述应用服务器在所述业务时间段内为所述目标业务提供应用服务的总次数;
若所述当前已访问次数不大于所述访问本地次数阈值,则向所述应用服务器返回允许提供应用服务的查询结果,以使所述应用服务器在所述业务时间段内为所述目标业务提供相应的应用服务。
2.如权利要求1所述的方法,其特征在于,在获得所述访问频率查询请求携带的目标业务的业务标识之后,在获得所述业务标识对应的访问本地次数阈值和上一次保存的历史已访问次数之前,还包括:
若确定在本地的缓存进程中未获取到所述业务标识,则判定所述访问频率查询请求不符合预设的拦截条件;
其中,所述拦截条件表征在接收到所述访问频率查询请求之前,对应所述业务标识记录的历史已访问次数等于所述访问本地次数阈值。
3.如权利要求2所述的方法,其特征在于,还包括:
若确定在本地的缓存进程中获取到所述业务标识,则拦截所述访问频率查询请求,并向所述应用服务器返回拒绝提供应用服务的查询结果,以使所述应用服务器在设定时间段内暂停向所述目标业务提供相应的应用服务。
4.如权利要求1所述的方法,其特征在于,在获取到所述业务标识对应的频率计数器之后,在从所述频率计数器中读取访问本地次数阈值与上一次保存的历史已访问次数之前,还包括:
从所述频率计数器中获取计数器创建时间和计数器更新时间,基于当前计数器调用时间对所述计数器更新时间进行更新,获得最新的计数器更新时间;
基于所述计数器创建时间和所述最新的计数器更新时间,确定对应所述频率计数器预设的有效时长未超时。
5.如权利要求1所述的方法,其特征在于,还包括:
按照设定的扫描周期扫描所述共享内存中的各个频率计数器;
对有效时长已超时的频率计数器执行进程释放。
6.一种访问限流装置,其特征在于,该装置应用于限流服务器,包括:
获取单元,用于接收应用服务器发送的访问频率查询请求,并获得所述访问频率查询请求携带的目标业务的业务标识;
处理单元,用于在共享内存段中获取所述业务标识对应的频率计数器,从所述频率计数器中读取访问本地次数阈值与上一次保存的历史已访问次数,其中,若在所述共享内存段中未获取所述业务标识对应的频率计数器,则从本地的配置文件中获取所述业务标识对应的最新的访问总次数,以及最新的限流服务器总台数,并基于所述最新的访问总次数与所述最新的限流服务器总台数,获得所述业务标识对应的访问本地次数阈值,基于所述访问本地次数阈值生成对应的频率计数器;
对所述历史已访问次数进行更新,获得当前已访问次数;其中,所述访问本地次数阈值是基于所述业务标识对应的最新的访问总次数、以及最新的限流服务器总台数生成的,所述访问本地次数阈值表征所述限流服务器记录的所述应用服务器在业务时间段内为所述目标业务提供应用服务的次数上限,所述访问总次数表征所述应用服务器在所述业务时间段内为所述目标业务提供应用服务的总次数;
若所述当前已访问次数不大于所述访问本地次数阈值,则向所述应用服务器返回允许提供应用服务的查询结果,以使所述应用服务器在所述业务时间段内为所述目标业务提供相应的应用服务。
7.一种电子设备,其特征在于,其包括处理器和存储器,其中,所述存储器存储有程序代码,当所述程序代码被所述处理器执行时,使得所述处理器执行权利要求1~5中任一所述方法的步骤。
8.一种计算机可读存储介质,其特征在于,其包括程序代码,当所述程序代码在电子设备上运行时,所述程序代码用于使所述电子设备执行权利要求1~5中任一所述方法的步骤。
CN202110203480.1A 2021-02-23 2021-02-23 访问限流方法、装置、电子设备及存储介质 Active CN113010818B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110203480.1A CN113010818B (zh) 2021-02-23 2021-02-23 访问限流方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110203480.1A CN113010818B (zh) 2021-02-23 2021-02-23 访问限流方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN113010818A CN113010818A (zh) 2021-06-22
CN113010818B true CN113010818B (zh) 2023-06-30

Family

ID=76408420

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110203480.1A Active CN113010818B (zh) 2021-02-23 2021-02-23 访问限流方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN113010818B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114095201B (zh) * 2021-10-08 2023-12-19 网宿科技股份有限公司 基于边缘计算的流量控制方法及装置,电子设备,存储介质
CN114338639A (zh) * 2021-12-20 2022-04-12 上海万物新生环保科技集团有限公司 一种Nginx流量限制预警的方法及设备
CN114338133B (zh) * 2021-12-24 2023-07-07 中国联合网络通信集团有限公司 应用访问系统、方法、通信装置及存储介质
CN114422228A (zh) * 2022-01-14 2022-04-29 中国建设银行股份有限公司 访问请求处理方法、装置、设备和存储介质
CN114513469A (zh) * 2022-02-16 2022-05-17 中国工商银行股份有限公司 分布式系统的流量整形方法、装置和存储介质
CN114430396B (zh) * 2022-04-06 2022-07-05 中国光大银行股份有限公司 交易频率控制方法、装置、存储介质和电子设备
CN115550226A (zh) * 2022-07-27 2022-12-30 京东城市(北京)数字科技有限公司 一种分布式系统的流量监控方法及装置
CN115801685A (zh) * 2022-12-21 2023-03-14 平安银行股份有限公司 应用服务限流方法、装置、设备和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017190641A1 (zh) * 2016-05-03 2017-11-09 北京京东尚科信息技术有限公司 拦截爬虫的方法、装置、服务器终端以及计算机可读介质
CN109962855A (zh) * 2017-12-14 2019-07-02 深圳市融汇通金科技有限公司 一种web服务器的限流方法、限流装置及终端设备
CN110191160A (zh) * 2019-05-10 2019-08-30 深圳前海微众银行股份有限公司 一种并发控制方法和装置
CN110768912A (zh) * 2019-10-21 2020-02-07 中国民航信息网络股份有限公司 Api网关限流方法及装置
CN111030936A (zh) * 2019-11-18 2020-04-17 腾讯云计算(北京)有限责任公司 网络访问的限流控制方法、装置及计算机可读存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017190641A1 (zh) * 2016-05-03 2017-11-09 北京京东尚科信息技术有限公司 拦截爬虫的方法、装置、服务器终端以及计算机可读介质
CN109962855A (zh) * 2017-12-14 2019-07-02 深圳市融汇通金科技有限公司 一种web服务器的限流方法、限流装置及终端设备
CN110191160A (zh) * 2019-05-10 2019-08-30 深圳前海微众银行股份有限公司 一种并发控制方法和装置
CN110768912A (zh) * 2019-10-21 2020-02-07 中国民航信息网络股份有限公司 Api网关限流方法及装置
CN111030936A (zh) * 2019-11-18 2020-04-17 腾讯云计算(北京)有限责任公司 网络访问的限流控制方法、装置及计算机可读存储介质

Also Published As

Publication number Publication date
CN113010818A (zh) 2021-06-22

Similar Documents

Publication Publication Date Title
CN113010818B (zh) 访问限流方法、装置、电子设备及存储介质
US10331669B2 (en) Fast query processing in columnar databases with GPUs
US20170153909A1 (en) Methods and Devices for Acquiring Data Using Virtual Machine and Host Machine
CN110598138A (zh) 基于缓存的处理方法和装置
KR101719500B1 (ko) 캐싱된 플로우들에 기초한 가속
CN105376270B (zh) 提高上传效率的方法、装置和系统
CN103685304A (zh) 一种共享session信息的方法和系统
US10031948B1 (en) Idempotence service
CN107729570B (zh) 用于服务器的数据迁移方法和装置
US10015253B2 (en) System and method for preemptive request processing
CN105338016B (zh) 数据高速缓存方法和装置以及资源请求响应方法和装置
CN105683928B (zh) 用于数据高速缓存策略的方法、服务器和存储器设备
CN113821307B (zh) 一种虚拟机镜像的快速导入方法、装置及设备
US10341454B2 (en) Video and media content delivery network storage in elastic clouds
CN110858238B (zh) 一种数据处理的方法和装置
US20150106884A1 (en) Memcached multi-tenancy offload
CN111756744B (zh) H5用户的识别方法、装置、设备及存储介质
CN114579404A (zh) 冷热页统计方法以及装置
US10915646B2 (en) Method and apparatus for network secure storage
US11233847B1 (en) Management of allocated computing resources in networked environment
CN108124014B (zh) 一种浏览器智能预防第三方Cookie跟踪的方法
US12032647B2 (en) Tenant network for rewriting of code included in a web page
CN113849255B (zh) 一种数据处理方法、设备以及存储介质
US20230401275A1 (en) Tenant network for rewriting of code included in a web page
US20240089339A1 (en) Caching across multiple cloud environments

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: 40046424

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant