限流组件sentinel疑问

1. 限流规则刷新旧的规则怎么处理?

sentinel所有限流规则都会保存在FlowRuleManager类中的一个Map类型的静态变量里面,并且每当更新规则都会先清理之前的所有规则即清理Map里面的数据再把新规则写入。并不像我之前想的一样可以进行单个规则进行修改或者插入。所以当规则有变时只能进行所有规则重新写入。

2. 一个资源有多条规则怎么生效?

当一个资源有多个规则时,多条规则存在与关系,即逐一进行检查,全部通过才算通过。

3. 资源的数量和调用来源的数量有限制吗?

每个资源对应一条处理链(责任链模式),处理链限制了6000条,所以资源的数量不能超过6000个。调用来源的数量来源的数量没有限制,但是官方提醒 origin 数量不能太多,否则会导致内存暴涨。大概是因为每个调用来源均需要单独统计和token检查的缘故。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章