【发布时间】:2010-11-11 18:24:27
【问题描述】:
我的 Linux 服务器需要能够为开发人员处理 30 多个 eclipse 实例。我对运行 10 个 eclipse 实例进行了快速测试。与每个 Eclipse 相关的 Java 进程最初大约 200MB RSS 内存,当加载更多项目时增加到大约 550MB。
但是在 Eclipse 实例中关闭/删除所有项目后,Java 进程似乎没有释放内存。我仍然看到它使用超过 550MB 的 RSS。
如何更改 Eclipse 或 Java 设置,以便在开发人员关闭项目或闲置一段时间时减少内存占用?
谢谢
【问题讨论】:
-
在同一台机器上运行 30 多个 Eclipse 实例似乎太多了。你有多少内存?我会为每个实例分配至少 512MB 的空间,然后增加到 1GB 以方便使用。 (当然,这可能取决于您正在进行的开发类型和您需要的插件数量。)正如 Bill K 在他的回答中所说,您可以在
eclipse.ini中配置-Xmx参数。 -
如果你有 30 个开发者使用同一个服务器,你有多少内存?您会发现开发需要缓存大量文件才能正常运行(这可能超过应用程序的大小),我建议您每个开发人员至少有 1 GB 的缓存,如果不是更多,具体取决于您的大小项目。
-
@Bruno 以同样的评论击败了我,令人毛骨悚然。
-
我发表此评论是因为我从共享一台 24 GB 的机器转移到了一台 48 GB 的机器,并且看到了显着的改进。 (而且开发人员的数量比 OP 少得多)
-
如果您在同一台机器上运行多个 JVM,请确保您受益于 Java 1.5 中引入的类数据共享,这将节省跨 JVM 的内存