Sentinel
Sentinel copied to clipboard
在非web环境下自定义了limitApp来源,怎么设置origin的值?
使用 @SentinelResource 注解进行限流、熔断,同时规则里面设置了 limitApp 属性,怎么能更改 origin 的值,在com.alibaba.csp.sentinel.CtSph#entryWithPriority(com.alibaba.csp.sentinel.slotchain.ResourceWrapper, int, boolean, java.lang.Object...)方法里面通过InternalContextUtil.internalEnter(Constants.CONTEXT_DEFAULT_NAME)设置Context对象的属性,但是 origin 的值为空字符串,限流的逻辑在com.alibaba.csp.sentinel.slots.block.flow.FlowRuleChecker#selectNodeByRequesterAndStrategy方法里面比较 limitApp 和 origin 的值,两者不一致,导致限流失败。
凑巧看到,我的实现方案
