记录dubbo源码阅读过程中,看到的有趣的问题,以后有时间,在慢慢梳理
issuse#619
代码: org/apache/dubbo/rpc/RpcResult.java
1 | Override |
原因分析:
简单来说:
1 | JVM 为了性能会做优化,如果频繁地抛出某个异常,会重新编译,不再打印异常堆栈。 解决这个问题也比较简单,如果不想每次都去查前面的 log 去看堆栈, 只要在启动参数加上 -XX:-OmitStackTraceInFastThrow,就可以禁用该优化,强制打印异常堆栈。 这样可能会导致,log 文件过大,不过产线上今天之前的 log 文件都会被压缩,所以感觉问题也不大。 |