记log4j打印异常日志导致线程阻塞的问题排查
最近线上一个服务偶发单机接口耗时飙升的现象,伴随着内存使用增长并出现吃swap的情况,16核的系统load也飙升到50以上,IOUtil接近
最近项目中在使用javacv时在加载jar中的so共享链接库时出现了StackOverFlowError,最终原因是由于jvm启动时指定的最大栈内存Xss的大小不够,从而导致线程栈溢出。
很多时候怀疑线上运行的代码有问题但又苦于日志打的不够详细的时候,BTrace作为基于ASM实现的代码动态跟踪工具能很快排上用场,在不需要重启java进程的情况下,通过脚本动态切入到嫌疑代码块,快速定位问题。