限流 面试

~码铃薯~ / 2025-02-10 / 原文

如果使用sentinel进行限流:我们可以通过QPS或者并发线程数,一般在项目中我们推荐使用QPS来进行限流。
如果使用sentinel进行熔断:我们可以根据慢调用比例、异常比例、异常数来进行熔断。

网关我们可以采用信号量隔离,业务层我们可以使用线程池隔离的策略。

说一下令牌桶算法(面试有被问到)

核心思想:

存在一个固定大小的桶来存放token。

约定用户必须拿到token才能进行后续处理。

每隔一段时间就往桶里放k个新的 token。

如果桶里没有token就拒绝服务。

当然如果对于没有来得及处理的任务,我们也可以先将其放入到队列当中。