问题标签 [jvm-arguments]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
jvm-arguments - JVM最小堆大小推荐的原因?
BEA 建议保持最小和最大堆大小相同。他们没有详细说明提出建议的原因。有人可以提供详细信息吗?
我还从架构师那里得到了另一个建议,即不设置任何最小值而只设置最大值。对此有何评论?如果我不使用它,默认值是什么?
什么是监控和调整 JVM 设置的最佳工具。我在 BEA weblogic 10g 上使用 JDK1.6。它在 Linux 32 位 JVM 上。
最大堆大小设置为 2GB 有什么好处吗?服务器有很多内存。目前设置为 1.5GB,当有 40 个并发用户时使用率为 80%。谢谢,
jvm - 查找 jvm 在运行时启动的命令 (1.6.0_12)
全文:我正在尝试启动一个具有更大内存分配的 hudson 实例,并且我目前正在使用 root 拥有的脚本,我无法直接修改这些脚本来传递参数。但是,脚本当前在启动服务时会传递 $JAVA_ARGS 变量。我已将所需参数导出到 JAVA_ARGS,但应用程序似乎仍受旧内存限制的约束。
问题:有没有办法找出启动实例时使用了哪些命令行参数。更具体地说,我希望找到传递给 Xmx 和 Xms 的值(如果有的话)。
java - 64 位 JVM 的最大可能堆大小是多少?
-Xmx
在 32 位系统中可以设置的理论最大堆值当然是2^32
字节,但通常(请参阅:了解最大 JVM 堆大小 - 32 位与 64 位)不能使用全部 4GB。
对于在 64 位机器上运行在 64 位操作系统中的 64 位 JVM,除了2^64
字节或 16 艾字节的理论限制之外,还有其他限制吗?
我知道由于各种原因(主要是垃圾收集),过大的堆可能不明智,但是鉴于阅读了有关具有 TB RAM 的服务器的信息,我想知道什么是可能的。
jvm - JVM 选项列表 - 在 Oracle 之后仍在维护?
JVM 选项列表是否仍在任何地方维护?它似乎已经从 Oracle 的网站上消失了,但幸运的是 Wayback Machine 有一个副本。
java - 为什么 64 位 JVM 在达到 xmlx 之前会抛出内存不足?
我正在努力解决 Java 应用程序的大内存需求。
为了解决更多内存问题,我切换到了 64 位 JVM 并使用了大型 xmlx。但是,当 xx 大于 2GB 时,应用程序似乎比预期更早地耗尽了内存。当以 2400M 的 xx 运行并查看 GC 信息时,-verbosegc
我得到...
...然后它会引发内存不足异常。我希望它在内存不足之前将堆增加到 2065024K 以上。
在一个简单的例子中,我有一个测试程序,它在循环中分配内存并打印出信息Runtime.getRuntime().maxMemory()
,Runtime.getRuntime().totalMemory()
直到它最终耗尽内存。
在一系列 xx 值上运行它,似乎Runtime.getRuntime().maxMemory()
报告比 xx 少 10%,并且总内存不会增长超过 90% Runtime.getRuntime().maxMemory()
。
我正在使用以下 64 位 jvm:
这是代码:
我使用这个批处理文件在多个 xml 设置上运行它。它包括对 32 位 JVM 的引用,我想与 32 位 jvm 进行比较 - 显然,只要 xmlx 大于约 1500M,此调用就会失败
这会吐出一个 csv,当放入 excel 时看起来像这样(为我的格式不佳道歉)
32 位
64 位
java - 如何增加 java 内存(算法在 ubuntu 上运行,但不在 mac 上;相同的机器配置)
最近我收到了臭名昭著的错误消息:OutOfMemoryError
. 我有一台 64 位 Mac,配备 16GB 内存和 2X2.6 GH 四核。收到此错误消息对我来说根本没有意义,因为我正在运行的相同算法(导致此错误消息)在另一台机器(ubuntu 16GB Ram)上顺利运行。
当我在我的 Mac 上运行上面的代码时,我得到:129,957,888(当然没有逗号:-))
在 ubuntu 机器上运行此代码时,我得到:1,856,700,416
谁能告诉我如何增加最大内存以运行我的算法?谢谢!
我试图在我的 eclipse: default VM arguments 上设置-Xms512m -Xmx4g
,但没有任何改变。
eclipse - 当我尝试在 Eclipse 中运行我的项目时,为什么找不到我的 VM Argument 的路径?
我有几个 .properties 文件希望 Eclipse 获取。根据安装 ESAPI 的说明,我可以通过执行以下操作将它们添加到我的项目中:
在 Eclipse 中,我将转到 Window > Preferences > Java > Installed JREs
从那里我选择我唯一的选项 jre7 并单击 Edit... 按钮。
在 Default VM Arguments: 框中,我输入了以下内容:
然而,当我尝试运行我的项目时,出现以下错误:
即使目录和文件就在那里。我试过其他地方没有运气。有什么想法吗?
更新:当我尝试:
我只是得到这个输出,好像它不喜欢使用的选项:
有关详细信息,请参阅http://java.sun.com/javase/reference 。
jvm - 非服务器类机器上 Xmx、Xms、MaxPermSize 的默认值
非服务器类机器上 Java 6 中以下选项的默认值是什么?
- -Xmx
- -XX:MaxPermSize
Oracle 的文档指出:
在运行服务器 VM 的服务器级机器上,垃圾收集器 (GC) 已从以前的串行收集器 (-XX:+UseSerialGC) 更改为并行收集器 (-XX:+UseParallelGC)。
和
在运行带有并行垃圾收集器 (-XX:+UseParallelGC) 的 VM(客户端或服务器)的服务器级机器上,初始堆大小和最大堆大小已更改
该页面没有描述非服务器类机器的默认值,仅说明,例如,初始堆大小是“合理的最小值”。查看该命令的“手册页”java
,有以下内容-Xms
:
默认值在运行时根据系统配置选择
java - 始终获取 java.lang.OutOfMemoryError: PermGen space Error in Eclipse
我一直在 Eclipse 中打开任何文件时出现java.lang.OutOfMemoryError: PermGen space Error (exclipse 已关闭并且日志显示此错误),并且当我 manuaalu 退出 exclipse 时,它显示相同的错误,说无法保存状态工作区(说明 permgen 错误)这是工作区元数据文件夹下日志文件中的日志
即使我将 eclipse.ini 参数更改为以下值。得到同样的错误
我正在使用 eclipse helios 3.6 版本并拥有 8 GB 的 RAM。我不知道如何摆脱这个。
java - 如何以编程方式访问检查 -Xms -Xmx 和 -XX:MaxPermSize JVM 参数值?
我在 Tomcat 服务器上运行应用程序,我想访问-Xms -Xmx
和-XX:MaxPermSize
JVM 参数值的值,以便我可以记录它们以获得调试帮助。
我试图在System.properties
和 using中找到这些参数System.getEnv()
,但它们不存在。是否有另一种方法来获取它们,或者,它们是否存在System.properties
并System.getEnv()
表明这些选项尚未设置?