接口访问处理方法、装置、计算机设备及存储介质转让专利

申请号 : CN201910300381.8

文献号 : CN110138669B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 崔刚

申请人 : 中国平安人寿保险股份有限公司

摘要 :

本发明公开了一种接口访问处理方法、装置、计算机设备及存储介质,在接口访问处理方法中,首先获取接口访问请求,再根据所述访问接口标识获取接口当前访问量;判断访问接口标识对应的接口是否达到所述接口访问阈值,若所述访问接口标识对应的接口达到所述接口访问阈值,则将所述接口访问请求放入访问等待队列中;实时监控接口标识对应的接口的实时访问数据,若实时访问数据未达到接口访问阈值,则从访问等待队列中获取目标访问请求,并响应所述目标访问请求。通过智能的监控和判断保证服务端系统负荷的稳定性。

权利要求 :

1.一种接口访问处理方法,其特征在于,包括:获取接口访问请求,所述接口访问请求包括访问接口标识;

根据所述访问接口标识获取接口当前访问量;

判断所述接口当前访问量是否达到所述接口访问阈值;

若所述接口当前访问量达到所述接口访问阈值,则将所述接口访问请求放入访问等待队列中;

实时监控所述接口标识对应的接口的实时访问数据,若所述实时访问数据未达到所述接口访问阈值,则从所述访问等待队列中获取目标访问请求,并响应所述目标访问请求;

其中,若所述接口当前访问量达到所述接口访问阈值,所述接口访问处理方法还包括:获取当前访问数据信息,根据所述当前访问数据信息统计每一访问系统的访问数量;

若任一访问系统的访问数量超过预设的访问阈值,则将对应的访问系统的系统标识确定为黑名单数据。

2.如权利要求1所述的接口访问处理方法,其特征在于,所述若所述实时访问数据未达到所述接口访问阈值,则从所述访问等待队列中获取目标访问请求,包括:若所述实时访问数据未达到所述接口访问阈值,则计算所述接口访问阈值和所述实时访问数据的差值,作为目标差值;

根据所述目标差值从所述访问等待队列中获取预定数量的目标访问请求。

3.如权利要求1所述的接口访问处理方法,其特征在于,在所述获取接口访问请求之前,所述接口访问处理方法还包括:获取接口访问信息,所述接口访问信息包括系统标识和访问接口标识;

根据所述访问接口标识获取许可系统名单库;

采用所述许可系统名单库对所述系统标识进行身份验证,若验证通过,则根据所述访问接口标识生成接口访问请求。

4.如权利要求3所述的接口访问处理方法,其特征在于,在所述根据所述访问接口标识获取许可系统名单库之前,所述接口访问处理方法还包括:获取预设时间内每一系统的接口访问数据,所述接口访问数据包括异常访问数值和/或异常访问次数;

根据所述接口访问数据计算对应系统的异常数值;

若所述异常数值超过预设的异常阈值,则将超过预设的异常阈值的所述异常数值对应的系统确定为异常访问系统。

5.如权利要求1所述的接口访问处理方法,其特征在于,所述判断所述接口当前访问量是否达到所述接口访问阈值,包括:判断所述接口当前访问量是否达到所述接口总访问阈值;

若所述接口当前访问量未达到所述接口总访问阈值,则获取所述访问接口标识对应的目标当前访问量;

若所述目标当前访问量大于或者等于预设的系统访问阈值,则所述访问接口标识对应的接口达到所述接口访问阈值。

6.一种接口访问处理装置,其特征在于,包括:接口访问请求获取模块,用于获取接口访问请求,所述接口访问请求包括访问接口标识;

接口当前访问量获取模块,用于根据所述访问接口标识获取接口当前访问量;

访问量判断模块,用于判断所述接口当前访问量是否达到所述接口访问阈值;

访问请求等待模块,用于在所述接口当前访问量达到所述接口访问阈值时,则将所述接口访问请求放入访问等待队列中;

实时监控模块,用于实时监控所述接口标识对应的接口的实时访问数据,若所述实时访问数据未达到所述接口访问阈值,则从所述访问等待队列中获取目标访问请求,并响应所述目标访问请求;

