7得票2回答
如何在Dockerfile中设置JVM参数

我有一个 Dockerfile,如下所示: FROM tomcat:9.0.12-jre8 EXPOSE 8080 COPY app.war "$CATALINA_HOME"/webapps 我需要设置一些JVM属性,如下所示: -DTOMCAT=Y -Doracle.server=1...

19得票5回答
为什么需要指定Java堆大小?

我一直很好奇,为什么Java需要手动设置堆大小? 我之前的印象是,其他语言编写的程序会在运行过程中分配尽可能多的内存,直到操作系统无法再分配为止。 在Java世界中,我们需要设置堆、栈和永久代的大小。虽然这很简单,但是忘记将它们增加到足够大的数字是我见过服务器崩溃的头号原因。 为什么不能让...

11得票1回答
Java -server参数

我看到有人在java.exe命令行参数中使用了“-server”选项: java.exe -server MyClass 但是无论我怎么搜索互联网,都没有找到任何关于它的确切作用的文档。有人能解释一下吗? 可能重复: “java -server”和“java -client”...

13得票4回答
Java的-XX:+UseMembar参数是什么?

我在各种地方(论坛等)看到这个参数,并且常见回答是它有助于高并发服务器。然而,我找不到来自sun官方的解释说明它的作用。此外,它是在Java 6中添加的还是在Java 5中就已经存在了? (顺便说一句,许多Hotspot VM参数的好地方在此页面) 更新:使用此参数无法启动Java 5。

187得票3回答
JVM标志CMSClassUnloadingEnabled实际上是做什么的?

我怎么也找不到Java VM标志CMSClassUnloadingEnabled的定义,除了一些非常模糊的高级定义,比如“解决PermGen问题”(它并没有, 顺便说一句)。 我已经在Sun/Oracle的网站上查找过,甚至选项列表也没有明确说明它的作用。 根据该标志的名称,我猜测CMS垃...

8得票1回答
Java9中内在行为不清晰

假设我有以下代码(我认为这并不重要,但以防万一,在这里): public class AtomicJDK9 { static AtomicInteger ai = new AtomicInteger(0); public static void main(String...

97得票7回答
增加JVM最大堆大小以应对内存密集型应用程序

我需要运行一个占用2GB以上内存的Java应用程序,但是我无法增加堆最大大小。到目前为止,我尝试了以下方法: 设置-Xmx参数,例如-Xmx3000m。这种方法在创建JVM时失败了。从我搜索得到的信息来看,-Xmx必须小于2GB。 使用-XX:+AggressiveHeap选项。当我尝试这...

11得票2回答
JVM命令行选项

可能是重复问题: JVM选项列表 - Oracle公司后期仍在维护吗? 是否有一个页面列出了运行JVM所需的所有命令行选项的明确完整列表?无论我去哪里查找,都会被引导到http://www.oracle.com/technetwork/java/javase/tech/vmoptions-j...

26得票4回答
JVM内存选项中的哪些参数代表什么?

有许多JVM参数会影响JVM的内存使用,例如-Xms、-Xmx、-Xns、-XX:MaxPermSize... 它们是干什么用的? 还有其他的参数吗? 当我遇到什么错误时(例如OutOfMemoryError、StackOverflowError等),我应该增加哪个参数? 我找不到一个...

134得票5回答
如何在Windows下将Jenkins作为服务启动时给予更多的堆空间?

我想增加Jenkins可用的堆空间。但由于它是安装为服务的,我不知道该怎么做。