防止雪崩的方法有哪些
2024-07-02 20:18:29
好评回答
1、频率限制:在接口入口处,甚至系统的入口处应该设置频率限制,为接口设置单位时间内最大的处理量,同时记录单位时间内已经处理的请求量,当请求量大于最大处理量的时候,直接拒绝外部的请求,保护内部系统的心脏承受能力。
2、超时丢弃:这里的超时是指请求从进入接收缓存区到接口从缓存区取出请求准备处理的时间超过了一定阈值(比如前端超时时间)。如果发生超时,则说明就算处理了取出的数据,前端也已经超时了,后端接口做的就是无用功,倒不如就在这里一次性丢弃。这里的缓存区指的是内核缓存区。
3、修改socket缓存区大小:根据接口处理能力和前端超时时间来设置socket缓存区大小,这样的话利用socket缓存区充当队列,超过队列长度的请求就直接被丢弃了,这样也可以防止系统雪崩。只是对用户不那么友好。有人给出的参考计算式:缓冲区大小=(前端超时时间-请求处理时间-前端网络延时*2)*(每秒最大处理请求数/1000)*请求包大小。
声明:本网站信息来自网络,所有数据仅供参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:abc5566@foxmail.com。
猜你喜欢
-
依偎的读音
阅读量:77 -
周晔读音
阅读量:17 -
重耳读音
阅读量:61 -
跻身读音
阅读量:45 -
扒手读音
阅读量:12 -
太行山读音
阅读量:54 -
煜的读音
阅读量:9 -
百的读音
阅读量:54 -
小米手机怎么解锁数字密码
阅读量:52 -
女性常吃亚麻籽的好处
阅读量:18