其中,所述访问请求等待模块还包括:

访问数量统计单元,用于获取当前访问数据信息,根据当前访问数据信息统计每一访问系统的访问数量;

黑名单数据确定单元,用于在任一访问系统的访问数量超过预设的访问阈值时,则将对应的访问系统的系统标识确定为黑名单数据。

7.如权利要求6所述的接口访问处理装置,其特征在于,所述接口访问处理装置还包括:接口访问信息获取模块,用于获取接口访问信息,所述接口访问信息包括系统标识和访问接口标识;

许可系统名单库获取模块,用于根据所述访问接口标识获取许可系统名单库;

接口访问请求生成模块,用于采用所述许可系统名单库对所述系统标识进行身份验证,若验证通过,则根据所述访问接口标识生成接口访问请求。

8.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至

5任一项所述接口访问处理方法。

9.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述接口访问处理方法。

说明书 :

接口访问处理方法、装置、计算机设备及存储介质

技术领域

[0001] 本发明涉及安全防护领域,尤其涉及一种接口访问处理方法、装置、计算机设备及存储介质。

背景技术

[0002] 目前,云计算成为IT领域最热门的技术之一。随着信息科技的发展,云计算逐步成为业界的发展热点,国内外各大厂商的云计算服务平台也开始纷纷投入到科学、教育、文化、卫生、政府、高性能计算、电子商务、物联网等多个领域进行使用。随着网络技术不断的发展和扩大,在很多网络平台或者内部平台都会以开放接口的形式来提供不同的服务或者功能,以满足与不同平台集成的需求。互联网服务提供平台提供开放接口供第三方开发者在开发互联网应用程序中进行调用这些开放接口,例如API(Application Programming Interface,应用编程接口),HTTP(Hyper Text Transport Protocol,基于超文本传输协议)进行通信。然而,这些API接口的开放也导致了各种无限制的访问和数据交互,一些异常或者恶意的访问经常会导致系统的负载超负荷。

发明内容

[0003] 本发明实施例提供一种接口访问处理方法、装置、计算机设备及存储介质,以解决系统负荷的稳定性过低的问题。
[0004] 一种接口访问处理方法,包括:
[0005] 获取接口访问请求,所述接口访问请求包括访问接口标识;
[0006] 根据所述访问接口标识获取接口当前访问量;
[0007] 判断所述接口当前访问量是否达到所述接口访问阈值;
[0008] 若所述接口当前访问量达到所述接口访问阈值,则将所述接口访问请求放入访问等待队列中;
[0009] 实时监控所述接口标识对应的接口的实时访问数据,若所述实时访问数据未达到所述接口访问阈值,则从所述访问等待队列中获取目标访问请求,并响应所述目标访问请求。
[0010] 一种接口访问处理装置,包括:
[0011] 接口访问请求获取模块,用于获取接口访问请求,所述接口访问请求包括访问接口标识;
[0012] 接口当前访问量获取模块,用于根据所述访问接口标识获取接口当前访问量;
[0013] 访问量判断模块,用于判断所述接口当前访问量是否达到所述接口访问阈值;
[0014] 访问请求等待模块,用于在所述接口当前访问量达到所述接口访问阈值时,则将所述接口访问请求放入访问等待队列中;
[0015] 实时监控模块,用于实时监控所述接口标识对应的接口的实时访问数据,若所述实时访问数据未达到所述接口访问阈值,则从所述访问等待队列中获取目标访问请求,并响应所述目标访问请求。
[0016] 一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述接口访问处理方法。
[0017] 一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述接口访问处理方法。
[0018] 上述接口访问处理方法、装置、计算机设备及存储介质中,首先获取接口访问请求,再根据所述访问接口标识获取接口当前访问量;判断访问接口标识对应的接口是否达到所述接口访问阈值,若所述访问接口标识对应的接口达到所述接口访问阈值,则将所述接口访问请求放入访问等待队列中;实时监控接口标识对应的接口的实时访问数据,若实时访问数据未达到接口访问阈值,则从访问等待队列中获取目标访问请求,并响应所述目标访问请求。通过智能的监控和判断保证服务端系统负荷的稳定性。

