当前位置: 首页 > Java
  • 前天碰到一个有点怪异的case,应用运行一段时间后,RT会开始突然下降,只要重启就恢复。原因应用会采用groovy来加载一些脚本,在这些脚本修改后会动态更新,而且更新的是比较频繁的,导致Code Cache 增加,以至于满了,另一方面是Code Cache是不会回收的,所以会累积的越来越多,导致性能下降。

    阅读全文
    Java 977 人阅读 抢沙发 , , , , , ,
  • 32 bit的系统上,例如linux单个进程最多用3g的空间,在3g这种heap大小的情况下,cms gc压根就没任何优势,ParallelOldGC就OK了。64 bit其实也需要看heap size多大,我的建议是在可接受的fgc暂停时间的情况下,都不应该选cms gc,cms gc实现的复杂度(这和它的目标有关系)决定了它的稳定性很难和Parallel GC去比,另外cms gc的碎片问题绝对是让人头疼的问题。

    阅读全文
    Java 548 人阅读 抢沙发 , , , , ,
  • constant类型的static final变量,在编译为字节码阶段就会直接被替换为对应的值,这里有个小小的坑是可能会碰到的,就是编译的时候只编译了对应的static final变量的代码,但没重编译相应引用的代码,那就悲催了,运行的时候还会是之前的值。

    阅读全文
    Java 393 人阅读 抢沙发 , , ,