可能这是一个众所周知的问题,但我没有找到这个问题的最佳参考......
计算和分配默认 u 限制、详细(用于 gc)和最大堆内存值的公式是什么?
如果没有特定的公式,那么为特定机器指定此公式的标准是什么。
如果可能的话,任何人都可以解释这些概念。
为了提高性能,我们还需要考虑其他任何概念吗?
如何调整 JVM 以获得更好的性能,
可能这是一个众所周知的问题,但我没有找到这个问题的最佳参考......
计算和分配默认 u 限制、详细(用于 gc)和最大堆内存值的公式是什么?
如果没有特定的公式,那么为特定机器指定此公式的标准是什么。
如果可能的话,任何人都可以解释这些概念。
为了提高性能,我们还需要考虑其他任何概念吗?
如何调整 JVM 以获得更好的性能,
停止你现在正在做的事情。
调整 JVM 可能是您最不应该担心的事情。在您完成本书中的所有其他性能技巧之前,默认设置应该没问题。
首先,您需要分析您的应用程序并找出瓶颈所在。具体来说,您将想知道:
然后,您应该对导致问题的区域进行有针对性的优化。有数以千计的有效技术,但以下是我认为最有用的技术:
O(n^2)
或更糟的东西都可能是改进的好候选。尝试达到O(n log n)
或更好。Integer
为int
等。这可以节省内存并使数值运算更快。SoftHashMap
以便在需要时仍可以释放内存。进行任何更改后,您需要再次配置文件。至少,您需要确认您的优化确实有帮助。此外,修复一个瓶颈通常会将瓶颈转移到应用程序的另一部分。因此,您需要确定接下来要关注的新位置。
重复直到您的应用程序足够快(由您自己或您的客户的要求定义)。