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

nitouge · 2024-10-23 11:08:09 · 36 次点击
线程池设置 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 去做

目前不知道这个怎么升级比较好
举报· 36 次点击
登录 注册 站外分享
1 条回复  
RandomJoke 小成 2024-10-23 12:45:41
我们是自己维护一个 contextHolder 结合 resilience4j.core.ContextPropagator 做上下文管理
返回顶部