The invention discloses a method for controlling the RPC request, involving the Internet broadcast domain, which comprises the following steps: monitoring the running state of internal service process; loading and dynamic adjustment of load control strategy according to the internal condition; the service process meets the load control strategy, make corresponding to the receiving RPC request or reject operation. The method of RPC request control provided by the invention can dynamically adjust the strategy according to the actual situation, make full use of server resources and avoid wasting server resources.
【技术实现步骤摘要】
一种RPC请求控制的方法、存储介质、电子设备和系统
本专利技术涉及互联网直播领域,具体涉及一种RPC请求控制的方法、存储介质、电子设备和系统。
技术介绍
在实现高并发的后台服务时,有效判断服务内部状态,以及高效实现对RPC请求的响应是决定服务性能的关键。但是,在高并发的后台服务中,经常会出现请求量激增的情况,例如有些活动的抢答阶段,使得请求量超出服务器处理极限,从而导致服务器宕机。因此,在请求量超出服务处理极限时,要保证处理能力以内的请求得到处理,同时主动拒绝超出处理能力的请求,合理利用服务器资源,以避免服务器宕机。为实现上述功能,现有技术采用的方法是:设定一个请求上限的计数,当每秒接收到的请求达到某个上限时,停止接收请求,并进行拒绝操作,由于在请求接入的同时,也会有请求完成,需要每秒重置该计数器。通常每个请求占用的服务器资源会有所不同,使用请求上限计数的方法,对服务内部状态管理非常粗糙,无法动态根据实际的情况决定当前是否要接收请求,因而无法将服务器资源的利用率达到最大化,造成部分服务器资源的浪费。
技术实现思路
针对现有技术中存在的缺陷,本专利技术的目的在于提供一种RPC请求控制的方法,可以根据实际情况动态调整策略,充分利用服务器资源,避免浪费服务器资源。为达到以上目的,本专利技术采取的技术方案是:一种RPC请求控制的方法,包括步骤:监控服务进程内部运行状态;载入并动态调整负载控制策略;根据所述服务进程内部运行状态是否满足所述负载控制策略,对RPC请求做出相应的接收或拒绝操作。在上述技术方案的基础上,所述监控服务进程内部运行状态具体包括步骤如下:根据远程过程 ...
【技术保护点】
一种RPC请求控制的方法,其特征在于,包括步骤:监控服务进程内部运行状态;载入并动态调整负载控制策略;根据所述服务进程内部运行状态是否满足所述负载控制策略,对远程过程调用RPC请求做出相应的接收或拒绝操作。
【技术特征摘要】
1.一种RPC请求控制的方法,其特征在于,包括步骤:监控服务进程内部运行状态;载入并动态调整负载控制策略;根据所述服务进程内部运行状态是否满足所述负载控制策略,对远程过程调用RPC请求做出相应的接收或拒绝操作。2.如权利要求1所述的RPC请求控制的方法,其特征在于,所述监控服务进程内部运行状态具体包括步骤如下:根据远程过程调用RPC请求的不同类别,分别构建不同的处理类,并构造每个处理类的枚举类型、构造函数和析构函数,所述枚举类型用于表示不同类别的RPC请求运行时的状态,所述构造函数用于为所述处理类分配空间,所述析构函数用于释放所述处理类的分配空间;构建一变量,所述变量用于保存全局运行时每个处理类中逻辑单元的计数;构建单例类,在所述单例类中创建构造方法和析构方法,所述构造方法用于增加所述变量中每个处理类中逻辑单元的计数,所述析构方法用于减少所述变量中每个处理类中逻辑单元的计数;当有RPC请求进入时,在构造函数中调用所述构造方法,增加对应处理类中逻辑单元的计数,当服务进程内部RPC请求完成时,在析构函数中调用所述析构方法,减少对应处理类中逻辑单元的计数;根据每个处理类中逻辑单元的计数和枚举类型,获得服务进程内部运行状态。3.如权利要求1所述的RPC请求控制的方法,其特征在于,根据所述负载控制策略和监控到的服务进程内部运行状态,对RPC请求做出相应的接收或拒绝操作,包括如下:构建负载控制实例,并在所述负载控制实例中创建判断RPC请求接受或拒绝的方法;当有RPC请求时,调用所述负载控制实例中的方法,根据所述服务进程内部运行状态是否满足所述负载控制策略,判断是否接收所述RPC请求;若接受所述RPC请求,则允许所述RPC请求进入到正常的请求处理流程;若拒绝所述RPC请求,则向用户返回错误码。4.如权利要求1所述的RPC请求控制的方法,其特征在于:所述负载控制策略为一个逻辑链,所述逻辑链包含一系列顺次排列的逻辑。5.一种存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现上述权利要求1至4中任一项所述方法的步骤。6.一种电子设备,包括存储器、处理器及存储在所述存储器上并在所述处理器上运行的计算机程序,其特征在于...
【专利技术属性】
技术研发人员:刘吉林,陈少杰,张文明,
申请(专利权)人:武汉斗鱼网络科技有限公司,
类型:发明
国别省市:湖北,42
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。