原文:ThreadLocal操作不当引起的bug

背景 项目是简单的web项目,多用户登陆的商家管理系统,使用ThreadLocal缓存登陆用户的信息 duid,用户唯一id bug描述 在测试环境多次登陆后,调用查询接口查出的数据时有时无 排查过程 通过商户id和用户的duid给日志打上唯一标识 测试环境日志太多了 ,以便grep,排查后发现数据和日志还是时有时无,在排查中发现duid有时对有时错,于是duid便成了突破口。顺藤摸瓜,找到了拦截 ...

2021-11-03 17:28 0 104 推荐指数:

查看详情

ThreadLocal可能引起的内存泄露

  threadlocal里面使用了一个存在弱引用的map,当释放掉threadlocal的强引用以后,map里面的value却没有被回收.而这块value永远不会被访问到了. 所以存在着内存泄露. 最好的做法是将调用threadlocal的remove方法.   在threadlocal ...

Sat Jan 18 07:14:00 CST 2014 14 41027
配置不当引起的Hystrix超时问题排查

最近发现一些服务检查报错 ,异常如下: 根据内容显示明显是 HystrixTimeoutException 请求超时了,但是根据全局记录的整个请求的时间,如下图所示也才3s。 ...

Mon Jan 17 19:35:00 CST 2022 0 3015
FileObserver引起bug

前言 最近做文件下载缓存的时候,有这么一个需求,缓存文件有一个最大值限制,如果文件下载下来要超过缓存的最大值,那么就不进行下载. 我的方案 使用固定核心线程数的线程池执行下载任务 每次 ...

Sat Dec 01 03:55:00 CST 2018 0 904
ThreadLocal引起的一次线上事故

> 线上用户存储数据后查看提示无权限 前言 不知道什么时候年轻的我曾一度认为Java没啥难度,没有我实现不了的需求,没有我解不了的bug 直到我遇到至今难忘的一个bug 。 线上用户存储数据后查看提示无权限 初次定位 明明自己添加的数据,为什么提示 ...

Fri May 14 16:48:00 CST 2021 3 766
SecureRandom使用不当引起的线程阻塞

问题起因 一个对外提供的接口,中间需要调用第三方接口,涉及到三方机密问题,其中使用到了安全随机数之前的写法如下 被solar扫面到不符合规范于是就改成下面的: bug现象 之前所有调用对外暴漏的服务的时候都是正常的,第二天莫名其妙的报错 ...

Mon Jul 20 21:28:00 CST 2020 0 773
popen使用不当引起产生僵尸进程

FILE * popen(const char * command, const char * type)popen函数会通过fork产生子进程,然后从子进程中调用/bin/sh -c执行参数comm ...

Thu Dec 08 01:02:00 CST 2016 0 1740
条件变量使用不当引起的虚假唤醒

  说到条件变量,首先说下互斥锁,互斥锁是最一种同步形式,用于保护临界区,以保证任何时刻只有一个线程在执行其中的代码(假设互斥锁由多个线程共享),来保证共享数据的完整性,上锁过程如下图; ...

Thu Feb 28 09:48:00 CST 2019 0 804
引起bug~

编程经验:一个由<Windows.h>引起bug~ 文章一 转自:http://www.mamicode.com/info-detail-506772.html 1. 问题描述 最近遇到一个莫名其妙的bug,上网查找,没有找到正确的解决办法,难道大家都没遇到?于是我说一说 ...

Tue Nov 17 22:48:00 CST 2015 0 2524
 
粤ICP备18138465号  © 2018-2026 CODEPRJ.COM