Java内存优化之POI Excel(三)

在上一篇工作记录中提到了Excel内存优化策略,其实很失败。很多东西好像自己以为想当然,其实不是。以为我将Excel分成5000行一个文件,既可以优化内存,又可以方便阅读,直到有一天我看到结算组是怎么使用呢?打开每个Excel,复制粘贴到一个文件里,当看到他们打开一个Zip,里面有11个Excel,我都不忍直视了……其实做这种优化比较耗时间,效果也不是很容易看到,可能做了好几天这套方案,结果并没有收益,一转眼又要周五了,还好这次有效果。

让过程更直观

上篇博客提到了JConsole,可以让我们更加直观的看到任务执行过程中的各种信息,比如内存(Eden、Old、Survivor),线程数,gc过程和次数等。如下

大概截取了一个任务执行的所有过程,可以看出系统初始化内存基本上稳定在200-300m,然后猛然增加了200+m,这就是从数据库撸出来的近50000条数据,

我知道是不会有人点的,但万一有人想不开呢!