【发布时间】:2011-09-06 01:47:01
【问题描述】:
我想问一下这里有没有人知道如何优化JVM的内存使用? 我们正在使用调用 JVM 的 java 服务包装器 (YAJSW),物理内存使用量约为 40MB。我想减少这个,比如说 5-10MB。我如何做到这一点?
到目前为止,我只有以下配置:
java =-Xmx1024m
我也试过这个:
java =-Xms1024m -Xmx1024m -XX:NewSize=512m -XX:MaxNewSize=512m -XX:SurvivorRatio=2 -XX:PermSize=256m -XX:MaxPermSize=256m
但是这些配置设置根本没有任何区别。什么是正确的配置设置?或者,我还需要做什么来优化它?
提前感谢您的回答。
【问题讨论】:
-
您提供的数字有点奇怪...您说您想将内存使用量减少到 5-10 MB,并且您将其设置为更多(堆为 1G,PermSize 为 256M) .
-
我真的不知道要使用的正确参数。如果我减小堆大小,则被服务包装的应用程序可能会受到影响。无论如何,您是否建议我减少堆大小和 PermSize?这些的可容忍值是多少? (512 用于堆,64 用于 PermSize?)
-
我看不出所提供的任何选项应该如何影响最小内存使用量?我会尝试 -XX:+UseCompressedStrings 或 -XX:+UseCompressedOops (在 64 位 VM 上)之类的东西 - 实际上,如果内存很重要,我希望你使用 32 位 VM,所以第二个不应该有帮助。
-
@Voo:我实际上使用的是 64 位 VM。我尝试使用 -XX:+UseCompressedStrings 但是
-
..但它也没有任何区别。
标签: optimization jvm java-service-wrapper