动态限流方法、装置、计算机设备和存储介质制造方法及图纸

技术编号:19828503 阅读:28 留言:0更新日期:2018-12-19 16:58
本申请涉及一种动态限流方法、装置、计算机设备和存储介质,通过在预设时间段自动触发数据获取指令,获取当前预设时间内的接口相关参数信息及限流参数更新记录相关信息,并将当前预设时间内的接口相关参数信息生成接口访问统计表,对接口访问统计表及限流参数更新记录相关信息进行分析。确定出限流参数,根据确定的限流参数进行限流。解决了不能根据实际监控数据进行限流参数的动态调整,达不到业务系统对于不同渠道方(根据不同渠道参数)、不同API接口的限流要求的问题。

【技术实现步骤摘要】
动态限流方法、装置、计算机设备和存储介质
本申请涉及互联网
,特别是涉及一种动态限流方法、装置、计算机设备和存储介质。
技术介绍
随着互联网技术的不断发展,很多需求都可以通过互联网技术实现,越来越多的用户运用互联网技术办理所需的业务,当有很多用户同时访问同一个业务应用系统时,由于业务应用系统的负载能力有限,很有可能超出预期访问的最大限度,使得系统压力过大而拖垮业务应用系统。从而需要对业务应用系统访问量进行限流,而目前的限流方式是:限流某个接口的总并发/请求数,接口可能会有突发访问情况,但又担心访问量太大造成崩溃,如抢购业务,就需要限制这个接口的总并发/请求数总请求数,可以为每个接口都设置相应的阀值,限制发/请求数总请求数,但只能根据预先设置的阀值进行总流量的动态限流。因此,不能根据实际监控数据进行限流参数的动态调整,达不到业务系统对于不同渠道方(根据不同渠道参数)、不同API接口(ApplicationProgrammingInterface,应用程序编程接口)的限流要求。
技术实现思路
基于此,有必要针对上述技术问题,提供一种能够根据实际监控数据进行限流参数的动态调整,且达到业务系统对于不同渠道方(根据不同渠道参数)、不同API接口的限流要求的动态限流方法、装置、计算机设备和存储介质。一种动态限流方法,所述方法包括:在预设时间段内触发数据获取指令;根据触发的数据获取指令向数据服务器获取当前预设时间内的接口相关参数信息,生成接口访问统计表;获取限流参数更新表;根据所述接口访问统计表及限流参数更新表进行分析,确定限流参数;将所述限流参数发送至监听服务器,使监听服务器更新当前限流参数,使得Nginx服务器通过获取监听服务器的当前限流参数进行限流。在其中一个实施例中,所述根据触发的数据获取指令向数据服务器获取当前预设时间内的接口相关参数信息,生成接口访问统计表的步骤包括:根据触发的数据获取指令调用shell脚本,向第一数据服务器获取日志信息中的当前预设时间内的接口相关参数信息,生成接口访问统计表;或者,根据触发的数据获取指令向第二数据服务器获取实时的接口访问监控数据,根据实时的监控数据生成接口访问统计表。在其中一个实施例中,所述根据所述接口访问统计表及限流参数更新表进行分析,确定限流参数的步骤包括:获取接口访问统计表中当前预设时间内返回编码429的次数、返回非429编码和非200编码的次数,确定限流参数调整方向;根据所述限流参数调整方向以及所述限流参数更新表,确定限流参数;或者,获取接口访问统计表中实际访问的请求接口信息、请求参数信息,确定出异常参数信息的接口信息;根据确定的异常参数信息的接口信息,确定限流参数。在其中一个实施例中,所述获取接口访问统计表中当前预设时间内返回编码429的次数、返回非429编码和非200编码的次数,确定限流参数调整方向的步骤包括:当所述返回编码429的次数大于预设次数,且所述返回非429编码和所述非200编码的次数均为0时,确定限流参数调整方向为增加;当所述返回非429编码和所述非200编码的次数均大于预设次数时,确定限流参数调整方向为减少。在其中一个实施例中,所述根据所述限流参数调整方向以及所述限流参数更新表,确定限流参数的步骤包括:当所述限流参数调整方向为增加时,获取所述限流参数更新表中最新一次的更新的限流参数信息,根据最新一次更新的限流参数信息,确定增加比例;根据增加比例,确定限流参数;当所述限流参数调整方向为减少时,获取所述限流参数更新表中最新一次更新的限流参数信息及最新一次更新的时间,根据最新一次更新的限流参数信息及最新一次更新的时间,确定减少比例;根据减少比例,确定限流参数。在其中一个实施例中,所述获取接口访问统计表中实际访问的请求接口信息、请求参数信息,确定出异常参数信息的接口信息的步骤包括:获取接口访问统计表中实际访问的请求接口信息、请求参数信息,获得各接口访问的曲线信息;根据各接口访问的曲线信息得出曲线之间的相关性,确定出异常参数信息的接口信息。在其中一个实施例中,所述根据确定的异常参数信息的接口信息,确定限流参数的步骤包括:根据异常参数信息的接口信息,确定出需要限制访问的接口信息,将所述接口信息作为限流参数。一种动态限流装置,所述装置包括:数据获取指令触发模块,用于在预设时间段内触发数据获取指令;统计表生成模块,用于根据触发的数据获取指令向数据服务器获取当前预设时间内的接口相关参数信息,生成接口访问统计表;更新记录获取模块,用于获取限流参数更新表;限流参数确定模块,用于根据所述接口访问统计表及限流参数更新表进行分析,确定限流参数;限流模块,用于将所述限流参数发送至监听服务器,使监听服务器更新当前限流参数,使得Nginx服务器通过获取监听服务器的当前限流参数进行限流。一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现所述方法的步骤。一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的方法的步骤。上述动态限流方法、装置、计算机设备和存储介质,通过在预设时间段内自动触发数据获取指令,获取当前预设时间内的接口相关参数信息及限流参数更新记录相关信息,并将当前预设时间内的接口相关参数信息生成接口访问统计表,对接口访问统计表及限流参数更新记录相关信息进行分析。确定出限流参数,根据确定的限流参数进行限流。解决了不能根据实际监控数据进行限流参数的动态调整,达不到业务系统对于不同渠道方(根据不同渠道参数)、不同API接口的限流要求的问题。附图说明图1为一个实施例中动态限流方法的应用场景图;图2为一个实施例中动态限流方法的流程示意图;图3为一个实施例中动态限流方法的交互流程示意图;图4为一个实施例中动态限流装置的结构框图;图5为一个实施例中计算机设备的内部结构图。具体实施方式为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。本申请提供的动态限流方法,可以应用于如图1所示的应用环境中。其中,其工作环境涉及动态限流分析服务器100,第一数据服务器101、第二数据库服务器102、任务控制服务器103、监听服务器104、Nginx服务器105、应用服务器106相互之间可以通过网络进行通信,动态限流分析服务器100通过向任务控制服务器103获取任务,根据任务向第一数据服务器101、第二数据库服务器102获取相关数据进行分析,将分析结果发送至监听服务器104更新当前限流参数,Nginx服务器105通过向监听服务器104获取当前限流参数对应用服务器106中的各个接口进行限流。在一个实施例中,如图2所示,提供了一种动态限流方法,以该方法应用于图1中的服务器100为例进行说明,包括步骤S220至步骤S300:步骤S220,在预设时间段内触发数据获取指令。其中,用户可以通过在任务控制服务器中设置触发数据获取指令的时间间隔,可以根据实际情况进行设置,通过向任务控制服务器获取触发数据获取指令的时间间隔信息,自动触发数据获取指令。步骤S240,根据触发的数据获取指令向数据服务器获取当前预设时间内本文档来自技高网...

