Dubbo的filter中使用ThreadLocal引发的坑
在filter中使用ThreadLocal要特别注意一些问题,首先ThreadLocal是跟着线程走的,而不管是dubbo或者其他的rpc框架或者Springmvc都有个特点:使用的是线程池模型,当线程执行任务结束之后会回到线程池,这时如果在回到线程池之前ThreadLocal没有被清理,当下一次请求拿到这个线程的时候还能读取到之前没有被清理的ThreadLocal的数据,这样显然不是我们想要的结果了。处理方式以dubbo的filter为例://在服务端的filter中invoker.invoke(in
原创
2021-01-14 16:59:08 ·
1208 阅读 ·
3 评论