一种API接口管理方法、装置、服务器和存储介质与流程

文档序号:38015801发布日期:2024-05-17 12:39阅读:7来源:国知局
一种API接口管理方法、装置、服务器和存储介质与流程

本发明涉及服务器数据处理,尤其涉及一种api接口管理方法、装置、服务器和存储介质。


背景技术:

1、随着互联网不断发展以及5g时代的到来,用户访问各种网站的速度越来越快,对于后端的服务器数据处理压力越来越大。用户端通过调用api接口方式与服务应用程序数据进行交互,一个用户请求到后端服务器的api接口时,服务器会为这个请求功能的api接口开一个线程来应对一个用户请求。然而在服务器所服务的应用程序中,出现多线程占用了大量的服务器的资源,造成服务器系统的资源(cpu,内存,硬盘)等资源耗尽,服务器操作系统无法正常运行,可能给用户造成一定的损失,或者给用户体验感不好。

2、目前大多的应对做法,使用高配置的服务器主机来减少资源耗尽的可能,但这样提高了硬件成本,并且也难以避免用户请求的api时出现多线程占用大量资源而导致资源耗尽、服务器无法运行的情况。


技术实现思路

1、本发明提供了一种api接口管理方法,以解决api接口管理的问题。

2、第一方面,本发明提供了一种api接口管理方法,应用于服务器,在所述服务器中,服务应用程序与操作系统采用沙箱技术进行隔离,所述服务应用程序建立两个线程池并采用沙箱技术进行隔离,在两个线程池中,第一线程池的资源分配量和执行api接口的优先级均高于第二线程池;

3、所述api接口管理方法包括:

4、当接收到用户端发送的用户请求时,采用预设的数据模型确定调用所述用户请求对应的目标api接口的资源需求量;

5、获取两个线程池当前的资源消耗量;

6、根据所述资源需求量和两个线程池的资源消耗量筛选目标线程池,所述目标线程池为能够执行所述目标api接口的线程池;

7、若存在目标线程池,控制所述目标api接口进入所述目标线程池执行,设置所述目标api接口为执行状态;

8、若不存在目标线程池,设置所述目标api接口为等待状态;

9、当所述目标api接口处于等待状态时,判断等待时长是否大于预设的等待时间阈值;

10、若否,返回执行获取两个线程池当前的资源消耗量的步骤;

11、若是,确定所述目标api接口执行异常,返回执行异常信息给所述用户端。

12、第二方面,本发明提供了一种api接口管理装置,包括:

13、资源需求量确定模块,用于当接收到用户端发送的用户请求时,采用预设的数据模型确定调用所述用户请求对应的目标api接口的资源需求量;

14、资源消耗量获取模块,用于获取两个线程池当前的资源消耗量;

15、目标线程池筛选模块,用于根据所述资源需求量和两个线程池的资源消耗量筛选目标线程池,所述目标线程池为能够执行所述目标api接口的线程池;

16、执行状态设置模块,用于若存在目标线程池,控制所述目标api接口进入所述目标线程池执行,设置所述目标api接口为执行状态;

17、等待状态设置模块,用于若不存在目标线程池,设置所述目标api接口为等待状态;

18、等待时长判断模块,用于当所述目标api接口处于等待状态时,判断等待时长是否大于预设的等待时间阈值;若是,则执行异常反馈模块的内容,若否,返回执行资源消耗量获取模块的内容;

19、异常反馈模块,用于确定所述目标api接口执行异常,返回执行异常信息给所述用户端。

20、第三方面,本发明提供了一种服务器,所述服务器包括:

21、至少一个处理器;以及

22、与所述至少一个处理器通信连接的存储器;其中,

23、所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明第一方面所述的api接口管理方法。

24、第四方面,本发明提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明第一方面所述的api接口管理方法。

25、本发明实施例提供了一种api接口管理方法,其应用于服务器,在服务器中的服务应用程序与操作系统采用沙箱技术进行隔离,服务应用程序建立两个线程池并采用沙箱技术进行隔离,在两个线程池中,第一线程池的资源分配量和执行api接口的优先级均高于第二线程池,api接口管理方法包括:当接收到用户端发送的用户请求时,采用预设的数据模型确定调用用户请求对应的目标api接口的资源需求量;获取两个线程池当前的资源消耗量;根据资源需求量和两个线程池的资源消耗量筛选目标线程池,目标线程池为能够执行目标api接口的线程池;若存在目标线程池,控制目标api接口进入目标线程池执行,设置目标api接口为执行状态;若不存在目标线程池,设置目标api接口为等待状态,当目标api接口处于等待状态时,判断等待时长是否大于预设的等待时间阈值;若否,返回执行获取两个线程池当前的资源消耗量的步骤,若是,确定目标api接口执行异常,返回执行异常信息给用户端。

26、第一,本发明中服务应用程序与操作系统采用沙箱技术进行隔离,限定了服务应用程序与操作系统的资源占用上限,避免在服务器资源紧张的情况下,因服务应用程序占用资源过多而导致操作系统运行缓慢或异常。

27、第二,两个线程池采用沙箱技术进行隔离并限定了资源分配量以及执行接口的优先级,对每个线程池独立管理,优先采用资源分配量大的线程池执行api接口。在执行api接口时,根据资源需求量和两个线程池的资源消耗量筛选目标线程池,可以筛选出满足执行api资源需求量的目标线程池,在第一线程池资源占用较多而无法处理该目标api接口时,第二线程池可以作为备选,提高了执行api接口的流畅性,既便于能够快速地执行api接口,也可避免系统卡顿,当不存在目标线程池时,目标api接口处于等待线程的状态,则对目标api接口的等待时间进行统计,当等待时长大于预设的等待时间阈值时,放弃等待线程,确定用户请求执行异常,避免因该目标api接口在线程队列中停留过久而影响后续api接口执行,提高服务器运行效率。

28、应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。



技术特征:

1.一种api接口管理方法,其特征在于,应用于服务器,在所述服务器中,服务应用程序与操作系统采用沙箱技术进行隔离,所述服务应用程序建立两个线程池并采用沙箱技术进行隔离,在两个线程池中,第一线程池的资源分配量和执行api接口的优先级均高于第二线程池;

2.如权利要求1所述的api接口管理方法,其特征在于,当接收到用户端发送的用户请求时,在所述采用预设的数据模型确定调用所述用户请求对应的目标api接口的资源需求量之前,还包括:

3.如权利要求1项所述的api接口管理方法,其特征在于,所述根据所述资源需求量和两个线程池的资源消耗量筛选目标线程池,包括:

4.如权利要求3所述的api接口管理方法,其特征在于,在所述第一和值大于或等于所述第一线程池的资源分配量时,还包括:

5.如权利要求1-4任一项所述的api接口管理方法,其特征在于,所述数据模型采用历史的api接口的调用数据训练得到,所述调用数据包括各api接口执行时所需的资源量和执行时间。

6.如权利要求1-4任一项所述的api接口管理方法,其特征在于,还包括:

7.如权利要求1-4任一项所述的api接口管理方法,其特征在于,还包括:

8.一种api接口管理装置,其特征在于,包括:

9.一种服务器,其特征在于,所述服务器包括:

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-7中任一项所述的api接口管理方法。


技术总结
本发明公开了一种API接口管理方法、装置、服务器和存储介质,包括:当接收到用户端发送的用户请求时,采用预设的数据模型确定调用用户请求对应的目标API接口的资源需求量;获取两个线程池当前的资源消耗量;根据资源需求量和两个线程池的资源消耗量筛选目标线程池,若存在目标线程池,控制目标API接口进入目标线程池执行,设置目标API接口为执行状态;若不存在目标线程池,设置目标API接口为等待状态,若等待时长大于预设的等待时间阈值,则确定目标API接口执行异常,返回执行异常信息给用户端。两个线程池的其中一个可以作为备选,提高了执行接口的流畅性。当接口等待时长大于预设的等待时间阈值时,放弃等待线程,避免堵塞。

技术研发人员:彭振杰,余佳鑫,刘栋,陈海文
受保护的技术使用者:日立楼宇技术(广州)有限公司
技术研发日:
技术公布日:2024/5/16
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1