原文: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-2025 CODEPRJ.COM