CN107104999A - 服务接口调用请求的处理方法和装置 - Google Patents
服务接口调用请求的处理方法和装置 Download PDFInfo
- Publication number
- CN107104999A CN107104999A CN201610099097.5A CN201610099097A CN107104999A CN 107104999 A CN107104999 A CN 107104999A CN 201610099097 A CN201610099097 A CN 201610099097A CN 107104999 A CN107104999 A CN 107104999A
- Authority
- CN
- China
- Prior art keywords
- service interface
- count value
- state
- fail count
- call request
- 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.)
- Granted
Links
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/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请公开了服务接口调用请求的处理方法和装置。所述服务接口调用请求的处理方法的一具体实施方式包括:在接收到服务接口调用指示时获取所述服务接口的状态;如果所述状态为正常,则通过连接池向所述服务接口的提供端发送服务接口调用请求,并等待执行结果,其中,所述执行结果包括所述服务接口的提供端发送的所述服务接口调用请求的响应结果;在等待预定时间长度后,如果没有获得所述执行结果,则更新预存的所述服务接口的失败计数值;如果更新后的失败计数值大于预定的阈值,则将所述服务接口的状态设为异常。该实施方式避免了在服务接口异常时,用于请求调用服务接口的线程长期占用连接池中的连接,进而避免出现***假死现象。
Description
技术领域
本申请涉及计算机技术领域,具体涉及信息交互技术领域,尤其涉及服务接口调用请求的处理方法和装置。
背景技术
目前,不同***之间的信息交互通常是通过调用服务接口来实现。现有技术在调用服务接口时,通常是首先从连接池中获取连接,然后通过获取到的连接向服务接口的提供端发送服务接口调用请求,并等待服务接口的提供端返回服务接口的响应结果。
然而,在请求调用的服务接口出现异常情况时,如果采用现有技术,用于请求调用服务接口的线程会长期占用连接池中的连接,只有在等到预定的超时时间才能将该连接返回连接池中。从而较易导致连接池中的连接消耗殆尽,使得大量其他线程处于等待状态,以至出现***假死现象。
发明内容
本申请的目的在于提出一种服务接口调用请求的处理方法和装置,来解决以上背景技术部分提到的技术问题。
第一方面,本申请提供了一种服务接口调用请求的处理方法,所述方法包括:在接收到服务接口调用指示时获取所述服务接口的状态;如果所述状态为正常,则通过连接池向所述服务接口的提供端发送服务接口调用请求,并等待执行结果,其中,所述执行结果包括所述服务接口的提供端发送的所述服务接口调用请求的响应结果;在等待预定时间长度后,如果没有获得所述执行结果,则更新预存的所述服务接口的失败计数值;如果更新后的失败计数值大于预定的阈值,则将所述服务接口的状态设为异常。
在一些实施例中,所述通过连接池向所述服务接口的提供端发送服务接口调用请求,包括:在所述连接池中获取连接;如果在第一预定时间长度内获取到连接,则通过所述连接向所述服务接口提供端发送服务接口调用请求。
在一些实施例中,所述执行结果还包括在所述连接池获取到的连接;以及所述在等待预定时间长度后,如果没有获得所述执行结果,则更新预存的所述服务接口的失败计数值,包括:如果在第一预定时间长度内没有获取到连接,则更新预存的所述服务接口的失败计数值;或者如果在第二预定时间长度内没有获取到所述服务接口的提供端发送的所述响应结果,则更新预存的所述服务接口的失败计数值。
在一些实施例中,所述方法还包括:在获取需调用的服务接口的状态之后,如果所述状态为异常,则发送异常消息。
在一些实施例中,所述在等待预定时间长度后,如果没有获得所述执行结果,则更新预存的所述服务接口的失败计数值,还包括:在等待预定时间长度后,如果没有获得所述执行结果,则发送异常消息。
在一些实施例中,所述方法还包括:每隔预定的时间间隔,将所述服务接口的失败计数值清零,并将所述服务接口的状态初始化为正常。
第二方面,本申请提供了一种服务接口调用请求的处理装置,所述装置包括:状态获取单元,用于在接收到服务接口调用指示时获取所述服务接口的状态;服务接口调用请求发送单元,用于在所述状态为正常时,通过连接池向所述服务接口的提供端发送服务接口调用请求,并等待执行结果,其中,所述执行结果包括所述服务接口的提供端发送的所述服务接口调用请求的响应结果;失败计数值更新单元,用于在等待预定时间长度后,如果没有获得所述执行结果,则更新预存的所述服务接口的失败计数值;状态更新单元,用于在更新后的失败计数值大于预定的阈值时,将所述服务接口的状态设为异常。
在一些实施例中,所述服务接口调用请求发送单元,包括:连接获取子单元,用于在所述连接池中获取连接;服务接口调用请求发送子单元,用于在第一预定时间长度内获取到连接时,通过所述连接向所述服务接口提供端发送服务接口调用请求。
在一些实施例中,所述执行结果还包括在所述连接池获取到的连接;以及所述失败计数值更新单元包括:第一失败计数值更新子单元,用于在第一预定时间长度内没有获取到连接时,更新预存的所述服务接口的失败计数值;第二失败计数值更新子单元,用于在第二预定时间长度内没有获取到所述服务接口的提供端发送的所述响应结果时,更新预存的所述服务接口的失败计数值。
在一些实施例中,所述装置还包括:异常消息发送单元,用于在获取需调用的服务接口的状态之后,如果所述状态为异常,则发送异常消息。
在一些实施例中,所述失败计数值更新单元还用于在等待预定时间长度后,如果没有获得所述执行结果,则发送异常消息。
在一些实施例中,所述装置还包括:初始化单元,用于每隔预定的时间间隔,将所述服务接口的失败计数值清零,并将所述服务接口的状态初始化为正常。
本申请提供的服务接口调用请求的处理方法和装置,通过在发送服务接口调用请求后,如果在等待的预定时间长度后没有获得所述执行结果,则更新预存的所述服务接口的失败计数值,并根据更新后的失败计数值是否大于预定的阈值,来更新服务接口的状态,实现了对服务接口状态的实时准确更新。同时,通过在接收到服务接口调用指示时先获取所述服务接口的状态,如果所述状态为正常,才通过连接池向所述服务接口的提供端发送服务接口调用请求,从而避免了在服务接口异常时,用于请求调用服务接口的线程长期占用连接池中的连接,进而避免出现***假死现象。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是本申请可以应用于其中的示例性***架构图;
图2是根据本申请的服务接口调用请求的处理方法的一个实施例的流程图;
图3是根据本申请的服务接口调用请求的处理方法的另一个实施例的流程图;
图4是根据本申请的服务接口调用请求的处理装置的一个实施例的流程图;
图5是适于用来实现本申请实施例的服务接口请求端的计算机***的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本申请的服务接口调用请求的处理方法或服务接口调用请求的处理装置的实施例的示例性***架构100。
如图1所示,***架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种客户端应用,例如浏览器应用、阅读类应用、音乐类应用等。
终端设备101、102、103可以是支持信息通信的各种电子设备,包括但不限于智能手机、平板电脑、笔记本电脑和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如在终端设备101、102、103上的浏览器应用、阅读类应用等发出服务接口调用请求时,对上述应用提供服务接口的数据库服务器或云服务器。服务器可以根据接收到的服务接口调用请求执行服务接口中的方法,以进行存储、分析等处理,并将处理结果反馈给终端设备。
需要说明的是,本申请实施例所提供的服务接口调用请求的处理方法可以由终端设备101、102、103执行。相应地,服务接口调用请求的处理装置可以设置于终端设备101、102、103中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
继续参考图2,图2示出了根据本申请的服务接口调用请求的处理方法的一个实施例的流程200。
如图2所示,本实施例的服务接口调用请求的处理方法包括以下步骤:
步骤201,在接收到服务接口调用指示时获取上述服务接口的状态。
在本实施例中,服务接口调用请求的处理方法运行于其上的服务接口请求端(例如图1所示的终端设备)可以通过从计算机可读取的存储介质(例如内存)中读取用于表示上述服务接口的状态的标志来获取上述服务接口的状态。其中,服务接口是一个***与另一个***或人之间的共享边界,其通过使用一系列的标准规范,为互联网上的不同应用提供了语法互操作性支持。利用服务接口进行交互的***只需遵从相应的服务接口,而不需考虑各自的内部实现,从而极大地降低了交互***之间的耦合度,增加了企业应用的灵活性。服务接口例如可以为HTTP(Hyper Text Transfer Protocol,超文本传输协议)接口等。
步骤202,如果上述状态为正常,则通过连接池向上述服务接口的提供端发送服务接口调用请求,并等待执行结果。
其中,上述执行结果包括上述服务接口的提供端发送的上述服务接口调用请求的响应结果。在本实施例中,服务接口请求端可以首先在上述连接池中获取连接,然后通过获取到的连接向上述服务接口提供端发送服务接口调用请求,然后等待执行结果。其中,连接池是创建和管理连接的缓冲池的技术,连接池中的连接准备好被任何需要它们的线程使用。当一个线程需要发送服务接口请求并接收响应结果时,它会从连接池中请求一个连接,当这个线程使用完了这个连接(例如接收到响应结果),就会将该连接返回到连接池中,这样该连接就可以被其它需要使用它的线程使用。
步骤203,在等待预定时间长度后,如果没有获得上述执行结果,则更新预存的上述服务接口的失败计数值。
在本实施例中,服务接口请求端在等待预定时间长度后,如果没有获得上述执行结果,就可以通过从预定的计算机可读取的存储介质(例如内存)中读取上述服务接口的原失败计数值,然后将原失败计数值加1,之后将加1后的失败计数值写入上述存储介质中。
步骤204,如果更新后的失败计数值大于预定的阈值,则将上述服务接口的状态设为异常。
在本实施例中,服务接口请求端可以首先判断更新后的失败计数值是否大于预定的阈值,如果是,则将上述存储状态标志的存储介质中的状态标志更改为异常。以使后续需调用上述服务接口时,通过步骤201可以获取到上述服务接口的异常状态信息。
在本实施例的一些可选的实现方式中,本实施例的服务接口调用请求的处理方法还可以包括:在步骤201之后,如果上述状态为异常,则发送异常消息(例如抛异常)。从而使服务接口调用指示方能够获取到服务接口异常的消息。
在本实施例的一些可选的实现方式中,步骤204还可以包括:在等待预定时间长度后,如果没有获得上述执行结果,则发送异常消息。从而使服务接口调用指示方能够获取到相应的异常消息。
在本实施例的一些可选的实现方式中,本实施例的服务接口调用请求的处理方法还可以包括:每隔预定的时间间隔,将上述服务接口的失败计数值清零,并将上述服务接口的状态初始化为正常。通过该实现方式,解决了由失败计数值长期累计而导致的状态不准确的问题,从而使获取到的服务接口的状态更加准确。
本实施例提供的服务接口调用请求的处理方法,通过在发送服务接口调用请求后,如果在等待的预定时间长度后没有获得上述执行结果,则更新预存的上述服务接口的失败计数值,并根据更新后的失败计数值是否大于预定的阈值,来更新服务接口的状态,实现了对服务接口状态的实时准确更新。同时,通过在接收到服务接口调用指示时先获取上述服务接口的状态,如果上述状态为正常,才通过连接池向上述服务接口的提供端发送服务接口调用请求,从而避免了在服务接口异常时,用于请求调用服务接口的线程长期占用连接池中的连接,进而避免出现***假死现象。
进一步参考图3,图3示出了根据本申请的服务接口调用请求的处理方法的另一个实施例的流程300。
如图3所示,本实施例的服务接口调用请求的处理方法包括以下步骤:
步骤301,在接收到服务接口调用指示时获取上述服务接口的状态。
在本实施例中,步骤301的具体处理可参考图2对应实施例中步骤201的相关描述,在此不再赘述。
步骤302,如果上述状态为正常,则在连接池中获取连接,并等待在上述连接池获取到的连接。
在本实施例中,服务接口请求端在连接池中获取连接的具体处理可参考图2对应实施例中步骤202的相关部分的说明,在此不再赘述。
步骤303,判断是否在第一预定时间长度内获取到连接。
在本实施例中,如果在第一预定时间长度内获取到连接,则执行步骤304,否则执行步骤306。
步骤304,通过上述连接向上述服务接口的提供端发送服务接口调用请求,并等待上述服务接口的提供端发送的上述服务接口调用请求的响应结果。
在本实施例中,服务接口请求端通过上述连接向上述服务接口的提供端发送服务接口调用请求的具体处理可参考图2对应实施例中步骤202的相关部分的说明,在此不再赘述。在通过上述连接向上述服务接口的提供端发送服务接口调用请求之后,执行步骤305。
步骤305,判断是否在第二预定时间长度内获取到上述服务接口的提供端发送的响应结果。
在本实施例中,如果在第二预定时间长度内没有获取到上述服务接口的提供端发送的上述响应结果,则执行步骤306。
步骤306,更新预存的上述服务接口的失败计数值,如果更新后的失败计数值大于预定的阈值,则将上述服务接口的状态设为异常。
在本实施例中,服务接口请求端可以首先通过从预定的计算机可读取的存储介质(例如内存)中读取上述服务接口的原失败计数值,然后将原失败计数值加1,之后将加1后的失败计数值写入上述存储介质中。如果加1后的失败计数值大于预定的阈值,则将上述存储状态标志的存储介质中的状态标志更改为异常。
从图3中可以看出,与图2对应的实施例相比,本实施例中的服务接口调用请求的处理方法的流程300在第一预定时间长度内没有获取到连接时,也更新服务接口的失败计数值,并根据更新后的失败计数值相应设置服务接口的状态。由此,本实施例描述的方案可以针对获取不到连接和接收不到服务接口提供端的响应结果分别设置不同的超时时间长度,从而可以更加准确地设置服务接口的状态。
下面参考图4,作为对上述各图所示方法的实现,本申请提供了一种服务接口调用请求的处理装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于服务接口请求端中。
如图4所示,本实施例提供的服务接口调用请求的处理装置400包括:状态获取单元401、服务接口调用请求发送单元402、失败计数值更新单元403以及状态更新单元404。其中,状态获取单元401用于在接收到服务接口调用指示时获取上述服务接口的状态;服务接口调用请求发送单元402用于在上述状态为正常时,通过连接池向上述服务接口的提供端发送服务接口调用请求,并等待执行结果,其中,上述执行结果包括上述服务接口的提供端发送的上述服务接口调用请求的响应结果;失败计数值更新单元403用于在等待预定时间长度后,如果没有获得上述执行结果,则更新预存的上述服务接口的失败计数值;状态更新单元404用于在更新后的失败计数值大于预定的阈值时,将上述服务接口的状态设为异常。
在本实施例中,状态获取单元401、服务接口调用请求发送单元402、失败计数值更新单元403以及状态更新单元404的具体处理可分别参考图2对应实施例中步骤201、步骤202、步骤203以及步骤204的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,服务接口调用请求发送单元402可以包括:连接获取子单元4021,用于在上述连接池中获取连接;服务接口调用请求发送子单元4022,用于在第一预定时间长度内获取到连接时,通过上述连接向上述服务接口提供端发送服务接口调用请求。
在本实施例的一些可选的实现方式中,上述执行结果还可以包括在上述连接池获取到的连接。以及,上述失败计数值更新单元203可以包括:第一失败计数值更新子单元2031,用于在第一预定时间长度内没有获取到连接时,更新预存的上述服务接口的失败计数值;第二失败计数值更新子单元2032,用于在第二预定时间长度内没有获取到上述服务接口的提供端发送的上述响应结果时,更新预存的上述服务接口的失败计数值。
在本实施例的一些可选的实现方式中,本实施例的服务接口调用请求的处理装置还可以包括:异常消息发送单元405,用于在获取需调用的服务接口的状态之后,如果上述状态为异常,则发送异常消息。异常消息发送单元405的具体处理可参考图2对应实施例中相应实现方式的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,失败计数值更新单元403还可以用于在等待预定时间长度后,如果没有获得上述执行结果,则发送异常消息。该实现方式的具体处理可参考图2对应实施例中相应实现方式的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,本实施例的服务接口调用请求的处理装置还可以包括:初始化单元(图中未示出),用于每隔预定的时间间隔,将上述服务接口的失败计数值清零,并将上述服务接口的状态初始化为正常。初始化单元406的具体处理可参考图2对应实施例中相应实现方式的相关说明,在此不再赘述。
本实施例提供的服务接口调用请求的处理装置,通过失败计数值更新单元403在发送服务接口调用请求后,如果在等待的预定时间长度后没有获得上述执行结果,则更新预存的上述服务接口的失败计数值,并通过状态更新单元404根据更新后的失败计数值是否大于预定的阈值,来更新服务接口的状态,实现了对服务接口状态的实时准确更新。同时,通过状态获取单元401在接收到服务接口调用指示时先获取上述服务接口的状态,并在上述状态为正常时,才通过服务接口调用请求发送单元402通过连接池向上述服务接口的提供端发送服务接口调用请求,从而避免了在服务接口异常时,用于请求调用服务接口的线程长期占用连接池中的连接,进而避免出现***假死现象。
下面参考图5,其示出了适于用来实现本申请实施例的服务接口需求端的计算机***500的结构示意图。
如图5所示,计算机***500包括中央处理单元(CPU)501,其可以根据存储在只读存储器(ROM)502中的程序或者从存储部分508加载到随机访问存储器(RAM)503中的程序而执行各种适当的动作和处理。在RAM 503中,还存储有***500操作所需的各种程序和数据。CPU 501、ROM 502以及RAM 503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
以下部件连接至I/O接口505:包括键盘、鼠标等的输入部分506;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分507;包括硬盘等的存储部分508;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分509。通信部分509经由诸如因特网的网络执行通信处理。驱动器510也根据需要连接至I/O接口505。可拆卸介质511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器510上,以便于从其上读出的计算机程序根据需要被安装入存储部分508。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,上述计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分509从网络上被下载和安装,和/或从可拆卸介质511被安装。在该计算机程序被中央处理单元(CPU)501执行时,执行本申请的方法中限定的上述功能。
附图中的流程图和框图,图示了按照本申请各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括状态获取单元、服务接口调用请求发送单元、失败计数值更新单元以及状态更新单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,状态获取单元还可以被描述为“在接收到服务接口调用指示时获取上述服务接口的状态的单元”。
作为另一方面,本申请还提供了一种非易失性计算机存储介质,该非易失性计算机存储介质可以是上述实施例中所述装置中所包含的非易失性计算机存储介质;也可以是单独存在,未装配入终端中的非易失性计算机存储介质。上述非易失性计算机存储介质存储有一个或者多个程序,当所述一个或者多个程序被一个设备执行时,使得所述设备:在接收到服务接口调用指示时获取所述服务接口的状态;如果所述状态为正常,则通过连接池向所述服务接口的提供端发送服务接口调用请求,并等待执行结果,其中,所述执行结果包括所述服务接口的提供端发送的所述服务接口调用请求的响应结果;在等待预定时间长度后,如果没有获得所述执行结果,则更新预存的所述服务接口的失败计数值;如果更新后的失败计数值大于预定的阈值,则将所述服务接口的状态设为异常。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (12)
1.一种服务接口调用请求的处理方法,其特征在于,所述方法包括:
在接收到服务接口调用指示时获取所述服务接口的状态;
如果所述状态为正常,则通过连接池向所述服务接口的提供端发送服务接口调用请求,并等待执行结果,其中,所述执行结果包括所述服务接口的提供端发送的所述服务接口调用请求的响应结果;
在等待预定时间长度后,如果没有获得所述执行结果,则更新预存的所述服务接口的失败计数值;
如果更新后的失败计数值大于预定的阈值,则将所述服务接口的状态设为异常。
2.根据权利要求1所述的方法,其特征在于,所述通过连接池向所述服务接口的提供端发送服务接口调用请求,包括:
在所述连接池中获取连接;
如果在第一预定时间长度内获取到连接,则通过所述连接向所述服务接口提供端发送服务接口调用请求。
3.根据权利要求2所述的方法,其特征在于,所述执行结果还包括在所述连接池获取到的连接;以及
所述在等待预定时间长度后,如果没有获得所述执行结果,则更新预存的所述服务接口的失败计数值,包括:
如果在第一预定时间长度内没有获取到连接,则更新预存的所述服务接口的失败计数值;或者
如果在第二预定时间长度内没有获取到所述服务接口的提供端发送的所述响应结果,则更新预存的所述服务接口的失败计数值。
4.根据权利要求1-3任一所述的方法,其特征在于,所述方法还包括:
在获取需调用的服务接口的状态之后,如果所述状态为异常,则发送异常消息。
5.根据权利要求1-3任一所述的方法,其特征在于,所述在等待预定时间长度后,如果没有获得所述执行结果,则更新预存的所述服务接口的失败计数值,还包括:
在等待预定时间长度后,如果没有获得所述执行结果,则发送异常消息。
6.根据权利要求1-3任一所述的方法,其特征在于,所述方法还包括:
每隔预定的时间间隔,将所述服务接口的失败计数值清零,并将所述服务接口的状态初始化为正常。
7.一种服务接口调用请求的处理装置,其特征在于,所述装置包括:
状态获取单元,用于在接收到服务接口调用指示时获取所述服务接口的状态;
服务接口调用请求发送单元,用于在所述状态为正常时,通过连接池向所述服务接口的提供端发送服务接口调用请求,并等待执行结果,其中,所述执行结果包括所述服务接口的提供端发送的所述服务接口调用请求的响应结果;
失败计数值更新单元,用于在等待预定时间长度后,如果没有获得所述执行结果,则更新预存的所述服务接口的失败计数值;
状态更新单元,用于在更新后的失败计数值大于预定的阈值时,将所述服务接口的状态设为异常。
8.根据权利要求7所述的装置,其特征在于,所述服务接口调用请求发送单元,包括:
连接获取子单元,用于在所述连接池中获取连接;
服务接口调用请求发送子单元,用于在第一预定时间长度内获取到连接时,通过所述连接向所述服务接口提供端发送服务接口调用请求。
9.根据权利要求8所述的装置,其特征在于,所述执行结果还包括在所述连接池获取到的连接;以及
所述失败计数值更新单元包括:
第一失败计数值更新子单元,用于在第一预定时间长度内没有获取到连接时,更新预存的所述服务接口的失败计数值;
第二失败计数值更新子单元,用于在第二预定时间长度内没有获取到所述服务接口的提供端发送的所述响应结果时,更新预存的所述服务接口的失败计数值。
10.根据权利要求7-9任一所述的装置,其特征在于,所述装置还包括:异常消息发送单元,用于在获取需调用的服务接口的状态之后,如果所述状态为异常,则发送异常消息。
11.根据权利要求7-9任一所述的装置,其特征在于,所述失败计数值更新单元还用于在等待预定时间长度后,如果没有获得所述执行结果,则发送异常消息。
12.根据权利要求7-9任一所述的装置,其特征在于,所述装置还包括:初始化单元,用于每隔预定的时间间隔,将所述服务接口的失败计数值清零,并将所述服务接口的状态初始化为正常。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610099097.5A CN107104999B (zh) | 2016-02-23 | 2016-02-23 | 服务接口调用请求的处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610099097.5A CN107104999B (zh) | 2016-02-23 | 2016-02-23 | 服务接口调用请求的处理方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107104999A true CN107104999A (zh) | 2017-08-29 |
CN107104999B CN107104999B (zh) | 2021-05-25 |
Family
ID=59658327
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610099097.5A Active CN107104999B (zh) | 2016-02-23 | 2016-02-23 | 服务接口调用请求的处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107104999B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107562551A (zh) * | 2017-09-05 | 2018-01-09 | 北京小度信息科技有限公司 | 外部接入***的监控方法、装置及计算机可读存储介质 |
CN108021462A (zh) * | 2017-12-08 | 2018-05-11 | 北京百度网讯科技有限公司 | 用于调用云服务的方法和装置 |
CN109343955A (zh) * | 2018-09-14 | 2019-02-15 | 网易无尾熊(杭州)科技有限公司 | 推荐服务调用方法、介质、装置和计算设备 |
CN110336856A (zh) * | 2019-05-10 | 2019-10-15 | 成都终身成长科技有限公司 | 接口调用方法、装置、电子设备及存储介质 |
CN113419876A (zh) * | 2021-06-30 | 2021-09-21 | 广州华多网络科技有限公司 | 远程接口代理调用方法、装置以及计算机设备、存储介质 |
CN116048829A (zh) * | 2022-07-01 | 2023-05-02 | 荣耀终端有限公司 | 接口调用方法、设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102325148A (zh) * | 2011-05-25 | 2012-01-18 | 重庆新媒农信科技有限公司 | 一种WebService服务调用方法 |
WO2013097674A1 (zh) * | 2011-12-28 | 2013-07-04 | 北京奇虎科技有限公司 | 一种分布式***及其数据操作方法 |
CN104239156A (zh) * | 2013-06-21 | 2014-12-24 | 阿里巴巴集团控股有限公司 | 一种外部服务的调用方法及*** |
CN104270472A (zh) * | 2014-10-24 | 2015-01-07 | 杭州高达软件***股份有限公司 | 一种远程服务调用方法、装置及*** |
-
2016
- 2016-02-23 CN CN201610099097.5A patent/CN107104999B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102325148A (zh) * | 2011-05-25 | 2012-01-18 | 重庆新媒农信科技有限公司 | 一种WebService服务调用方法 |
WO2013097674A1 (zh) * | 2011-12-28 | 2013-07-04 | 北京奇虎科技有限公司 | 一种分布式***及其数据操作方法 |
CN104239156A (zh) * | 2013-06-21 | 2014-12-24 | 阿里巴巴集团控股有限公司 | 一种外部服务的调用方法及*** |
CN104270472A (zh) * | 2014-10-24 | 2015-01-07 | 杭州高达软件***股份有限公司 | 一种远程服务调用方法、装置及*** |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107562551A (zh) * | 2017-09-05 | 2018-01-09 | 北京小度信息科技有限公司 | 外部接入***的监控方法、装置及计算机可读存储介质 |
CN108021462A (zh) * | 2017-12-08 | 2018-05-11 | 北京百度网讯科技有限公司 | 用于调用云服务的方法和装置 |
CN108021462B (zh) * | 2017-12-08 | 2019-06-04 | 北京百度网讯科技有限公司 | 用于调用云服务的方法和装置 |
CN109343955A (zh) * | 2018-09-14 | 2019-02-15 | 网易无尾熊(杭州)科技有限公司 | 推荐服务调用方法、介质、装置和计算设备 |
CN109343955B (zh) * | 2018-09-14 | 2021-03-16 | 阿里巴巴(中国)有限公司 | 推荐服务调用方法、介质、装置和计算设备 |
CN110336856A (zh) * | 2019-05-10 | 2019-10-15 | 成都终身成长科技有限公司 | 接口调用方法、装置、电子设备及存储介质 |
CN110336856B (zh) * | 2019-05-10 | 2021-11-26 | 成都终身成长科技有限公司 | 接口调用方法、装置、电子设备及存储介质 |
CN113419876A (zh) * | 2021-06-30 | 2021-09-21 | 广州华多网络科技有限公司 | 远程接口代理调用方法、装置以及计算机设备、存储介质 |
CN116048829A (zh) * | 2022-07-01 | 2023-05-02 | 荣耀终端有限公司 | 接口调用方法、设备及存储介质 |
CN116048829B (zh) * | 2022-07-01 | 2023-10-10 | 荣耀终端有限公司 | 接口调用方法、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN107104999B (zh) | 2021-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107104999A (zh) | 服务接口调用请求的处理方法和装置 | |
US20170060576A1 (en) | Rebuildable service-oriented applications | |
US9081937B2 (en) | Systems and methods for managing subscription-based licensing of software products | |
CN110851253B (zh) | 一种远程运维的方法、***、存储介质及电子设备 | |
US20230308504A9 (en) | Method and system of application development for multiple device client platforms | |
CN107729139A (zh) | 一种并发获取资源的方法和装置 | |
CN107341050A (zh) | 基于动态线程池的服务处理方法和装置 | |
CN106686023A (zh) | 一种流程设计方法、客户机、服务器侧装置及*** | |
CN105718313A (zh) | 应用操作方法和装置 | |
CN107179951A (zh) | 远程过程调用方法和装置 | |
CN108845861A (zh) | 虚拟摄像头的实现方法及装置 | |
CN109936605A (zh) | 一种加载接口数据的方法和装置 | |
US7725818B1 (en) | Parallel composition of electronic responses to electronic requests | |
CN110020349A (zh) | 页面渲染的方法及装置 | |
CN112817562A (zh) | 业务处理的方法和装置 | |
CN112486482A (zh) | 一种页面展示方法和装置 | |
CN108123970A (zh) | 数据展示方法及相关装置 | |
CN105354090B (zh) | 虚拟设备的管理方法和装置 | |
CN107317788A (zh) | 实时数据推送方法和装置 | |
CN110807535A (zh) | 统一预约平台的构建方法、构建装置和统一预约平台*** | |
CN108076110B (zh) | 电子数据交换***和包含电子数据交换***的装置 | |
CN113242184A (zh) | 分布式架构的流量控制方法及相关设备 | |
CN109981546A (zh) | 获取应用模块间的远程调用关系的方法和装置 | |
JP2009157786A (ja) | メッセージ送信制御方法、メッセージ送信制御装置、及びメッセージ送信制御プログラム | |
CN105975296A (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 |