CN115622988B - web接口的调用响应方法、装置、电子设备和存储介质 - Google Patents
web接口的调用响应方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN115622988B CN115622988B CN202211630030.1A CN202211630030A CN115622988B CN 115622988 B CN115622988 B CN 115622988B CN 202211630030 A CN202211630030 A CN 202211630030A CN 115622988 B CN115622988 B CN 115622988B
- Authority
- CN
- China
- Prior art keywords
- interface
- mode
- response
- call
- feedback information
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本发明涉及web服务的应用技术领域,提供一种web接口的调用响应方法、装置、电子设备和存储介质,其中方法包括:接收接口调用方发送的接口调用请求,并判断接口调用请求对应的执行判定模式;基于执行判定模式,对接口调用请求的接口调用模式进行判定,并发送第一反馈信息至接口调用方进行响应;根据所判定的接口调用请求对应的接口调用模式,对接口调用请求进行应答生成第二反馈信息,并将第二反馈信息发送至接口调用方。提高了接口提供方的运行稳定性。
Description
技术领域
本发明涉及web服务的应用技术领域,尤其涉及一种web接口的调用响应方法、装置、电子设备和存储介质。
背景技术
Web应用开发者熟知,Web应用架构下接口调用包括两种模式:同步模式和异步模式。而在现有的接口设计时,需要先确定当前服务的调用模式,也就是确定接口的调用模式,然后基于所设定的模式实现对接口的调用。
但是,在同步调用模式下,接口调用方和接口提供方均处于阻塞等待状态,尤其对于接口由于运行环境、网络、第三方通讯等条件影响下运行时间不稳定时,大量同步阻塞请求对接口提供方整体吞吐量影响较大。
发明内容
本发明提供一种web接口的调用响应方法、装置、电子设备和存储介质,用以解决现有技术中因接口调用而影响接口提供方运行的问题。
本发明提供一种web接口的调用响应方法,包括:
接收接口调用方发送的接口调用请求,并判断所述接口调用请求对应的执行判定模式;
基于所述执行判定模式,对所述接口调用请求的接口调用模式进行判定,并发送第一反馈信息至所述接口调用方进行响应;
根据所判定的所述接口调用请求对应的接口调用模式,对所述接口调用请求进行应答生成第二反馈信息,并将所述第二反馈信息发送至所述接口调用方。
根据本发明提供的一种web接口的调用响应方法,所述判断所述接口调用请求对应的执行判定模式,包括:
识别所述接口调用请求的响应模式,并根据所述响应模式确定所述接口调用请求对应的执行判定模式,其中所述执行判定模式包括处理时长判定模式和连接线程判定模式。
根据本发明提供的一种web接口的调用响应方法,所述基于所述执行判定模式,对所述接口调用请求的接口调用模式进行判定,并发送第一反馈信息至所述接口调用方进行响应,包括:
当所述执行判定模式为连接线程判定模式时,获取当前性能值,并根据所述当前性能值确定所述接口调用请求对应的接口调用模式,以及根据所述接口调用模式生成第一反馈信息发送至所述接口调用方;
当所述执行判定模式为处理时长判定模式时,确定响应所述接口调用请求的响应时长,并根据所述响应时长确定所述接口调用请求对应的接口调用模式,以及根据所述接口调用模式生成第一反馈信息发送至所述接口调用方;
其中,所述接口调用模式包括同步调用和异步调用。
根据本发明提供的一种web接口的调用响应方法,所述根据所述当前性能值确定所述接口调用请求对应的接口调用模式,以及根据所述接口调用模式生成第一反馈信息发送至所述接口调用方,包括:
获取性能阈值,并将所述当前性能值与所述性能阈值进行比较,确定所述接口调用请求对应的接口调用模式;
当所述接口调用模式为异步调用时,基于所述接口调用模式生成第一反馈信息,并将所述第一反馈信息发送至所述接口调用方;
其中,所述将所述当前性能值与所述性能阈值进行比较,确定所述接口调用请求对应的接口调用模式,包括:
若所述当前性能值小于所述性能阈值,则确定所述接口调用模式为同步模式;
若所述当前性能值大于或者等于所述性能阈值,则确定所述接口调用模式为异步模式。
根据本发明提供的一种web接口的调用响应方法,所述根据所述响应时长确定所述接口调用请求对应的接口调用模式,以及根据所述接口调用模式生成第一反馈信息发送至所述接口调用方,包括:
获取响应平均时长,并将所述响应时长与所述响应平均时长进行比较,确定所述接口调用请求对应的接口调用模式;
当所述接口调用模式为异步调用时,基于所述接口调用模式生成第一反馈信息,并将所述第一反馈信息发送至所述接口调用方;
其中,所述将所述响应时长与所述响应平均时长进行比较,确定所述接口调用请求对应的接口调用模式,包括:
若所述响应时长小于所述响应平均时长,则确定所述接口调用模式为同步模式;
若所述响应时长大于或者等于所述响应平均时长,则确定所述接口调用模式为异步模式。
根据本发明提供的一种web接口的调用响应方法,所述根据所判定的所述接口调用请求对应的接口调用模式,对所述接口调用请求进行应答生成第二反馈信息,并将所述第二反馈信息发送至所述接口调用方,包括:
当所述接口调用模式为同步调用时,应答所述接口调用请求得到第二反馈信息;
将所述接口调用请求与所述第二反馈信息进行关联,并将关联后的结果进行存储,以使得所述接口调用方基于所述第二反馈信息进行响应。
根据本发明提供的一种web接口的调用响应方法,所述根据所判定的所述接口调用请求对应的接口调用模式,对所述接口调用请求进行应答生成第二反馈信息,并将所述第二反馈信息发送至所述接口调用方之后,还包括:
确定响应所述接口调用请求的第一响应时长,并基于所述第一响应时长对所述响应平均时长进行更新。
本发明还提供一种web接口的调用响应装置,包括:
请求接收模块,用于接收接口调用方发送的接口调用请求,并判断所述接口调用请求对应的执行判定模式;
模式判定模块,用于基于所述执行判定模式,对所述接口调用请求的接口调用模式进行判定,并发送第一反馈信息至所述接口调用方进行响应;
请求应答模块,用于根据所判定的所述接口调用请求对应的接口调用模式,对所述接口调用请求进行应答生成第二反馈信息,并将所述第二反馈信息发送至所述接口调用方。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述的web接口的调用响应方法。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述的web接口的调用响应方法。
本发明提供的web接口的调用响应方法、装置、电子设备和存储介质,在web接口的调用过程中,首先接收接口调用方发送的接口调用请求,以对接口调用请求对应的执行判定模式进行识别和获取,进而按照所得到的执行判定模式对接口的调用模式进行确定,并且在确定的过程中发送第一反馈信息至接口调用方,使得在进行异步调用时,接口调用方可以及时的释放阻塞等待,最后根据所确定得调用模式实现对接口调用请求的应答。实现了在接口调用的过程中,根据接口提供方的实际情况确定接口调用模式,可以在接口调用过程中有效的保证接口提供方的实际使用不被影响。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的web接口的调用响应方法的流程示意图;
图2为本发明提供的接口调用的交互的框图示意图;
图3是本发明提供的基于调用方的请求发送的框图示意图;
图4为本发明提供的基于提供方的请求响应的框图示意图;
图5为本发明提供的提供方进行应答的框图示意图;
图6为本发明提供的调用方接收应答结果的框图示意图;
图7是本发明提供的web接口的调用响应装置的结构示意图;
图8是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是本发明提供的web接口的调用响应方法的流程示意图,如图1所示,该方法包括:
步骤101,接收接口调用方发送的接口调用请求,并判断接口调用请求对应的执行判定模式。
在web应用中,通过接口调用满足不同的使用需求,比如用户端在需要对服务器进行访问时,可以通过web服务实现对服务器接口的调用,进而完成接口调用之后进行相应的数据访问等操作。
在一实施例中,对于提供接口的一方来说,在接收到接口调用方发送的接口调用请求时,通过对接口调用请求的判断以及相关的处理,确定是否给予接口调用方相关的接口进行使用。具体地,接收接口调用方发送的接口调用请求,同时对接口调用请求的执行判断模型进行判断,进而确定如何对该接口调用请求进行响应。
其中,执行判定模式包括基于接口平均执行时间来判定的处理时长判定模式和基于当前节点的在线连接数的连接线程判定模式。
示例性地,对于接口调用方所发送的接口调用请求,对于接口调用方而言是不知道在接口提供方是基于同步方式还是异步方式进行响应处理,接口调用方在将接口调用请求发送给接口提供方之后,将会进入等待的状态,也就是阻塞等待应答,进而基于接口提供方的反馈进行后续的处理,比如继续等待还是可以处理其他的任务。
而在发送相关的反馈信息至接口调用方时,接口提供方需要根据实际的情况生成反馈信息,比如根据接口提供方的性能负载情况等。
具体地,在确定接口调用请求对应的执行判定模式时,包括:识别接口调用请求的响应模式,并根据响应模式确定接口调用请求对应的执行判定模式。通过识别接口调用请求所对应的响应模式,以根据响应模式确定此时所对应的执行判定模式,其中响应模式为请求对响应时长灵敏和请求对线程要求高,比如此时所接收到的接口调用请求,需要在一定的时间内快速响应并且提供给接口调用方,则在确定执行判定模式时被确定为处理时长判定模式,再比如此时所接收到的接口调用请求在被响应时,在应用过程中存在较高的并发量,那么此时确定执行判定模式时被确定为连接线程判定模式。
步骤102,基于执行判定模式,对接口调用请求的接口调用模式进行判定,并发送第一反馈信息至接口调用方进行响应。
在接收到接口调用请求,并确定了接口调用请求对应的执行判定模式之后,将会基于接口判定模式对此时的接口调用模式进行确定。具体地,在确定了执行判定模式之后,基于接口提供方的实际使用情况,对接口调用方的接口调用模式进行判断,进而实现对接口调用请求的响应。
具体地,在确定了接口调用请求所对应的执行判定模式时,基于模式的差异性,按照模式的判断方式对接口调用请求对应的接口调用模式进行判断,而不同的执行判定模式下所对应的判断方式有所不同。
示例性地,在进行判断处理时,包括:当执行判定模式为连接线程判定模式时,获取当前性能值,并根据当前性能值确定接口调用请求对应的接口调用模式,以及根据接口调用模式生成第一反馈信息发送至接口调用方。
在确定执行判定模型时为连接线程判定模式时,此时根据所设定的性能阈值,然后获取接口提供方当前的性能情况,确定此时所对应的接口调用模式。对应接口提供方,自身的性能的情况会实时进行监控和更新,进而根据所监控到的数据完成相关的判断处理。
进一步地,在获取了当前性能值之后,进行处理时,包括:获取性能阈值,并将当前性能值与性能阈值进行比较,确定接口调用请求对应的接口调用模式;当接口调用模式为异步调用时,基于接口调用模式生成第一反馈信息,并将第一反馈信息发送至接口调用方。
具体地,在进行处理时,将所获取到的当前性能值与性能阈值进行对比,通过大小比较确定接口调用请求此时的接口调用模式。同时,在确定接口调用模式为异步调用时,由于此时接口提供方可能不会及时的对该接口调用请求进行响应,为了避免接口调用方的长时间等待,此时可以发送相应的信息以提醒接口调用方。示例性地,在确定为异步调用时,将会生成第一反馈信息,其中第一反馈信息不包含接口提供方对接口调用请求的响应结果,只是将进行异步处理的信息告知给接口调用方,避免接口调用方阻塞等待响应。
而在确定为同步处理时,此时接口提供方通过对请求的响应,如接口的获取,进而实现将响应结果的反馈。
在实际应用中,接口提供方在进行自我监控时,所进行监控的数据可以如下表1所示:
表1
其中,serviceId为接口提供方的Id,maxConnection为当前节点响应连接池的最佳性能连接数(超过该连接数会出现性能拐点),performanceRate为响应连接池的性能阈值,如当前在线连接数达到该阈值则请求转为异步模式处理。
然后在确定当前的执行判定模式为connNums(连接线程判定模式)时,可以根据maxConnection和performanceRate确定此时的性能阈值,如此时的性能阈值为500*90%=450,也就是在此时接口提供方中在线连接数高于450时,确定性能过高,此时不可以直接对接口调用请求进行响应。而此时在进行处理时,直接提交(非阻塞)至异步线程池,并创建特殊应答返回调用方,对于此时所创建的应答,在header中写入invokeMode=async,也就是告知接口调用方该接口调用请求将进行异步处理。反之则将缓存中的在线连接数+1,然后直接同步调用对应接口并同步返回。
另外,在进行判断处理时,还包括:当执行判定模式为处理时长判定模式时,确定响应接口调用请求的响应时长,并根据响应时长确定接口调用请求对应的接口调用模式,以及根据接口调用模式生成第一反馈信息发送至接口调用方。
示例性地,在确定执行判定模式为处理时长判定模式时,接口调用模式也会别分为两种情况:同步调用和异步调用。而在确定基于哪一种模式实现对接口调用请求的响应时,通过确定响应该接口调用请求的响应时长来确定,具体地确定过程包括:获取响应平均时长,并将响应时长与响应平均时长进行比较,确定接口调用请求对应的接口调用模式;当接口调用模式为异步调用时,基于接口调用模式生成第一反馈信息,并将第一反馈信息发送至接口调用方。
具体地,在进行处理时,通过确定当前的执行时间是否超过接口平均返回时间来确定此时进行同步处理还是异步处理。而在确定了接口调用模式之后,处理方式与基于连接线程判定模式相似。如在确定为异步调用时,需要告知接口调用方,而在确定为同步调用时,在相应的时间内完成对接口调用请求的响应,以进行响应结果的返回。
步骤103,根据所判定的接口调用请求对应的接口调用模式,对接口调用请求进行应答生成第二反馈信息,并将第二反馈信息发送至接口调用方。
由上述描述可以知道,在接口提供方对接口调用请求进行响应时,在将响应结果返回至接口调用方之前,会因为接口调用模式预先发送相应的反馈信息至接口调用方,比如在确定为异步调用时,生成第一反馈信息发送至接口调用方,以使得接口调用方可以及时进行阻塞释放,进而可以执行其他的任务。而在确定为同步调用时,将会对接口调用请求进行响应,以得到相应的响应结果。
示例性地,在根据接口调用模式进行响应时,包括:当接口调用模式为同步调用时,应答接口调用请求得到第二反馈信息;将接口调用请求与第二反馈信息进行关联,并将关联后的结果进行存储,以使得接口调用方基于第二反馈信息进行响应。
在接口调用模式为同步调用时,也就是此时会进行及时的应答和响应,进而将应答和响应结果返回至接口调用方。因此,此时通过对接口调用请求的应答,生成得到相应的第二反馈信息,接着将第二反馈信息与接口调用请求进行关联,以进行相应的缓存,使得接口调用方通过对缓存信息的获取,得到相对应的应答结果。
另外,在接口调用模式为异步调用时,接口提供方除了在应答和响应之前发送第一反馈信息至接口调用方,在对接口调用请求进行响应时,通过响应和应答得到相应的应答结果,然后将应答结果与接口调用请求进行关联存储。
需要说明的是,在将应答结果与接口调用请求进行关联存储时,可以是将应答结果与接口调用请求的标识信息进行关联,进而在进行应答结果的获取时,接口调用方可以直接根据接口调用请求的标识信息得到相对应的应答结果。
另外,无论是同步调用还是异步调用,在对接口调用请求进行响应和应答时,会进行相应的更新处理,包括:确定响应接口调用请求的第一响应时长,并基于第一响应时长对响应平均时长进行更新。也就是,在应答和响应时,基于此时所得到的响应时长对接口提供方的响应平均时长进行更新,以便于后续的处理。
参照图2,图2为本发明提供的接口调用的交互的框图示意图。
在实际应用过程中,在执行和实现该方法时,通过接口调用方与接口提供方之间的交互实现接口调用方向接口提供方的接口请求。
具体地,在图2所示的交互中,接口调用方包含有调用方代理模块,接口提供方包含有提供方代理模块,其中调用方代理模块由请求组件和缓存监听组件组成,提供方代理模块由接收组件、智能判定组件、结果推送组件组成,同时接口调用方和接口提供方均连接着缓存模块,其中缓存模块为Redis缓存服务。此时在进行接口调用时,包括以下几个步骤:
1、调用方应用通过调用方代理模块发起服务请求;
2、提供方代理模块判定接口执行模式;
3、同步模式,则执行接口并返回结果;异步模式,则直接返回应答再执行接口;
4、异步模式,提供方接口执行完毕后通过提供方代理模块将结果推送至缓存;
5、调用方代理模块监听到推送事件,获取执行结果并返回调用方。
在进行接口调用时,调用方通过调用方代理模块发送接口调用的服务请求至提供方,此时提供方中的提供方代理模块会判定接口执行模式,然后按照不同的模式进行相应的处理。其中,在同步模式的情况下,执行接口并返回结果至调用方,而在异步模式的情况下,先告知调用方然后再执行接口。而在确定执行完毕时,将应答结果发送至缓存模块,然后调用方通过对缓存模块的监听获取相应的应答结果。
另外,在进行请求交互时,调用方和提供方在进行处理时会基于自身的需求进行相关的处理。
示例性地,参照图3,图3是本发明提供的基于调用方的请求发送的框图示意图。具体地,对于调用方,在发送接口调用请求至接口提供方时,首先调用方程序发起请求到达请求组件,请求组件生成当前请求的唯一标识,并通知监听组件,然后监听组件收到通知后将<请求唯一标识,null>的对象写入缓存并监听该对象变化。接着请求组件将当前<请求唯一id,接口对象>结构写入全局请求对象池,最后将请求发送至接口提供方,并且阻塞等待应答。
示例性地,参照图4,图4为本发明提供的基于提供方的请求响应的框图示意图。具体地,对于提供方,在接收到调用方发送的请求时,首先请求转发至智能判定组件进行接口判定,以使得智能判定组件获取判定配置(一般为本地配置文件,也可通过分布式配置中心实现动态更新),其中,判定配置为如下格式的配置文件,首先获取judgeMode接口执行判定模式,avgProcessTime则按照当前接口平均执行时间判定,connNums则按照当前节点的在线连接数判定,进而在判定之后根据判定结果进行后的处理,包括反馈和应答响应。
其中,具体判定规则如下:
connNums:将当前服务节点的在线连接数,与( maxConnection*performanceRate )结果相比较,如果超过性能阈值,直接提交(非阻塞)至异步线程池,并创建特殊应答返回调用方,其中,所创建的特殊应答的header中写入invokeMode=async(异步调用模式);否则,将缓存中的在线连接数+1,然后直接调用对应接口并返回。
avgProcessTime:先提交(阻塞)至异步线程池并开始即时,如果执行时间超过本地缓存中的接口平均返回时间,则释放当前阻塞的应答线程,创建特殊应答返回调用方,其中,所创建的特殊应答的header中写入invokeMode=async,转为异步调用模式;如果在接口平均返回之间之前执行完毕则返回。
示例性地,参照图5,图5为本发明提供的提供方进行应答的框图示意图。具体地,接口提供方在进行应答时,根据进行判定时的判定结果进行相应的应答处理,同时基于不同的判定模式有两种。
如,在判定模式为connNums时,对于智能判定组件判定为同步处理的请求,接口直接返回Response给智能判定组件,智能判定组件先将本地缓存中的在线连接数-1、更新平均响应时间,再返回接收组件,接收组件返回接口调用方。
对于智能判定组件判定为异步处理的请求,待异步线程池中对应的接口执行完毕后,通过切面通知结果推送组件,并将接口执行返回结果(其中应包括请求唯一标识)在通知中一并发送,服务推送组件先更新本地缓存中接口平均响应时间,再以请求唯一标识为key,访问缓存模块查找对象,将应答结果更新至对应Value。接口调用方监听对应的key发生变化,主动获取执行结果。
如,在判定模式为avgProcessTime时,对于智能判定组件判定为同步处理的请求,会提交至异步线程池并阻塞等待,执行完毕后智能判定组件先更新本地缓存中平均响应时间,再将结果返回接收组件,接收组件返回接口调用方。
对于智能判定组件判定为异步处理的请求,待异步线程池中对应的接口执行完毕后,通过切面通知结果推送组件,并将接口执行返回结果(其中应包括请求唯一标识)在通知中一并发送,服务推送组件先更新本地缓存中接口平均响应时间,再以请求唯一标识为key,访问缓存模块查找对象,将应答结果更新至对应Value。接口调用方监听对应的key发生变化,主动获取执行结果。
示例性地,参照图6,图6为本发明提供的调用方接收应答结果的框图示意图。具体地,提供方在完成对调用请求的应答,然后调用方在进行处理时,先获取header中invokeMode字段,如果为async则阻塞当前线程并将当前线程对象加入请求对象池,然后通知监听模块,将当前请求唯一标识加入监听列表;如果invokeMode不为async,则直接请求组件直接将应答返回调用方程序。
同时,当监听组件监听到某个请求唯一标识为key的对象发生变化后,先获取缓存中的应答结果,再从请求对象池pop对应的线程对象唤醒并送入应答结果,该线程将应答返回请求组件,请求组件再返回给调用方程序。
本发明实施例提供的方法,在web接口的调用过程中,首先接收接口调用方发送的接口调用请求,以对接口调用请求对应的执行判定模式进行识别和获取,进而按照所得到的执行判定模式对接口的调用模式进行确定,并且在确定的过程中发送第一反馈信息至接口调用方,使得在进行异步调用时,接口调用方可以及时的释放阻塞等待,最后根据所确定得调用模式实现对接口调用请求的应答。实现了在接口调用的过程中,根据接口提供方的实际情况确定接口调用模式,可以在接口调用过程中有效的保证接口提供方的实际使用不被影响。
下面对本发明提供的web接口的调用响应装置进行描述,下文描述的web接口的调用响应装置与上文描述的web接口的调用响应方法可相互对应参照。
图7是本发明提供的web接口的调用响应装置的结构示意图,如图7所示,该web接口的调用响应装置700包括:
请求接收模块701,用于接收接口调用方发送的接口调用请求,并判断接口调用请求对应的执行判定模式;
模式判定模块702,用于基于执行判定模式,对接口调用请求的接口调用模式进行判定,并发送第一反馈信息至接口调用方进行响应;
请求应答模块703,用于根据所判定的接口调用请求对应的接口调用模式,对接口调用请求进行应答生成第二反馈信息,并将第二反馈信息发送至接口调用方。
基于上述实施例,请求接收模块701还用于:
识别接口调用请求的响应模式,并根据响应模式确定接口调用请求对应的执行判定模式,其中执行判定模式包括处理时长判定模式和连接线程判定模式。
基于上述实施例,请求接收模块701还用于:
当执行判定模式为连接线程判定模式时,获取当前性能值,并根据当前性能值确定接口调用请求对应的接口调用模式,以及根据接口调用模式生成第一反馈信息发送至接口调用方;
当执行判定模式为处理时长判定模式时,确定响应接口调用请求的响应时长,并根据响应时长确定接口调用请求对应的接口调用模式,以及根据接口调用模式生成第一反馈信息发送至接口调用方;
其中,接口调用模式包括同步调用和异步调用。
基于上述实施例,请求接收模块701还用于:
获取性能阈值,并将当前性能值与性能阈值进行比较,确定接口调用请求对应的接口调用模式;
当接口调用模式为异步调用时,基于接口调用模式生成第一反馈信息,并将第一反馈信息发送至接口调用方;
其中,将当前性能值与性能阈值进行比较,确定接口调用请求对应的接口调用模式,包括:
若当前性能值小于性能阈值,则确定接口调用模式为同步模式;
若当前性能值大于或者等于性能阈值,则确定接口调用模式为异步模式。
基于上述实施例,请求接收模块701还用于:
获取响应平均时长,并将响应时长与响应平均时长进行比较,确定接口调用请求对应的接口调用模式;
当接口调用模式为异步调用时,基于接口调用模式生成第一反馈信息,并将第一反馈信息发送至接口调用方;
其中,将响应时长与响应平均时长进行比较,确定接口调用请求对应的接口调用模式,包括:
若响应时长小于响应平均时长,则确定接口调用模式为同步模式;
若响应时长大于或者等于响应平均时长,则确定接口调用模式为异步模式。
基于上述实施例,请求应答模块703还用于:
当接口调用模式为同步调用时,应答接口调用请求得到第二反馈信息;
将接口调用请求与第二反馈信息进行关联,并将关联后的结果进行存储,以使得接口调用方基于第二反馈信息进行响应。
基于上述实施例,web接口的调用响应装置还包括一更新记录模块,用于:
确定响应接口调用请求的第一响应时长,并基于第一响应时长对响应平均时长进行更新。
本发明提供的web接口的调用响应装置,在web接口的调用过程中,首先接收接口调用方发送的接口调用请求,以对接口调用请求对应的执行判定模式进行识别和获取,进而按照所得到的执行判定模式对接口的调用模式进行确定,并且在确定的过程中发送第一反馈信息至接口调用方,使得在进行异步调用时,接口调用方可以及时的释放阻塞等待,最后根据所确定得调用模式实现对接口调用请求的应答。实现了在接口调用的过程中,根据接口提供方的实际情况确定接口调用模式,可以在接口调用过程中有效的保证接口提供方的实际使用不被影响。
图8示例了一种电子设备的实体结构示意图,如图8所示,该电子设备可以包括:处理器(processor)810、通信接口(Communications Interface)820、存储器(memory)830和通信总线840,其中,处理器810,通信接口820,存储器830通过通信总线840完成相互间的通信。处理器810可以调用存储器830中的逻辑指令,以执行web接口的调用响应方法,该方法包括:接收接口调用方发送的接口调用请求,并判断接口调用请求对应的执行判定模式;基于执行判定模式,对接口调用请求的接口调用模式进行判定,并发送第一反馈信息至接口调用方进行响应;根据所判定的接口调用请求对应的接口调用模式,对接口调用请求进行应答生成第二反馈信息,并将第二反馈信息发送至接口调用方。
此外,上述的存储器830中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的web接口的调用响应方法,该方法包括:接收接口调用方发送的接口调用请求,并判断接口调用请求对应的执行判定模式;基于执行判定模式,对接口调用请求的接口调用模式进行判定,并发送第一反馈信息至接口调用方进行响应;根据所判定的接口调用请求对应的接口调用模式,对接口调用请求进行应答生成第二反馈信息,并将第二反馈信息发送至接口调用方。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法所提供的web接口的调用响应方法,该方法包括:接收接口调用方发送的接口调用请求,并判断接口调用请求对应的执行判定模式;基于执行判定模式,对接口调用请求的接口调用模式进行判定,并发送第一反馈信息至接口调用方进行响应;根据所判定的接口调用请求对应的接口调用模式,对接口调用请求进行应答生成第二反馈信息,并将第二反馈信息发送至接口调用方。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (9)
1.一种web接口的调用响应方法,其特征在于,包括:
接收接口调用方发送的接口调用请求,并识别所述接口调用请求的响应模式,以根据所述响应模式确定所述接口调用请求对应的执行判定模式,其中所述执行判定模式包括处理时长判定模式和连接线程判定模式;
根据所述执行判定模式获取判定数据,并根据所述判定数据确定所述接口调用请求的接口调用模式,以及发送第一反馈信息至所述接口调用方;
根据所判定的所述接口调用请求对应的接口调用模式,对所述接口调用请求进行应答生成第二反馈信息,并将所述第二反馈信息发送至所述接口调用方。
2.根据权利要求1所述的web接口的调用响应方法,其特征在于,所述根据所述执行判定模式获取判定数据,并根据所述判定数据确定所述接口调用请求的接口调用模式,以及发送第一反馈信息至所述接口调用方,包括:
当所述执行判定模式为连接线程判定模式时,获取当前性能值,并根据所述当前性能值确定所述接口调用请求对应的接口调用模式,以及根据所述接口调用模式生成第一反馈信息发送至所述接口调用方;
当所述执行判定模式为处理时长判定模式时,确定响应所述接口调用请求的响应时长,并根据所述响应时长确定所述接口调用请求对应的接口调用模式,以及根据所述接口调用模式生成第一反馈信息发送至所述接口调用方;
其中,所述接口调用模式包括同步调用和异步调用。
3.根据权利要求2所述的web接口的调用响应方法,其特征在于,所述根据所述当前性能值确定所述接口调用请求对应的接口调用模式,以及根据所述接口调用模式生成第一反馈信息发送至所述接口调用方,包括:
获取性能阈值,并将所述当前性能值与所述性能阈值进行比较,确定所述接口调用请求对应的接口调用模式;
当所述接口调用模式为异步调用时,基于所述接口调用模式生成第一反馈信息,并将所述第一反馈信息发送至所述接口调用方;
其中,所述将所述当前性能值与所述性能阈值进行比较,确定所述接口调用请求对应的接口调用模式,包括:
若所述当前性能值小于所述性能阈值,则确定所述接口调用模式为同步模式;
若所述当前性能值大于或者等于所述性能阈值,则确定所述接口调用模式为异步模式。
4.根据权利要求2所述的web接口的调用响应方法,其特征在于,所述根据所述响应时长确定所述接口调用请求对应的接口调用模式,以及根据所述接口调用模式生成第一反馈信息发送至所述接口调用方,包括:
获取响应平均时长,并将所述响应时长与所述响应平均时长进行比较,确定所述接口调用请求对应的接口调用模式;
当所述接口调用模式为异步调用时,基于所述接口调用模式生成第一反馈信息,并将所述第一反馈信息发送至所述接口调用方;
其中,所述将所述响应时长与所述响应平均时长进行比较,确定所述接口调用请求对应的接口调用模式,包括:
若所述响应时长小于所述响应平均时长,则确定所述接口调用模式为同步模式;
若所述响应时长大于或者等于所述响应平均时长,则确定所述接口调用模式为异步模式。
5.根据权利要求4所述的web接口的调用响应方法,其特征在于,所述根据所判定的所述接口调用请求对应的接口调用模式,对所述接口调用请求进行应答生成第二反馈信息,并将所述第二反馈信息发送至所述接口调用方,包括:
当所述接口调用模式为同步调用时,应答所述接口调用请求得到第二反馈信息;
将所述接口调用请求与所述第二反馈信息进行关联,并将关联后的结果进行存储,以使得所述接口调用方基于所述第二反馈信息进行响应。
6.根据权利要求4所述的web接口的调用响应方法,其特征在于,所述根据所判定的所述接口调用请求对应的接口调用模式,对所述接口调用请求进行应答生成第二反馈信息,并将所述第二反馈信息发送至所述接口调用方之后,还包括:
确定响应所述接口调用请求的第一响应时长,并基于所述第一响应时长对所述响应平均时长进行更新。
7.一种web接口的调用响应装置,其特征在于,包括:
请求接收模块,用于接收接口调用方发送的接口调用请求,并识别所述接口调用请求的响应模式,以根据所述响应模式确定所述接口调用请求对应的执行判定模式,其中所述执行判定模式包括处理时长判定模式和连接线程判定模式;
模式判定模块,用于根据所述执行判定模式获取判定数据,并根据所述判定数据确定所述接口调用请求的接口调用模式,以及发送第一反馈信息至所述接口调用方;
请求应答模块,用于根据所判定的所述接口调用请求对应的接口调用模式,对所述接口调用请求进行应答生成第二反馈信息,并将所述第二反馈信息发送至所述接口调用方。
8.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至6任一项所述web接口的调用响应方法。
9.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述web接口的调用响应方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211630030.1A CN115622988B (zh) | 2022-12-19 | 2022-12-19 | web接口的调用响应方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211630030.1A CN115622988B (zh) | 2022-12-19 | 2022-12-19 | web接口的调用响应方法、装置、电子设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115622988A CN115622988A (zh) | 2023-01-17 |
CN115622988B true CN115622988B (zh) | 2023-04-28 |
Family
ID=84881047
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211630030.1A Active CN115622988B (zh) | 2022-12-19 | 2022-12-19 | web接口的调用响应方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115622988B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7908656B1 (en) * | 2007-04-23 | 2011-03-15 | Network Appliance, Inc. | Customized data generating data storage system filter for data security |
CN108710535A (zh) * | 2018-05-22 | 2018-10-26 | 中国科学技术大学 | 一种基于智能处理器的任务调度系统 |
CN111008066A (zh) * | 2019-12-09 | 2020-04-14 | 广州品唯软件有限公司 | 服务端接口分析系统、方法、接口分析装置及介质 |
CN112434335A (zh) * | 2020-11-25 | 2021-03-02 | 平安普惠企业管理有限公司 | 业务问题的处理方法、装置、计算机设备及存储介质 |
CN113032307A (zh) * | 2021-03-26 | 2021-06-25 | 山东英信计算机技术有限公司 | 一种集成器件访问请求处理方法及相关组件 |
-
2022
- 2022-12-19 CN CN202211630030.1A patent/CN115622988B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7908656B1 (en) * | 2007-04-23 | 2011-03-15 | Network Appliance, Inc. | Customized data generating data storage system filter for data security |
CN108710535A (zh) * | 2018-05-22 | 2018-10-26 | 中国科学技术大学 | 一种基于智能处理器的任务调度系统 |
CN111008066A (zh) * | 2019-12-09 | 2020-04-14 | 广州品唯软件有限公司 | 服务端接口分析系统、方法、接口分析装置及介质 |
CN112434335A (zh) * | 2020-11-25 | 2021-03-02 | 平安普惠企业管理有限公司 | 业务问题的处理方法、装置、计算机设备及存储介质 |
CN113032307A (zh) * | 2021-03-26 | 2021-06-25 | 山东英信计算机技术有限公司 | 一种集成器件访问请求处理方法及相关组件 |
Also Published As
Publication number | Publication date |
---|---|
CN115622988A (zh) | 2023-01-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106059825A (zh) | 一种分布式系统及配置方法 | |
CN110300067B (zh) | 队列调整方法、装置、设备及计算机可读存储介质 | |
WO2016184175A1 (zh) | 数据库处理方法及装置 | |
CN109451020B (zh) | 超时管理方法、设备及计算机可读存储介质 | |
CN110351311B (zh) | 负载均衡方法 | |
CN105874773B (zh) | 任务处理装置、智能设备、任务处理方法及基带处理器 | |
CN112099935B (zh) | 一种任务处理方法及装置 | |
CN111200606A (zh) | 深度学习模型任务处理方法、系统、服务器及存储介质 | |
CN111541762B (zh) | 数据处理的方法、管理服务器、设备及存储介质 | |
CN114844809B (zh) | 基于网络心跳和内核磁盘心跳的多因子仲裁方法、装置 | |
CN113285884B (zh) | 流量控制方法及系统 | |
CN110928704B (zh) | 消息处理方法、消息处理系统、服务器及计算机存储介质 | |
CN115622988B (zh) | web接口的调用响应方法、装置、电子设备和存储介质 | |
WO2019201111A1 (zh) | 信息处理方法、装置、设备及计算机可读存储介质 | |
CN112631756A (zh) | 一种应用于航天测控软件的分布式调控方法及装置 | |
CN111835809B (zh) | 工单消息分配方法、装置、服务器及存储介质 | |
CN110233843B (zh) | 一种用户请求的处理方法及装置 | |
CN114520808A (zh) | 请求处理方法、装置、电子设备及计算机可读存储介质 | |
CN112099864A (zh) | 一种异步数据的处理方法及装置 | |
TWI381314B (zh) | 中介軟體橋接系統及方法 | |
CN111858669A (zh) | 一种数据二级缓存的方法和装置 | |
CN114710485B (zh) | 处理方法和处理装置 | |
CN116347467B (zh) | 5g网络中udr进行用户数据管理方法及系统 | |
CN112019452B (zh) | 一种业务需求的处理方法、系统及相关装置 | |
CN113220491B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |