java append 大文件时,如何有效控制内存占用?

衣舞晨风
博客专家认证
2019-01-06 11:27:23
请教一个问题:
我现在需要用远端elasticsearch集群,按照一定搜索条件,下载内容到文本中,但当需要下载的内容很多时,会出现内存占用很高的问题,尝试过的方式有以下几种,均会出现内存占用过高的问题。
1、 commons-io FileUtils.writeString
2、new RandomAccessFile(fileName, "rw").getChannel()


不知道有没有别的能控制内存占用的方式?
...全文
339 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
衣舞晨风 2019-01-08
  • 打赏
  • 举报
回复
应该是page cache 不是代码的问题
衣舞晨风 2019-01-07
  • 打赏
  • 举报
回复
引用 5 楼 LCL_data 的回复:
还没接触这方面内容,你参考下这个 https://langgufu.iteye.com/blog/2107023



这个应该不行,跟我列的第二种方式是一样的
十八道胡同 2019-01-06
  • 打赏
  • 举报
回复
还没接触这方面内容,你参考下这个 https://langgufu.iteye.com/blog/2107023
衣舞晨风 2019-01-06
  • 打赏
  • 举报
回复
占用的内存也不是jvm中的堆、直接内存都不是。
衣舞晨风 2019-01-06
  • 打赏
  • 举报
回复
文件删除后,内存就会下降,感觉是被操作系统回收了。
衣舞晨风 2019-01-06
  • 打赏
  • 举报
回复
引用 1 楼 LCL_data 的回复:
分页下载 会不会好点?

现在就是每次1000条往里面往文件写,写完也关闭了,但内存一直占用很高,GC也回收不了。
十八道胡同 2019-01-06
  • 打赏
  • 举报
回复
分页下载 会不会好点?

51,397

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