首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >是否有人认为垃圾收集调优是有用的?

是否有人认为垃圾收集调优是有用的?
EN

Stack Overflow用户
提问于 2009-03-08 17:21:17
回答 5查看 2.1K关注 0票数 21

我读过很多关于用Java调优GC的文章,经常想知道有多少人真正使用了一些更高级的特性。

我总是避免在可能的情况下进行调优,并专注于编写我所能编写的最简单的代码(Brian的建议)--到目前为止,这似乎对我很有帮助。

这些调优策略是否具有跨VM版本变化的弹性,还是需要不断的重新评估?

我使用过的一个调优是-server标志。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2009-03-08 17:36:00

我当前工作的一部分是照顾和输入一个大型java应用程序,该应用程序设计为具有大量内存(目前约为8GB),主要是由于正在进行的计算,其中包含大量缓存的数据。我使用标准的GC设置完成了最初的部署,主要是因为没有一种简单的方法来模拟以完全倾斜方式运行的生产环境。

在接下来的几个月中,我分阶段定制了GC设置。一般说来,最大的可用旋钮似乎是调整增量gc的频率和大小--最大的改进是用较大的周期gc来换取更小和更频繁的gc。但我们确实看到了性能的改善。

我不会发布我的特定设置,因为( a)它们是特定于我们的设置,和( b)因为我没有它们在手边:)。但总的来说,我发现

  • 在调整默认gc设置方面做了很多工作。默认设置几乎总是比我所做的任何调整都更好地工作。
  • 至少对我来说,gc调优实际上是值得的情况是非常极端的,所以尝试模拟它们是不合理的,所以我不得不进行实验和

Here's是来自prev的一个很好的参考。stackoverflow讨论

票数 21
EN

Stack Overflow用户

发布于 2009-03-08 17:24:33

我不得不说,我还没有必要经常使用调优。但是,我与那些编写延迟非常关键的代码的人密切合作:他们经常使用这种调优--指定使用哪种GC算法、最大暂停时间、生存率等。

因此,我想答案是:如果延迟对应用程序至关重要,您可能需要考虑调整GC。

票数 8
EN

Stack Overflow用户

发布于 2009-03-08 17:38:58

我想说的是,最常见的调优是最大内存大小。大多数其他内存选项都有合理的缺省值,并且经常过度调优IMHO。也就是说,设定当它真的没有多大的区别。我经常看到人们设置了很多选项,而在任何情况下,其中一半是默认的。;)

使用分析器是改进GC行为的最有效方法(通过减少创建对象的数量)。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/623939

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档