CN111506443A - 服务调用方法、装置、设备和存储介质 - Google Patents

服务调用方法、装置、设备和存储介质 Download PDF

Info

Publication number
CN111506443A
CN111506443A CN202010305198.XA CN202010305198A CN111506443A CN 111506443 A CN111506443 A CN 111506443A CN 202010305198 A CN202010305198 A CN 202010305198A CN 111506443 A CN111506443 A CN 111506443A
Authority
CN
China
Prior art keywords
client
server
service
service request
random number
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
Application number
CN202010305198.XA
Other languages
English (en)
Other versions
CN111506443B (zh
Inventor
杜展志
刘鹏飞
陈龙
王恩东
高德志
王春锦
刘时珍
赵超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
FAW Jiefang Automotive Co Ltd
Original Assignee
FAW Jiefang Automotive Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by FAW Jiefang Automotive Co Ltd filed Critical FAW Jiefang Automotive Co Ltd
Priority to CN202010305198.XA priority Critical patent/CN111506443B/zh
Publication of CN111506443A publication Critical patent/CN111506443A/zh
Application granted granted Critical
Publication of CN111506443B publication Critical patent/CN111506443B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/541Client-server
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/547Messaging middleware
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Abstract

本申请涉及一种服务调用方法、装置、设备和存储介质。该方法包括:接收客户端发送的服务请求,所述服务请求用于调用所述服务端提供的目标服务;当确定当前处于资源拥塞状态时,更新所述服务请求的总接收次数;当所述总接收次数小于或等于第一预设阈值时,根据所述总接收次数确定所述客户端对应的随机数,并将所述随机数发送给所述客户端,其中,所述随机数用于表示所述客户端发起下一次服务请求的时间。该方法能够在确定自身当前处于资源拥塞状态的情况下,不进行目标服务的处理,并能够进一步指示客户端根据随机数发起下一次服务请求,以避免客户端连续发送服务请求造成资源的进一步拥塞,从而可以避免资源过度拥塞造成服务端的宕机。

Description

服务调用方法、装置、设备和存储介质
技术领域
本申请涉及汽车技术领域,特别是涉及一种服务调用方法、装置、设备和存储介质。
背景技术
目前,灵活的、基于IP协议的面向服务的中间件(Scalabe service-OrientedMiddlewarE over IP protocol,SOME/IP)技术为车载领域提供了一种面向服务的通讯方式,即服务请求端可以基于SOME/IP技术调用服务提供端所提供的服务,从而增加了跨设备服务调用的灵活性。但是,在服务调用的过程中,传统的服务调用方式可能会导致服务提供端宕机。
发明内容
基于此,有必要针对传统方式可能会导致服务提供端宕机的技术问题,提供一种服务调用方法、装置、设备和存储介质。
第一方面,本申请实施例提供一种服务调用方法,应用于车载系统中的服务端,所述车载系统包括所述服务端和客户端,所述服务端与客户端之间采用灵活的、基于IP协议的面向服务的中间件SOME/IP进行通信,所述方法包括:
接收客户端发送的服务请求,所述服务请求用于调用所述服务端提供的目标服务;
当确定当前处于资源拥塞状态时,更新所述服务请求的总接收次数;
当所述总接收次数小于或等于第一预设阈值时,根据所述总接收次数确定所述客户端对应的随机数,并将所述随机数发送给所述客户端,其中,所述随机数用于表示所述客户端发起下一次服务请求的时间。
第二方面,本申请实施例提供一种基于服务调用方法,应用于车载系统中的客户端,所述车载系统包括服务端和客户端,所述服务端与客户端之间采用SOME/IP进行通信,所述方法包括:
向服务端发送服务请求,所述服务请求用于调用所述服务端提供的目标服务;
接收所述服务端发送的随机数,其中,所述随机数是在所述服务端确定当前处于资源拥塞状态,且更新后的所述服务请求的总接收次数小于或等于第一预设阈值时,基于所述总接收次数所确定出的,且所述随机数用于表示所述客户端发起下一次服务请求的时间;
根据所述随机数向服务端发送下一次服务请求。
第三方面,本申请实施例提供一种服务调用装置,集成于车载系统中的服务端,所述车载系统包括所述服务端和客户端,所述服务端与客户端之间采用SOME/IP进行通信,所述装置包括:
接收模块,用于接收客户端发送的服务请求,所述服务请求用于调用所述服务端提供的目标服务;
更新模块,用于当确定当前处于资源拥塞状态时,更新所述服务请求的总接收次数;
第一确定模块,用于当所述总接收次数小于或等于第一预设阈值时,根据所述总接收次数确定所述客户端对应的随机数,其中,所述随机数用于表示所述客户端发起下一次服务请求的时间;
发送模块,用于将所述随机数发送给所述客户端。
第四方面,本申请实施例提供一种服务调用装置,集成于车载系统中的客户端,所述车载系统包括服务端和客户端,所述服务端与客户端之间采用SOME/IP进行通信,所述装置包括:
发送模块,用于向服务端发送服务请求,所述服务请求用于调用所述服务端提供的目标服务;
接收模块,用于接收所述服务端发送的随机数,其中,所述随机数是在所述服务端确定当前处于资源拥塞状态,且更新后的所述服务请求的总接收次数小于或等于第一预设阈值时,基于所述总接收次数所确定出的,且所述随机数用于表示所述客户端发起下一次服务请求的时间;
发送模块,还用于根据所述随机数向服务端发送下一次服务请求。
第五方面,本申请实施例提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现本申请实施例第一方面和第二方面提供的服务调用方法。
第六方面,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本申请实施例第一方面和第二方面提供的服务调用方法。
本申请实施例提供的服务调用方法、装置、设备和存储介质,在接收到客户端发送的服务请求之后,当确定当前处于资源拥塞状态时,更新该服务请求的总接收次数,当该服务请求的总接收次数小于或等于第一预设阈值时,根据服务请求的总接收次数确定该客户端对应的随机数,并将确定出的随机数发送给该客户端,其中,该随机数用于表示该客户端发起下一次服务请求的时间。在客户端调用服务端所提供的目标服务的过程中,在接收到客户端的服务请求之后,服务端能够判断自身当前是否处于资源拥塞状态,在确定自身当前处于资源拥塞状态的情况下,不进行目标服务的处理,并能够进一步指示客户端根据随机数发起下一次服务请求,以避免客户端连续发送服务请求造成资源的进一步拥塞,从而可以避免资源过度拥塞造成服务端的宕机。
附图说明
图1为本申请实施例提供的服务调用方法应用的车载系统架构图;
图2为本申请实施例提供的服务调用方法的一种流程示意图;
图3为本申请实施例提供的服务调用方法的另一种流程示意图;
图4为本申请实施例提供的一种服务调用装置的结构示意图;
图5为本申请实施例提供的另一种服务调用装置的结构示意图;
图6为本申请实施例提供的一种计算机设备的内部结构示意图。
具体实施方式
图1为本申请实施例提供的服务调用方法应用的车载系统架构图。如图1所示,该车载系统可以包括客户端10和服务端11,其中,客户端10与服务端11之间采用SOME/IP进行通信,服务端11可以以多播报文的形式在网络中广播自身所能够提供的一种或多种服务,客户端10根据自身的服务需求,向服务端发送服务请求(Request Service)以调用服务端11所提供的服务,服务端11处理该客户端10的服务请求,并向客户端10发送服务响应(Response Service)。可选的,客户端10和服务端11可以为车载系统中的电子控制单元(Electronic Control Unit,ECU),即车载系统中的每个ECU都可能作为服务端11向其它ECU提供服务处理功能,也都可能作为客户端10调用其它ECU提供的服务。
当多个客户端10在同一时刻调用同一个服务端11上的服务(该服务可以为同一种服务,也可以为不同的服务)时,可能会造成服务端11的内部资源拥塞,若资源拥塞超过一定的条件时,可能会导致服务端宕机。为此,本申请实施例提供一种服务调用方法、装置、设备和存储介质,旨在解决上述存在的技术问题。
为了使本申请的目的、技术方案及优点更加清楚明白,通过下述实施例并结合附图,对本申请实施例中的技术方案进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
首先,先以执行主体为服务端为例进行介绍,具体的:
图2为本申请实施例提供的服务调用方法的一种流程示意图。本实施例涉及的是服务端如何处理客户端的服务调用的具体过程。如图2所示,该方法包括:
S101、接收客户端发送的服务请求。
具体的,所述服务请求用于调用服务端提供的目标服务。目标服务为服务端支持的任意一种服务。客户端可以通过SOME/IP提供的动态发现服务的机制来获知服务端能够提供的服务,即服务端主动以多播报文的形式在网络中广播自身支持的服务,这样,当客户端对服务端所支持的目标服务有调用需求时,客户端便可以以单播报文的形式向服务端发送服务请求,以调用服务端提供的目标服务。其中,服务端能够提供的服务可以是特定的计算处理服务,也可以是该服务端对应的外设设备产生的信息,比如速度传感器采集的信息、温度传感器采集的信息、车门开关信息、执行器信息或者图像采集装置采集的信息等。
当然,客户端通过SOME/IP提供的动态服务发现的机制来获知服务端能够提供的服务的方式也可以为:客户端主动查询服务端能够提供的可用服务,这样,客户端便可以通过发送服务请求来调用服务端提供的目标服务。
S102、当确定当前处于资源拥塞状态时,更新所述服务请求的总接收次数。
具体的,在车载系统初始化时,可以在服务端将每个服务调用过程所对应的服务请求的总接收次数初始化为0次,后续可以基于服务器对该服务请求的处理情况,对其进行动态更新,也就是说,为了能够有效处理客户端的服务请求,在客户端的一次服务调用过程中可以允许客户端发送多次服务请求。在接收到客户端发送的服务请求之后,服务端会判断自身当前是否处于资源拥塞状态,当确定自身当前处于资源拥塞状态时,服务端更新该服务请求的总接收次数。例如,针对客户端的某一次服务调用过程,假设该服务请求是客户端在该服务调用过程中首次发送的服务请求,在服务端确定自身当前处于资源拥塞状态的情况下,服务端将该服务请求的总接收次数由0次更新为1次。
可以理解的是,当服务端确定自身当前不处于资源拥塞状态时,服务端响应该服务请求,即执行目标服务,并在目标服务处理完毕之后,向客户端发送执行结果,从而完成本次服务调用过程。在完成本次服务调用过程后,服务端将本次服务调用过程中存储的该服务请求的总接收次数置零。
作为一种可选的实施方式,服务端确定自身当前处于资源拥塞状态的过程可以为:服务端获取自身当前的资源占用率,若该资源占用率超过预设的占用率门限,则确定自身当前处于资源拥塞状态。其中,该资源占用率可以为内存负载率,也可以为中央处理器(Central Processing Unit,CPU)负载率。在实际应用中,可以设置资源空闲标志位来表征自身资源的占用情况,若该资源占用率超过预设的占用率门限,则可以将资源空闲标志位进行置位,若该资源占用率未超过预设的占用率门限,则不对资源空闲标志位进行置位。这样,服务端可以根据资源空闲标志位的置位情况,来确定自身当前是否属于资源拥塞状态。
作为另一种可选的实施方式,服务端确定自身当前处于资源拥塞状态的过程还可以为:获取正在处理的服务的数量;当该数量达到预设的最大服务数量时,确定当前处于资源拥塞状态。
示例性的,服务端可以设置自身同时处理的最大服务数量,这样,当服务端获取当前处理的服务的数量已达到所设置的最大服务数量时,服务端确定自身当前处于拥塞状态。针对该种确定自身当前是否处于资源拥塞状态的方式,当服务端确定自身当前不处于资源拥塞状态,且同时发起的服务请求的客户端的数量为多个时,若服务端当前处理的服务的数量和同时发起的服务请求的数量之和超过最大服务数量,则服务端从同时发起的多个服务请求中任意选取部分客户端的服务请求进行处理,更新其它未被处理的客户端的服务请求的总接收次数。其中,所选取的服务请求的数量和当前处理的服务的数量之和小于或等于最大服务数量。
S103、当所述总接收次数小于或等于第一预设阈值时,根据所述总接收次数确定所述客户端对应的随机数,并将所述随机数发送给所述客户端。
具体的,第一预设阈值为在客户端的一次服务调用过程中,允许客户端能够发送的服务请求的最大次数。该随机数用于表示客户端发起下一次服务请求的时间。当该服务请求的总接收次数小于或等于第一预设阈值时,服务端根据该总接收次数确定该客户端对应的随机数。其中,该随机数可以为发送下一次服务请求的间隔时间,也可以为发送下一次服务请求的绝对时间。该随机数与该服务请求的总接收次数成正比关系,即总接收次数越大,所确定出的随机数越大,即客户端发送下一次服务请求的时间越晚。可选的,该随机数可以随着该总接收次数呈指数性变化。
可选的,当总接收次数大于第一预设阈值时,服务端拒绝处理该客户端的服务请求。同时,还可以向该客户端发送响应报文,该响应报文包括服务端无法处理服务请求的具体原因,该具体原因为当前资源拥塞,以指示客户端在预设时间段内不要向服务端发送服务请求。在接收到该响应报文后,客户端可以向其它资源空闲的服务端发起服务请求。
随着时间的推移,在服务端再次接收到该客户端发送的服务请求之后,服务端仍继续判断自身是否处于资源拥塞状态,若此时服务端不处于资源拥塞状态,则服务端可以响应该客户端的服务请求,并进行处理。若此时服务端仍处于资源拥塞状态,则服务端可以确定一个较大的随机数并发送给客户端,以指示客户端延迟更长的时间之后,再进行服务请求的发送,从而避免客户端在没有成功调用服务时,连续发送服务请求造成服务端资源的进一步拥塞。
本申请实施例提供的服务调用方法,在接收到客户端发送的服务请求之后,当确定当前处于资源拥塞状态时,更新该服务请求的总接收次数,当该服务请求的总接收次数小于或等于第一预设阈值时,根据服务请求的总接收次数确定该客户端对应的随机数,并将确定出的随机数发送给该客户端,其中,该随机数用于表示该客户端发起下一次服务请求的时间。在客户端调用服务端所提供的目标服务的过程中,在接收到客户端的服务请求之后,服务端能够判断自身当前是否处于资源拥塞状态,在确定自身当前处于资源拥塞状态的情况下,不进行目标服务的处理,并能够进一步指示客户端根据随机数发起下一次服务请求,以避免客户端连续发送服务请求造成资源的进一步拥塞,从而可以避免资源过度拥塞造成服务端的宕机。
在一个实施例中,在服务端当前处于资源拥塞状态的情况下,当同时发起服务请求的客户端的数量为多个时,针对每个目标客户端,服务端基于目标客户端所对应的服务请求的总接收次数,来为该目标客户端设置对应的随机数。为了进一步防止多个客户端在目标时刻同时发起下一次服务请求,在上述实施例的基础上,可选的,服务端可以为每个客户端设置不相同的随机数,并将设置的随机数发送给对应的客户端。这样,便可以避免在已处于资源拥塞状态的情况下,多个客户端在下一时刻同时发起服务请求造成资源的进一步拥塞,从而可以进一步避免资源过度拥塞造成服务端的宕机。
接下来,再以执行主体为客户端为例进行介绍,具体的:
图3为本申请实施例提供的服务调用方法的另一种流程示意图。本实施例涉及的是客户端如何进行服务调用的具体过程。如图3所示,该方法包括:
S201、向服务端发送服务请求。
具体的,所述服务请求用于调用所述服务端提供的目标服务。目标服务为服务端支持的任意一种服务。客户端可以通过SOME/IP提供的动态发现服务的机制来获知服务端能够提供的服务,即服务端主动以多播报文的形式在网络中广播自身支持的服务,这样,当客户端对服务端所支持的目标服务有调用需求时,客户端便可以以单播报文的形式向服务端发送服务请求,以调用服务端提供的目标服务。其中,服务端能够提供的服务可以是特定的计算处理服务,也可以是该服务端对应的外设设备产生的信息,比如速度传感器采集的信息、温度传感器采集的信息、车门开关信息、执行器信息或者图像采集装置采集的信息等。
当然,客户端通过SOME/IP提供的动态发现服务的机制来获知服务端能够提供的服务的方式也可以为:客户端主动查询服务端能够提供的可用服务,这样,客户端便可以通过发送服务请求来调用服务端提供的目标服务。
S202、接收所述服务端发送的随机数。
其中,所述随机数是在所述服务端确定当前处于资源拥塞状态,且更新后的所述服务请求的总接收次数小于或等于第一预设阈值时,基于更新后的所述服务请求的总接收次数所确定出的,且所述随机数用于表示所述客户端发起下一次服务请求的时间。在车载系统初始化时,可以在服务端将每个服务调用过程所对应的服务请求的总接收次数初始化为0次,后续可以基于服务器对该服务请求的处理情况,对其进行动态更新。
另外,该随机数可以为发送下一次服务请求的间隔时间,也可以为发送下一次服务请求的绝对时间。并且,该随机数与该服务请求的总接收次数成正比关系,即总接收次数越大,所确定出的随机数越大,即客户端发送下一次服务请求的时间越晚。可选的,该随机数可以随着该总接收次数呈指数性变化。
S203、根据所述随机数向服务端发送下一次服务请求。
可选的,当更新后的服务请求的总接收次数大于第一预设阈值时,服务端拒绝处理该客户端的服务请求。同时,客户端还可以接收服务端发送的响应报文,该响应报文包括服务端无法处理服务请求的具体原因,该具体原因为当前资源拥塞。在接收到该响应报文后,客户端可以向其它资源空闲的服务端发起服务请求。
本申请实施例提供的服务调用方法,向服务端发送服务请求,并接收服务端发送的随机数,根据该随机数向服务端发送下一次服务请求。在客户端调用服务端所提供的目标服务的过程中,在客户端向服务端发送服务请求之后,服务端能够判断自身当前是否处于资源拥塞状态,在确定自身当前处于资源拥塞状态的情况下,不进行目标服务的处理,并能够进一步确定该客户端对应的随机数,使得客户端在接收到随机数之后,能够根据随机数发起下一次服务请求,以避免客户端连续发送服务请求造成资源的进一步拥塞,从而可以避免资源过度拥塞造成服务端的宕机。
图4为本申请实施例提供的一种服务调用装置的结构示意图。如图4所示,该装置集成于车载系统中的服务端,所述车载系统包括所述服务端和客户端,所述服务端与客户端之间采用SOME/IP进行通信,该装置可以包括:接收模块20、更新模块21、第一确定模块22和发送模块23;
具体的,接收模块20用于接收客户端发送的服务请求,所述服务请求用于调用所述服务端提供的目标服务;
更新模块21用于当确定当前处于资源拥塞状态时,更新所述服务请求的总接收次数;
第一确定模块22用于当所述总接收次数小于或等于第一预设阈值时,根据所述总接收次数确定所述客户端对应的随机数,其中,所述随机数用于表示所述客户端发起下一次服务请求的时间;
发送模块23用于将所述随机数发送给所述客户端。
本申请实施例提供的服务调用装置,在接收到客户端发送的服务请求之后,当确定当前处于资源拥塞状态时,更新该服务请求的总接收次数,当该服务请求的总接收次数小于或等于第一预设阈值时,根据服务请求的总接收次数确定该客户端对应的随机数,并将确定出的随机数发送给该客户端,其中,该随机数用于表示该客户端发起下一次服务请求的时间。在客户端调用服务端所提供的目标服务的过程中,在接收到客户端的服务请求之后,服务端能够判断自身当前是否处于资源拥塞状态,在确定自身当前处于资源拥塞状态的情况下,不进行目标服务的处理,并能够进一步指示客户端根据随机数发起下一次服务请求,以避免客户端连续发送服务请求造成资源的进一步拥塞,从而可以避免资源过度拥塞造成服务端的宕机。
在上述实施例的基础上,可选的,所述随机数随着所述总接收次数指数性变化。
在上述实施例的基础上,可选的,还包括:处理模块;
具体的,处理模块用于当所述总接收次数大于第一预设阈值时,拒绝处理所述客户端的服务请求。
在上述实施例的基础上,可选的,还包括:第二确定模块;
具体的,第二确定模块用于确定当前处于资源拥塞状态;
对应的,第二确定模块具体用于获取正在处理的服务的数量;当所述数量达到预设的最大服务数量时,确定当前处于资源拥塞状态。
在上述实施例的基础上,可选的,当所述客户端的数量为多个时,每个客户端对应的随机数不相同。
图5为本申请实施例提供的另一种服务调用装置的结构示意图。如图5所示,该装置集成于车载系统中的客户端,所述车载系统包括服务端和客户端,所述服务端与客户端之间采用SOME/IP进行通信,该装置可以包括:发送模块30和接收模块31;
具体的,发送模块30用于向服务端发送服务请求,所述服务请求用于调用所述服务端提供的目标服务;
接收模块31用于接收所述服务端发送的随机数,其中,所述随机数是在所述服务端确定当前处于资源拥塞状态,且更新后的所述服务请求的总接收次数小于或等于第一预设阈值时,基于所述总接收次数所确定出的,且所述随机数用于表示所述客户端发起下一次服务请求的时间;
发送模块30还用于根据所述随机数向服务端发送下一次服务请求。
本申请实施例提供的服务调用装置,在接收到客户端发送的服务请求之后,当确定当前处于资源拥塞状态时,更新该服务请求的总接收次数,当该服务请求的总接收次数小于或等于第一预设阈值时,根据服务请求的总接收次数确定该客户端对应的随机数,并将确定出的随机数发送给该客户端,其中,该随机数用于表示该客户端发起下一次服务请求的时间。在客户端调用服务端所提供的目标服务的过程中,在接收到客户端的服务请求之后,服务端能够判断自身当前是否处于资源拥塞状态,在确定自身当前处于资源拥塞状态的情况下,不进行目标服务的处理,并能够进一步指示客户端根据随机数发起下一次服务请求,以避免客户端连续发送服务请求造成资源的进一步拥塞,从而可以避免资源过度拥塞造成服务端的宕机。
在一个实施例中,提供了一种计算机设备,其内部结构图可以如图6所示。该计算机设备可以为客户端,也可以为服务端。该计算机设备包括通过系统总线连接的处理器、存储器。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器用于存储计算机程序。该计算机程序被处理器执行时以实现一种服务调用方法。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种服务端,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
接收客户端发送的服务请求,所述服务请求用于调用所述服务端提供的目标服务;
当确定当前处于资源拥塞状态时,更新所述服务请求的总接收次数;
当所述总接收次数小于或等于第一预设阈值时,根据所述总接收次数确定所述客户端对应的随机数,并将所述随机数发送给所述客户端,其中,所述随机数用于表示所述客户端发起下一次服务请求的时间。
可选的,所述随机数随着所述总接收次数指数性变化。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:当所述总接收次数大于第一预设阈值时,拒绝处理所述客户端的服务请求。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取正在处理的服务的数量;当所述数量达到预设的最大服务数量时,确定当前处于资源拥塞状态。
可选的,当所述客户端的数量为多个时,每个客户端对应的随机数不相同。
在一个实施例中,提供了一种客户端,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
向服务端发送服务请求,所述服务请求用于调用所述服务端提供的目标服务;
接收所述服务端发送的随机数,其中,所述随机数是在所述服务端确定当前处于资源拥塞状态,且更新后的所述服务请求的总接收次数小于或等于第一预设阈值时,基于所述总接收次数所确定出的,且所述随机数用于表示所述客户端发起下一次服务请求的时间;
根据所述随机数向服务端发送下一次服务请求。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
接收客户端发送的服务请求,所述服务请求用于调用所述服务端提供的目标服务;
当确定当前处于资源拥塞状态时,更新所述服务请求的总接收次数;
当所述总接收次数小于或等于第一预设阈值时,根据所述总接收次数确定所述客户端对应的随机数,并将所述随机数发送给所述客户端,其中,所述随机数用于表示所述客户端发起下一次服务请求的时间。
可选的,所述随机数随着所述总接收次数指数性变化。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:当所述总接收次数大于第一预设阈值时,拒绝处理所述客户端的服务请求。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取正在处理的服务的数量;当所述数量达到预设的最大服务数量时,确定当前处于资源拥塞状态。
可选的,当所述客户端的数量为多个时,每个客户端对应的随机数不相同。
在一个实施例中,还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
向服务端发送服务请求,所述服务请求用于调用所述服务端提供的目标服务;
接收所述服务端发送的随机数,其中,所述随机数是在所述服务端确定当前处于资源拥塞状态,且更新后的所述服务请求的总接收次数小于或等于第一预设阈值时,基于所述总接收次数所确定出的,且所述随机数用于表示所述客户端发起下一次服务请求的时间;
根据所述随机数向服务端发送下一次服务请求。
上述实施例中提供的服务调用装置、设备以及存储介质可执行本申请任意实施例所提供的服务调用方法,具备执行该方法相应的功能模块和有益效果。未在上述实施例中详尽描述的技术细节,可参见本申请任意实施例所提供的服务调用方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(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)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种服务调用方法,其特征在于,应用于车载系统中的服务端,所述车载系统包括所述服务端和客户端,所述服务端与客户端之间采用灵活的、基于IP协议的面向服务的中间件SOME/IP进行通信,所述方法包括:
接收客户端发送的服务请求,所述服务请求用于调用所述服务端提供的目标服务;
当确定当前处于资源拥塞状态时,更新所述服务请求的总接收次数;
当所述总接收次数小于或等于第一预设阈值时,根据所述总接收次数确定所述客户端对应的随机数,并将所述随机数发送给所述客户端,其中,所述随机数用于表示所述客户端发起下一次服务请求的时间。
2.根据权利要求1所述的方法,其特征在于,所述随机数随着所述总接收次数指数性变化。
3.根据权利要求2所述的方法,其特征在于,还包括:
当所述总接收次数大于第一预设阈值时,拒绝处理所述客户端的服务请求。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述确定当前处于资源拥塞状态,包括:
获取正在处理的服务的数量;
当所述数量达到预设的最大服务数量时,确定当前处于资源拥塞状态。
5.根据权利要求1所述的方法,其特征在于,当所述客户端的数量为多个时,每个客户端对应的随机数不相同。
6.一种基于服务调用方法,其特征在于,应用于车载系统中的客户端,所述车载系统包括服务端和客户端,所述服务端与客户端之间采用SOME/IP进行通信,所述方法包括:
向服务端发送服务请求,所述服务请求用于调用所述服务端提供的目标服务;
接收所述服务端发送的随机数,其中,所述随机数是在所述服务端确定当前处于资源拥塞状态,且更新后的所述服务请求的总接收次数小于或等于第一预设阈值时,基于所述总接收次数所确定出的,且所述随机数用于表示所述客户端发起下一次服务请求的时间;
根据所述随机数向服务端发送下一次服务请求。
7.一种服务调用装置,其特征在于,集成于车载系统中的服务端,所述车载系统包括所述服务端和客户端,所述服务端与客户端之间采用SOME/IP进行通信,所述装置包括:
接收模块,用于接收客户端发送的服务请求,所述服务请求用于调用所述服务端提供的目标服务;
更新模块,用于当确定当前处于资源拥塞状态时,更新所述服务请求的总接收次数;
第一确定模块,用于当所述总接收次数小于或等于第一预设阈值时,根据所述总接收次数确定所述客户端对应的随机数,其中,所述随机数用于表示所述客户端发起下一次服务请求的时间;
发送模块,用于将所述随机数发送给所述客户端。
8.一种服务调用装置,其特征在于,集成于车载系统中的客户端,所述车载系统包括服务端和客户端,所述服务端与客户端之间采用SOME/IP进行通信,所述装置包括:
发送模块,用于向服务端发送服务请求,所述服务请求用于调用所述服务端提供的目标服务;
接收模块,用于接收所述服务端发送的随机数,其中,所述随机数是在所述服务端确定当前处于资源拥塞状态,且更新后的所述服务请求的总接收次数小于或等于第一预设阈值时,基于所述总接收次数所确定出的,且所述随机数用于表示所述客户端发起下一次服务请求的时间;
发送模块,还用于根据所述随机数向服务端发送下一次服务请求。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述方法的步骤。
CN202010305198.XA 2020-04-17 2020-04-17 服务调用方法、装置、设备和存储介质 Active CN111506443B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010305198.XA CN111506443B (zh) 2020-04-17 2020-04-17 服务调用方法、装置、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010305198.XA CN111506443B (zh) 2020-04-17 2020-04-17 服务调用方法、装置、设备和存储介质

Publications (2)

Publication Number Publication Date
CN111506443A true CN111506443A (zh) 2020-08-07
CN111506443B CN111506443B (zh) 2023-05-26

Family

ID=71864064

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010305198.XA Active CN111506443B (zh) 2020-04-17 2020-04-17 服务调用方法、装置、设备和存储介质

Country Status (1)

Country Link
CN (1) CN111506443B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113660171A (zh) * 2021-08-10 2021-11-16 建信金融科技有限责任公司 终端数据采集的流量控制方法及系统、服务端和客户端
CN113778347A (zh) * 2021-11-15 2021-12-10 广东睿江云计算股份有限公司 一种ceph系统读写质量优化方法及服务端
CN115051956A (zh) * 2022-06-30 2022-09-13 北京达佳互联信息技术有限公司 一种连接建立方法、装置、设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8019811B1 (en) * 2006-04-06 2011-09-13 Versata Development Group, Inc. Application state server-side cache for a state-based client-server application
US20120030326A1 (en) * 2010-07-30 2012-02-02 Brendan Cassidy Method of Servicing Requests to Manage Network Congestion and Server Load and Server Thereof
US20140169240A1 (en) * 2012-12-17 2014-06-19 Huawei Technologies Co., Ltd Access Control Method, User Equipment, Access Network, and Communications System
CN109062707A (zh) * 2018-06-29 2018-12-21 Oppo(重庆)智能科技有限公司 电子装置及其限制进程间通信的方法、存储介质
CN109388509A (zh) * 2018-10-22 2019-02-26 上海朔羡网络科技有限公司 消息处理系统、方法、计算机设备及可读存储介质
CN109450983A (zh) * 2018-10-16 2019-03-08 北京趣拿软件科技有限公司 信息的处理方法和装置
CN110309002A (zh) * 2019-05-29 2019-10-08 北京达佳互联信息技术有限公司 消息处理方法、装置、电子设备及存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8019811B1 (en) * 2006-04-06 2011-09-13 Versata Development Group, Inc. Application state server-side cache for a state-based client-server application
US20120030326A1 (en) * 2010-07-30 2012-02-02 Brendan Cassidy Method of Servicing Requests to Manage Network Congestion and Server Load and Server Thereof
US20140169240A1 (en) * 2012-12-17 2014-06-19 Huawei Technologies Co., Ltd Access Control Method, User Equipment, Access Network, and Communications System
CN109062707A (zh) * 2018-06-29 2018-12-21 Oppo(重庆)智能科技有限公司 电子装置及其限制进程间通信的方法、存储介质
CN109450983A (zh) * 2018-10-16 2019-03-08 北京趣拿软件科技有限公司 信息的处理方法和装置
CN109388509A (zh) * 2018-10-22 2019-02-26 上海朔羡网络科技有限公司 消息处理系统、方法、计算机设备及可读存储介质
CN110309002A (zh) * 2019-05-29 2019-10-08 北京达佳互联信息技术有限公司 消息处理方法、装置、电子设备及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JR SEYLER 等: ""FormalanalysisofthestartupdelayofSOME/IP service discovery"" *
陈秀凤: ""新能源汽车监控平台的设计与实现"" *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113660171A (zh) * 2021-08-10 2021-11-16 建信金融科技有限责任公司 终端数据采集的流量控制方法及系统、服务端和客户端
CN113660171B (zh) * 2021-08-10 2023-05-26 建信金融科技有限责任公司 终端数据采集的流量控制方法及系统、服务端和客户端
CN113778347A (zh) * 2021-11-15 2021-12-10 广东睿江云计算股份有限公司 一种ceph系统读写质量优化方法及服务端
CN115051956A (zh) * 2022-06-30 2022-09-13 北京达佳互联信息技术有限公司 一种连接建立方法、装置、设备及存储介质
CN115051956B (zh) * 2022-06-30 2023-09-26 北京达佳互联信息技术有限公司 一种连接建立方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN111506443B (zh) 2023-05-26

Similar Documents

Publication Publication Date Title
CN111506443A (zh) 服务调用方法、装置、设备和存储介质
US20210337046A1 (en) Intelligent scheduling method, terminal device, edge node cluster and intelligent scheduling system
CN110868465A (zh) 一种容器云的负载均衡系统及方法
CN110958281B (zh) 基于物联网的数据传输方法及通信装置
CN111355779B (zh) 基于服务的车联网任务卸载方法及其卸载装置
CN111083718A (zh) 一种会话管理方法、网络功能及网络系统
CN105335231B (zh) 一种服务端线程的动态分配方法和设备
US20070016673A1 (en) Information exchange system and management server, terminal unit, and method for reducing network load used in the same
EP3554037A1 (en) Downlink media transmission control method and related device
CN110995617B (zh) 基于mqtt的数据报送方法、装置、计算机设备和存储介质
CN110601980B (zh) 一种车载终端的通信方法、系统及存储介质
CN114338063A (zh) 消息队列系统、业务处理方法及计算机可读存储介质
CN112822300B (zh) 基于rdma的数据传输方法、装置及电子设备
CN108429703B (zh) Dhcp客户端上线方法及装置
CN109413117B (zh) 分布式数据计算方法、装置、服务器及计算机存储介质
CN113141390B (zh) Netconf通道管理方法及装置
US10154414B2 (en) Resource allocation
CN113596105B (zh) 内容的获取方法、边缘节点及计算机可读存储介质
US20070038746A1 (en) Event management methods and systems
CN113628632A (zh) 语音降噪方法、装置、设备及存储介质
CN114116219A (zh) 一种数据分布均衡方法、系统及电子设备
CN115225706B (zh) 数据传输方法、装置、车辆以及存储介质
CN111314492A (zh) 空调器及其数据传输方法和计算机可读存储介质
CN114268615B (zh) 基于tcp连接的业务处理方法和系统
CN114760362B (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