附图说明

[0019] 为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0020] 图1是本发明一实施例中接口访问处理方法的一应用环境示意图;
[0021] 图2是本发明一实施例中接口访问处理方法的一示例图;
[0022] 图3是本发明一实施例中接口访问处理方法的另一示例图;
[0023] 图4是本发明一实施例中接口访问处理方法的另一示例图;
[0024] 图5是本发明一实施例中接口访问处理方法的另一示例图;
[0025] 图6是本发明一实施例中接口访问处理方法的另一示例图;
[0026] 图7是本发明一实施例中接口访问处理方法的另一示例图;
[0027] 图8是本发明一实施例中接口访问处理装置的一原理框图;
[0028] 图9是本发明一实施例中接口访问处理装置的另一原理框图;
[0029] 图10是本发明一实施例中计算机设备的一示意图。

具体实施方式

[0030] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0031] 本发明实施例提供的接口访问处理方法,可应用在如图1的应用环境中,其中,客户端(计算机设备)通过网络与服务端进行通信。客户端发送接口访问请求到服务端,服务端根据获取的访问接口标识获取接口当前访问量;判断接口当前访问量是否达到所述接口访问阈值;若接口当前访问量达到所述接口访问阈值,则将接口访问请求放入访问等待队列中;实时监控接口标识对应的接口的实时访问数据,若实时访问数据未达到所述接口访问阈值,则从访问等待队列中获取目标访问请求,并响应目标访问请求。其中,客户端(计算机设备)可以但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。服务端可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
[0032] 在一实施例中,如图2所示,提供一种接口访问处理方法,以该方法应用在图1中的服务端为例进行说明,包括如下步骤:
[0033] S10:获取接口访问请求,接口访问请求包括访问接口标识。
[0034] 其中,接口访问请求是指对内部或者外部的对应接口提起访问的触发请求。该接口访问请求包括访问接口标识,访问接口标识是指接口访问请求中对应要访问的接口的唯一性标记。可选地,该访问接口标识可以由数字、字母、符号或者文字等至少一项组成。
[0035] 具体地,该接口访问请求由客户端生成并发送至服务端。客户端可以为不同的访问系统。可选地,该接口访问请求可以由用户在客户端的特定动作触发,或者由用户在客户端输入对应的指令触发。示例性地,对应于发送闪信功能的接口,可以定义由用户在客户端打开对应界面或者点击预设控件或者按钮之后触发客户端生成该接口访问请求,向发送闪信功能的接口发起访问。
[0036] 在一个具体实施方式中,可以通过设置一个公共网关组件来执行该实施例中的接口访问处理方法。具体地,先搭建一个网关组件,并且将该网关组件进行单独部署,即提供单独的服务将各系统的外调功能的入口迁移至该网关组件中,并且不迁移业务上的代码,即对应业务上的功能依然在各自的系统里。示例性地,将服务端中所有接口外调的功能统一单独抽取出来,迁移至搭建的网关组件中。后续所有的接口访问请求都经由该网关组件进行处理。如此,把所有接口外调的功能统一单独抽取出来,只要在这个抽取出来的代码里找到对应的系统,再查询对应的功能即可。
[0037] S20:根据访问接口标识获取接口当前访问量。
[0038] 其中,服务端会实时统计每一接口中的接口当前访问量,接口当前访问量是指在当前时刻对该接口进行数据交互的访问请求的数量。根据访问接口标识获取到对应接口的接口当前访问量。
[0039] 示例性地,若一个系统A对一个接口X发送了一个接口访问请求,而该接口X接收了该接口访问请求,并且在一定时间之后向该系统A反馈了数据。因此,在该接口X接收了该接口访问请求到向该系统A反馈数据这段时间,都属于该系统A对接口X的访问过程。若采用一个计数器对该接口X的当前访问量进行统计,则该计数器在该接口X接收了该接口访问请求之后进行了加1操作,而在该接口X向该系统A反馈数据之后,该计数器则进行减1操作。而每一计数器均是和对应接口的接口标识相关联,因此,通过访问接口标识就可以获取到对应接口的计数器的数值,即该接口的接口当前访问量。
[0040] S30:判断接口当前访问量是否达到接口访问阈值。
[0041] 其中,可以预先为每一接口设置了一个接口访问阈值。每一接口的接口访问阈值可以根据实际访问量来进行设定。可以按照历史数据中每一接口的访问量来为每一接口设置接口访问阈值。进一步地,可以根据服务端的系统承载能力来设定一个总的访问总阈值,而此时接口访问阈值则是一个动态的值,即可以实时改变的值。此时,在需要获取对应接口的接口访问阈值时,先获取服务端中其他接口的当前访问量,然后将访问总阈值减去其他接口的当前访问量,即得到该接口的接口访问阈值。可以理解地,若该接口访问阈值为0或者负数,则说明该访问接口标识对应的接口达到了所述接口访问阈值。
[0042] 在该步骤中,先获取到访问接口标识对应的接口的接口访问阈值,然后判断该接口的接口当前访问量是否达到该接口访问阈值。若该接口的接口当前访问量大于或等于该接口访问阈值,则访问接口标识对应的接口即达到所述接口访问阈值。否则,该访问接口标识对应的接口未达到所述接口访问阈值。
[0043] S40:若接口当前访问量达到所述接口访问阈值,则将接口访问请求放入访问等待队列中。
[0044] 在该步骤中,若该接口当前访问量达到所述接口访问阈值,则说明服务端或者该接口已经接近最大负荷。此时,将该接口访问请求放入访问等待队列中,进行等待。访问等待队列中按照时间先后的顺序存储着未进行响应的接口访问请求。
[0045] 在一个具体实施方式中,若接口当前访问量未超过接口访问阈值,则通过访问请求。具体地,允许该系统对对应接口进行数据访问。优选地,在通过该访问请求之后,将对应接口的当前访问量进行加1操作。
[0046] S50:实时监控接口标识对应的接口的实时访问数据,若实时访问数据未达到接口访问阈值,则从访问等待队列中获取目标访问请求,并响应目标访问请求。
[0047] 其中,实时访问数据为对应接口当前的实时访问数量,即这一时刻对该接口进行实施访问的系统的数量。在该步骤中,对接口标识对应的接口进行实时监控,获取该接口的实时访问数据,并且判断实时访问数据是否达到所述接口访问阈值,若此时实时访问数据依然达到所述接口访问阈值,则进行持续监控。若此时实时访问数据未达到所述接口访问阈值,则从访问等待队列中获取目标访问请求,并响应目标访问请求。若该实时访问数据大于或等于该接口访问阈值,则实时访问数据达到所述接口访问阈值。否则,该实时访问数据未达到所述接口访问阈值。其中,目标访问为请求从访问等待队列中获取出来的访问请求。具体地,可以根据访问等待队列中的顺序,按照时间先后顺序进行获取目标访问请求。
[0048] 进一步地,该目标访问请求为至少一个。在一个具体实施方式中,如图3所示,若实时访问数据未达到所述接口访问阈值,则从访问等待队列中获取目标访问请求,具体包括:
[0049] S51:若实时访问数据未达到所述接口访问阈值,则计算接口访问阈值和实时访问数据的差值,作为目标差值。
[0050] S52:根据目标差值从访问等待队列中获取预定数量的目标访问请求。
[0051] 在该实施方式中,若判断实时访问数据未达到所述接口访问阈值,则计算接口访问阈值和实时访问数据的差值,作为目标差值。进而可以根据该目标差值来确定从等待队列中获取的目标访问请求的数量。可选地,可以将该预定数量设为和目标差值相等。进一步地,为了缓解系统的负担,也可以设定该预定数量略小于该目标差值。例如,预定数量为目标差值的95%,或者预定数量为目标差值减去一预设的数值。
[0052] 在本实施例中,首先获取接口访问请求,再根据所述访问接口标识获取接口当前访问量;判断访问接口标识对应的接口是否达到所述接口访问阈值,若所述访问接口标识对应的接口达到所述接口访问阈值,则将所述接口访问请求放入访问等待队列中;实时监控接口标识对应的接口的实时访问数据,若实时访问数据未达到接口访问阈值,则从访问等待队列中获取目标访问请求,并响应所述目标访问请求。通过智能的监控和判断来更好地响应不同的接口访问请求,保证服务端系统负荷的稳定性,避免出现系统超负荷的情况的发生。
[0053] 在一个实施例中,如图4所示,在获取接口访问请求之前,该接口访问处理方法还包括:
[0054] S11:获取接口访问信息,接口访问信息包括系统标识和访问接口标识。
[0055] 其中,接口访问信息为访问接口的相关信息,该接口访问信息包括系统标识和访问接口标识。系统标识为发起访问的系统或者客户端的唯一性标号。可选地,在获取该系统标识之前,还可以包括一个认证环节。即对该系统进行身份验证,具体地,可以通过特定的密码对该系统进行验证,或者通过为每一系统添加一个唯一约束参数accessToken。在对应系统发起接口访问之时,验证该系统携带的Token是否和服务端预存的accessToken相匹配,若匹配成功,则该系统的身份验证通过,随即根据系统标识和访问接口标识生成接口访问信息。
[0056] S12:根据访问接口标识获取许可系统名单库。
[0057] 其中,许可系统名单库是预先存储的系统名单,通过注册并审核通过才能访问服务端中的接口,不在该名单的系统,不可访问服务端中对应的接口进而去调用对应的关联系统。具体地,为每一接口设定一许可系统名单库,即反映了拥有访问对应接口的系统的名单。通过访问接口标识即可获取到对应的许可系统名单库。
[0058] 优选地,许可系统名单库包括白名单数据和黑名单数据。其中,白名单数据是指许可系统名单库中合法的系统名单。而黑名单数据是指许可系统名单库中不合法的系统名单。在许可系统名单库中,经过注册并审核通过的系统名称均为合法的系统。但是在往常的接口访问过程中,若出现违规或者异常操作行为,则对应的系统会被列入到黑名单数据中。
[0059] S13:采用许可系统名单库对系统标识进行身份验证,若验证通过,则根据访问接口标识生成接口访问请求。
[0060] 在获取到许可系统名单库之后,采用许可系统名单库对系统标识进行身份验证。具体地,可以根据系统标识在许可系统名单库中进行查询,若在许可系统名单库中查询到对应的系统名称,则验证通过。若未查询到,则验证不同过。若验证通过,则根据访问接口标识生成接口访问请求。
[0061] 优选地,若许可系统名单库包括白名单数据和黑名单数据,则只有在白名单数据中查询到系统标识对应的系统名称才为身份验证通过,否则,身份验证不通过。
[0062] 在本实施例中,先获取接口访问信息,根据访问接口标识获取许可系统名单库,再采用许可系统名单库对所述系统标识进行身份验证,若验证通过,则根据访问接口标识生成接口访问请求,进一步保证了接口访问的安全性。
[0063] 在一个实施例中,如图5所示,在根据访问接口标识获取许可系统名单库之前,该接口访问处理方法还包括:
[0064] S121:获取预设时间内每一系统的接口访问数据,接口访问数据包括异常访问数值和/或异常访问次数。
[0065] 其中,预设时间为一个预先设定的时间值,可选地,该预设时间可以为12小时、24小时、48小时或者72小时等,具体可以根据实际需要设定。而接口访问数据为每一系统的接口访问相关的数据,接口访问数据可以包括异常访问数值和/或异常访问次数。异常访问数值是指出现异常访问时该系统的同一时间点出现的最大异常访问数量。而异常访问次数是指在预设时间内对应系统出现访问异常的次数。
[0066] S122:根据接口访问数据计算对应系统的异常数值。
[0067] 在该步骤中,通过接口访问数据来计算对应系统的异常数值。具体地,可以根据异常访问数值和/或异常访问次数分别设定不同的数值区间,每一不同的数值区间都对应不同的异常值。通过对接口访问数据和这些数值区间的匹配,即可通过接口访问数据得到对应系统的异常数值。进一步地,若接口访问数据包括异常访问数值和异常访问次数,则将异常访问数值和异常访问次数分别和对应的数值区间进行匹配之后,将各自得到的异常值进行直接或者加权相加,即得到异常数值。其中,加权相加是指预先为不同的异常值分别设定对应的权值,然后将各自的权值和对应的异常值进行相乘之后进行求和,即得到加权相加的加过,即异常数值。
[0068] S123:若异常数值超过预设的异常阈值,则将超过预设的异常阈值的异常数值对应的系统确定为异常访问系统。
[0069] 在该步骤中,若确定异常数值超过预设的异常阈值,则将超过预设的异常阈值的异常数值对应的系统确定为异常访问系统。进一步地,可以将该异常访问系统的名称加入到黑名单数据中。
[0070] 在本实施例中,先获取预设时间内每一系统的接口访问数据,再根据所述接口访问数据计算对应系统的异常数值,若异常数值超过预设的异常阈值,则将超过预设的异常阈值的所述异常数值对应的系统确定为异常访问系统。通过对接口访问数据的获取以及转化,保证了对异常访问系统确定的准确性和效率。
[0071] 在一个实施例中,如图6所示,若接口当前访问量达到接口访问阈值,该接口访问处理方法还包括:
[0072] S41:获取当前访问数据信息,根据当前访问数据信息统计每一访问系统的访问数量。
[0073] 其中,当前访问数据信息是指在当前时刻对该接口的一个数据访问信息。具体地,该当前访问数据包括当前和该接口进行数据交互的系统名称或者系统标识。根据当前访问数据信息统计每一访问系统的访问数量。
[0074] S42:若任一访问系统的访问数量超过预设的访问阈值,则将对应的访问系统的系统标识确定为黑名单数据。
[0075] 预先设定一访问阈值,若任一访问系统的访问数量超过预设的访问阈值,则将对应的访问系统的系统标识确定为黑名单数据。
[0076] 在一个实施方式中,可以将标识为黑名单数据的系统进行相应的计时操作,当该系统被标识为很名单数据之后的额定时间之后,可以将该系统标识解禁,将该系统标识重新标识为白名单数据。
[0077] 在本实施例中,通过设定一访问阈值来将异常访问的系统确定为黑名单数据,保证了对非法访问的禁止,进一步保证了系统负荷的稳定性。
[0078] 在一个实施例中,接口访问阈值包括接口总访问阈值和目标系统访问阈值。
[0079] 其中,接口总访问阈值是指在同一时刻允许访问该接口的一个最大数量。而目标系统访问阈值是指该目标系统在同一时刻允许访问该接口的最大请求数。具体地,可以根据不同目标系统的日常访问量预先进行设定。
[0080] 在这个实施例中,如图7所示,判断接口当前访问量是否达到所述接口访问阈值,具体包括:
[0081] S31:判断接口当前访问量是否达到接口总访问阈值。
[0082] 在该步骤中,判断接口当前访问量是否达到所述接口总访问阈值。具体地,若接口当前访问量小于接口总访问阈值,则接口当前访问量没有达到所述接口总访问阈值。若接口当前访问量大于或等于接口总访问阈值,则接口当前访问量达到所述接口总访问阈值。
[0083] S32:若接口当前访问量未达到接口总访问阈值,则获取访问接口标识对应的目标当前访问量。
[0084] 在该步骤中,若接口当前访问量未达到所述接口总访问阈值,则做进一步的判断,因此,获取所述访问接口标识对应的目标当前访问量。目标当前访问量是指目标系统当前时刻对该接口的访问数量。
[0085] 在一个具体实施方式中,若接口当前访问量达到接口总访问阈值,则访问接口标识对应的接口达到接口访问阈值。
[0086] S33:若目标当前访问量大于或者等于预设的系统访问阈值,则访问接口标识对应的接口达到所述接口访问阈值。
[0087] 判断目标当前访问量和系统访问阈值的关系,若标当前访问量大于或者等于预设的系统访问阈值,则访问接口标识对应的接口达到所述接口访问阈值。
[0088] 在本实施例中,先判断接口当前访问量是否达到接口总访问阈值;若接口当前访问量未达到接口总访问阈值,则获取访问接口标识对应的目标当前访问量;若目标当前访问量大于或者等于预设的系统访问阈值,则访问接口标识对应的接口达到接口访问阈值。通过接口总访问阈值和目标系统访问阈值两个阈值来衡量接口是否达到接口访问阈值,进一步保证了系统负荷的稳定性。
[0089] 应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
[0090] 在一实施例中,提供一种接口访问处理装置,该接口访问处理装置与上述实施例中接口访问处理方法一一对应。如图8所示,该接口访问处理装置包括接口访问请求获取模块10、接口当前访问量获取模块20、访问量判断模块30、访问请求等待模块40和实时监控模块50。各功能模块详细说明如下:
[0091] 接口访问请求获取模块10,用于获取接口访问请求,所述接口访问请求包括访问接口标识;
[0092] 接口当前访问量获取模块20,用于根据所述访问接口标识获取接口当前访问量;
[0093] 访问量判断模块30,用于判断所述接口当前访问量是否达到所述接口访问阈值;
[0094] 访问请求等待模块40,用于在所述接口当前访问量达到所述接口访问阈值时,则将所述接口访问请求放入访问等待队列中;
[0095] 实时监控模块50,用于实时监控所述接口标识对应的接口的实时访问数据,若所述实时访问数据未达到所述接口访问阈值,则从所述访问等待队列中获取目标访问请求,并响应所述目标访问请求。
[0096] 优选地,实时监控模块50包括目标差值计算单元和目标访问请求获取单元。
[0097] 目标差值计算单元,用于在实时访问数据未达到所述接口访问阈值时,则计算接口访问阈值和实时访问数据的差值,作为目标差值。
[0098] 目标访问请求获取单元,用于根据目标差值从访问等待队列中获取预定数量的目标访问请求。
[0099] 优选地,如图9所示,接口访问处理装置还包括接口访问信息获取模块11、许可系统名单库获取模块12和接口访问请求生成模块13。
[0100] 接口访问信息获取模块11,用于获取接口访问信息,所述接口访问信息包括系统标识和访问接口标识;
[0101] 许可系统名单库获取模块12,用于根据所述访问接口标识获取许可系统名单库;
[0102] 接口访问请求生成模块13,用于采用所述许可系统名单库对所述系统标识进行身份验证,若验证通过,则根据所述访问接口标识生成接口访问请求。
[0103] 优选地,该接口访问处理装置还包括接口访问数据获取模块、异常数值计算模块和异常访问系统确定模块。
[0104] 接口访问数据获取模块,用于获取预设时间内每一系统的接口访问数据,接口访问数据包括异常访问数值和/或异常访问次数。
[0105] 异常数值计算模块,用于根据接口访问数据计算对应系统的异常数值。
[0106] 异常访问系统确定模块,用于在异常数值超过预设的异常阈值时,则将超过预设的异常阈值的异常数值对应的系统确定为异常访问系统。
[0107] 优选地,访问请求等待模块40还包括访问数量统计单元和黑名单数据确定单元。
[0108] 访问数量统计单元,用于获取当前访问数据信息,根据当前访问数据信息统计每一访问系统的访问数量。
[0109] 黑名单数据确定单元,用于在任一访问系统的访问数量超过预设的访问阈值时,则将对应的访问系统的系统标识确定为黑名单数据。
[0110] 优选地,访问量判断模块30还用于判断接口当前访问量是否达到接口总访问阈值;若接口当前访问量未达到接口总访问阈值,则获取访问接口标识对应的目标当前访问量;若目标当前访问量大于或者等于预设的系统访问阈值,则访问接口标识对应的接口达到所述接口访问阈值。
[0111] 关于接口访问处理装置的具体限定可以参见上文中对于接口访问处理方法的限定,在此不再赘述。上述接口访问处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0112] 在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图10所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储上述实施例中的接口访问处理方法所使用到的数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种接口访问处理方法。
[0113] 在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述实施例中的接口访问处理方法。
[0114] 在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行上述实施例中的接口访问处理方法。
[0115] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
[0116] 所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
[0117] 以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。