佛山做外贸网站咨询,网站引导页面设计,北京网站设计套餐,苏州建设参考#xff1a; 集群模式
实践
集群流控规则
其中 用一个专门的 ClusterFlowConfig 代表集群限流相关配置项#xff0c;以与现有规则配置项分开#xff1a;
// 全局唯一的规则 ID#xff0c;由集群限流管控端分配.
private Long flowId;// 阈值模式#xff0c;默认 集群模式
实践
集群流控规则
其中 用一个专门的 ClusterFlowConfig 代表集群限流相关配置项以与现有规则配置项分开
// 全局唯一的规则 ID由集群限流管控端分配.
private Long flowId;// 阈值模式默认0为单机均摊1 为全局阈值.
private int thresholdType ClusterRuleConstant.FLOW_THRESHOLD_AVG_LOCAL;private int strategy ClusterRuleConstant.FLOW_CLUSTER_STRATEGY_NORMAL;// 在 client 连接失败或通信失败时是否退化到本地的限流模式
private boolean fallbackToLocalWhenFail true;解释 flowId 代表全局唯一的规则 IDSentinel 集群限流服务端通过此 ID 来区分各个规则因此务必保持全局唯一。一般 flowId 由统一的管控端进行分配或写入至 DB 时生成。 thresholdType 代表集群限流阈值模式。其中单机均摊模式下配置的阈值等同于单机能够承受的限额token server 会根据客户端对应的 namespace默认为 project.name 定义的应用名下的连接数来计算总的阈值比如独立模式下有 3 个 client 连接到了 token server然后配的单机均摊阈值为 10则计算出的集群总量就为 30而全局模式下配置的阈值等同于整个集群的总阈值。
Q: 集群流控规则中“单机均摊”阈值模式是什么意思
A: 单机均摊模式下配置的阈值等同于单机能够承受的平均限额。Token Server 会根据客户端对应的 namespace默认为 project.name 定义的应用名下的连接数来计算总的阈值比如独立模式下有 3 个 client 连接到了 token server然后配的单机均摊阈值为 10则计算出的集群总量就为 30。单机均摊阈值仅用于计算总体阈值不是说每台机器一定要控制在均摊阈值上。配置方式若希望某个资源限制集群总量为 Q服务实例为 N则可以配置单机均摊阈值为 Q / N。
单机均摊阈值 配置为10 则总体阀值为 10*N(N为机器数量)