【技术保护点】
1.一种动态限流方法,所述方法包括:在预设时间段内触发数据获取指令;根据触发的数据获取指令向数据服务器获取当前预设时间内的接口相关参数信息,生成接口访问统计表;获取限流参数更新表;根据所述接口访问统计表及限流参数更新表进行分析,确定限流参数;将所述限流参数发送至监听服务器,使监听服务器更新当前限流参数,使得Nginx服务器通过获取监听服务器的当前限流参数进行限流。

【技术特征摘要】
1.一种动态限流方法,所述方法包括:在预设时间段内触发数据获取指令;根据触发的数据获取指令向数据服务器获取当前预设时间内的接口相关参数信息,生成接口访问统计表;获取限流参数更新表;根据所述接口访问统计表及限流参数更新表进行分析,确定限流参数;将所述限流参数发送至监听服务器,使监听服务器更新当前限流参数,使得Nginx服务器通过获取监听服务器的当前限流参数进行限流。2.根据权利要求1所述的动态限流方法,其特征在于,所述根据触发的数据获取指令向数据服务器获取当前预设时间内的接口相关参数信息,生成接口访问统计表的步骤包括:根据触发的数据获取指令调用shell脚本,向第一数据服务器获取日志信息中的当前预设时间内的接口相关参数信息,生成接口访问统计表;或者,根据触发的数据获取指令向第二数据服务器获取实时的接口访问监控数据,根据实时的监控数据生成接口访问统计表。3.根据权利要求1所述的动态限流方法,其特征在于,所述根据所述接口访问统计表及限流参数更新表进行分析,确定限流参数的步骤包括:获取接口访问统计表中当前预设时间内返回编码429的次数、返回非429编码和非200编码的次数,确定限流参数调整方向;根据所述限流参数调整方向以及所述限流参数更新表,确定限流参数;或者,获取接口访问统计表中实际访问的请求接口信息、请求参数信息,确定出异常参数信息的接口信息;根据确定的异常参数信息的接口信息,确定限流参数。4.根据权利要求3所述的动态限流方法,其特征在于,所述获取接口访问统计表中当前预设时间内返回编码429的次数、返回非429编码和非200编码的次数,确定限流参数调整方向的步骤包括:当所述返回编码429的次数大于预设次数,且所述返回非429编码和所述非200编码的次数均为0时,确定限流参数调整方向为增加;当所述返回非429编码和所述非200编码的次数均大于预设次数时,确定限流参数调整方向为减少。5.根据权利要求4所述的动态限流方法,其特征在于,所述根据所述限流参数调整方向以...

【专利技术属性】
技术研发人员:顾钰芬连理
申请(专利权)人:深圳壹账通智能科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1