V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
nitouge
V2EX  ›  程序员

Spring 异步线程池传递线程上下文

  •  
  •   nitouge · 34 天前 · 1203 次点击
    这是一个创建于 34 天前的主题,其中的信息可能已经有所发展或是发生改变。

    线程池设置 TaskDecorator(),通过 RequestContextHolder 设置多线程上下文,在 Feign 请求拦截器获取信息的时候错误 Request facade recyceld ,最终在 Tomcat 的 Connector 类 public static final boolean RECYCLE_FACADES = Boolean.parseBoolean(System.getProperty("org.apache.catalina.connector.RECYCLE_FACADES", "true")); 在 9.0.8x 默认是 false,请求默认复用,不回收,现在升级到了 9.0.9x 版本,默认是 true

    1.通过设置系统属性 org.apache.catalina.connector.RECYCLE_FACADES=false 2.通过 TransmittableThreadLocal 去做

    目前不知道这个怎么升级比较好

    2 条回复    2024-10-24 09:20:25 +08:00
    RandomJoke
        1
    RandomJoke  
       34 天前
    我们是自己维护一个 contextHolder 结合 resilience4j.core.ContextPropagator 做上下文管理
    love2075904
        2
    love2075904  
       33 天前
    我们目前使用的 TransmittableThreadLocal ,但是也有一些不可控的怪问题。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5505 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 07:17 · PVG 15:17 · LAX 23:17 · JFK 02:17
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.