nohup java -Xms256m -Xmx1024m -XX:ParallelGCThreads=4 -XX:MaxMetaspaceSize=128m -XX:MetaspaceSize=64m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=$basePath/heapdump -verbose:gc -XX:+PrintGCDetails -XX:-PrintGCTimeStamps -XX:-UseParallelOldGC $(cd $(dirname $0); pwd)/$(ls -t $basePath | grep '.jar$' | head -n 1) > $basePath/nohup.out 2>&1 & 跟nohup java -jar xxx.jar & 的区别
时间: 2024-04-28 07:22:28 浏览: 138
这两个命令的主要区别在于以下几点:
1. 参数不同:第一个命令使用了一系列的JVM参数,如-Xms、-Xmx、-XX:ParallelGCThreads等,而第二个命令没有使用任何JVM参数,只用了一个-jar选项指定了要执行的jar包。
2. 输出不同:第一个命令使用了重定向符>和2>&1将标准输出和标准错误输出都重定向到了$basePath/nohup.out文件中,而第二个命令没有进行任何输出重定向,直接将输出打印到控制台上。
3. 其他差异:第一个命令使用了nohup命令和&符号将进程后台运行,并且设置了HeapDumpOnOutOfMemoryError选项,在内存溢出时会生成堆转储文件。而第二个命令没有使用nohup命令和&符号,也没有设置HeapDumpOnOutOfMemoryError选项。
相关问题
nohup java -Xms256m -Xmx1024m -XX:ParallelGCThreads=4 -XX:MaxMetaspaceSize=128m -XX:MetaspaceSize=64m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=$basePath/heapdump -verbose:gc -XX:+PrintGCDetails -XX:-PrintGCTimeStamps -XX:-UseParallelOldGC $(cd $(dirname $0); pwd)/$(ls -t $basePath | grep '.jar$' | head -n 1) > $basePath/nohup.out 2>&1 & 中-Xms256m -Xmx1024m -XX:ParallelGCThreads=4 -XX:MaxMetaspaceSize=128m -XX:MetaspaceSize=64m可以删减掉吗
这些参数是JVM的内存参数,控制着JVM使用的堆内存大小、元数据空间大小和并行垃圾收集线程数等,不能随意删除。
其中,-Xms和-Xmx控制JVM堆内存的初始大小和最大大小,-XX:ParallelGCThreads控制并行垃圾收集线程数,-XX:MaxMetaspaceSize和-XX:MetaspaceSize控制元数据空间的最大大小和初始大小。这些参数的设置需要根据应用程序的实际情况进行调整,以充分利用系统资源,避免内存不足和性能瓶颈等问题。因此,不能简单地删除这些参数。
解释这些参数 nohup java -Xms800m -Xmx800m -XX:MetaspaceSize 256m -XX:MaxMetaspaceSize=512m -jar *****.jar > ****.1og &
这些参数是用于启动 Java 虚拟机时配置的。其中,-Xms 表示虚拟机最小的堆内存大小,这里设置为 800m;-Xmx 表示虚拟机最大的堆内存大小,这里也设置为 800m;-XX:MetaspaceSize 设置 Metaspace 初始空间大小为 256m;-XX:MaxMetaspaceSize 设置 Metaspace 最大空间大小为 512m;-jar 用于指定要运行的 Jar 包文件;> ****.1og 表示将控制台输出重定向到指定的日志文件中。
阅读全文