最近出现一个线上问题,就是导出之后内存使用率激增,并且迟迟释放不掉,导致服务挂掉。首先声明一下出现问题的场景
系统的订单导出,订单字段较多,数据量较大。
产生这个问题的时候第一时间去看了代码
orderService.listOrders(objectToMaps, uid, request, startDate, endDate, page, size, permission, organizationNodeIds,true);
if (objectToMaps.isEmpty()) {
break;
}
Workbook localWorkbook = null;
if (exportFile.exists()) {
try {
localWorkbook = ExcelUtil.load(new FileInputStream(exportFile));
} catch (InvalidFormatException e) {
log.error("error:{}", e);
} catch (IOException e) {
log.error("read excel failed, error:{}", e);
}
}
HSSFWorkbook wo