gpt4 book ai didi

java - 在java中使用大内存的最佳实践是什么?

转载 作者:行者123 更新时间:2023-11-30 02:03:33 24 4
gpt4 key购买 nike

我有一个应用程序服务器,其内存为 64 GB。还有一个java web应用程序。利用所有这些 64 GB 的最佳实践是什么?我需要存储大量对象(HashSet)使用 -Xms -Xmx 是最佳解决方案吗?但是 GC 能正常工作吗?我应该使用第 3 方解决方案,例如缓存库(memcache 等)吗?

最佳答案

这是一个非常笼统的问题,所以答案很广泛。

  • 尽管最近做得更好,但“免费”JRE(Oracle、IBM)都不是以支持内存而“闻名”的。如果您出于某种原因确实需要一个 JVM,那么您可能应该硬着头皮购买诸如 zing 之类的产品。来自阿祖尔。 zing 允许您为每个 JVM 使用最多 2 TB,并且它还旨在最大限度地减少 GC 暂停。 (这是其他虚拟机的真正问题:至少在几年前,它们的 GC 暂停会随着内存大小线性增长。)
  • 但是,2018 年更好的方法是:横向扩展而不是纵向扩展。含义:宁愿拥有多个 JVM(可能消耗 4、8、16 GB),并使用负载平衡之类的东西来保持这些 JVM 忙碌。

换句话说:当然,如果您有一个大型单片应用程序,只能通过添加更多 RAM 来“扩展”,那么您就必须接受这一点。但是,如果您想知道如何更明智地花钱,那么请研究一下微服务,以及如何使用它们来将这个整体分解为许多小部分(以及通过实例化来进行扩展的地方) 更多这些小部件)。

关于java - 在java中使用大内存的最佳实践是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52003095/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com