精华内容
下载资源
问答
  • java JAVA_OPTS javaagent

    2019-04-23 01:47:54
    NULL 博文链接:https://shihuan830619.iteye.com/blog/2258595
  • java编程中,老会碰到JAVA_TOOL_OPTIONS _JAVA_OPTIONS 和 JAVA_OPTS。下面就详细说说他们 JAVA_TOOL_OPTIONS:是标准的,所有虚拟机都能识别和应用的。有些应用不方便设置JVM参数,如命令行应用、通过JNI(Java ...

    在java编程中,老会碰到JAVA_TOOL_OPTIONS  _JAVA_OPTIONS 和 JAVA_OPTS。下面就详细说说他们

    •   JAVA_TOOL_OPTIONS:是标准的,所有虚拟机都能识别和应用的。有些应用不方便设置JVM参数,如命令行应用、通过JNI(Java Native Interface)API调用虚拟机的应用、脚本嵌入虚拟机中的应用等。这种情况环境变量JAVA_TOOL_OPTIONS就非常有用了,它会被JNI API的JNI_CreateJavaVM函数使用。
    Note:
    在有些场景为了安全考虑环境变量JAVA_TOOL_OPTIONS是被禁用的,比如Solaris系统中但有效用户ID或组ID不是实际ID时则禁用此环境变量。
    • JAVA_OPTS:常用于一些应用的配置,如Tomcat,但它一般不作为环境变量,也不能被JVM识别的,是那些应用的自定义配置;
    • _JAVA_OPTIONS:也是作为环境变量来替代命令行参数的,但它是JVM厂家自定义的,可以覆盖JAVA_TOOL_OPTIONS,但各厂家的不同,_JAVA_OPTIONS是Oracle的JVM,而IBM的则是用IBM_JAVA_OPTIONS。

    如果想验证上面的不同也不难,如果设置了JVM能识别的环境变量,JVM会有"Picked up"的提示的,如:

            export _JAVA_OPTIONS="-Dname=bill"
            export _JAVA_OPTIONS="-Dbill=xty ${_JAVA_OPTIONS}"
            export JAVA_TOOL_OPTIONS="-Dcity=beijing"
            java -version
    
    Picked up JAVA_TOOL_OPTIONS: -Dcity=beijing
    Picked up _JAVA_OPTIONS: -Dbill=xty -Dname=bill
    openjdk version "1.8.0_222"
    OpenJDK Runtime Environment (build 1.8.0_222-b10)
    OpenJDK 64-Bit Server VM (build 25.222-b10, mixed mode)
    

     

    展开全文
  • JAVA_OPTS设置详解

    万次阅读 2019-09-09 10:18:31
    JAVA_OPTS="-Xms256m -Xmx512m -Xss256K -Djava.security.egd=file:/dev/./urandom -Dspring.profiles.active=test" 1)给出了对内存的配置。 2)以及spring boot使用spring.profiles.act...

    1、文件位置

    打开bin/catalina.bat文件

    示例:

    JAVA_OPTS="-Xms256m -Xmx512m -Xss256K  -Djava.security.egd=file:/dev/./urandom  -Dspring.profiles.active=test"

    1)给出了对内存的配置。

    2)以及spring boot 使用spring.profiles.active来分区配置。

            项目的部署,开发环境、测试环境、预发布环境、生产环境的环境配置是不同的;比如,数据库配置,在开发的时候,我们一般用测试数据库,而在生产环境的时候,我们是用正式的数据,这时候,我们可以利用profile在不同的环境下配置用不同的配置文件或者不同的配置.

            Spring boot允许你通过命名约定按照一定的格式(application-{profile}.properties)来定义多个配置文件,然后通过在application.properyies通过spring.profiles.active来具体激活一个或者多个配置文件,如果没有没有指定任何profile的配置文件的话,spring boot默认会启动application-default.properties。

    2、JAVA_OPTS设置

    2.1、JAVA_OPTS ,顾名思义,是用来设置JVM相关运行参数的变量。

    JVM:JAVA_OPTS="-server -Xms2048m -Xmx2048m -Xss512k"

    -server:  一定要作为第一个参数,在多个CPU时性能佳*。

    -Xms初始Heap大小,使用的最小内存,cpu性能高时此值应设的大一些。

    -Xmx:java heap最大值,使用的最大内存。

    上面两个值是分配JVM的最小和最大内存,取决于硬件物理内存的大小,建议均设为物理内存的一半。

    -XX:PermSize:设定内存的永久保存区域

    -XX:MaxPermSize:设定最大内存的永久保存区域

    -XX:MaxNewSize:

    -Xss 15120 这使得JBoss每增加一个线程(thread)就会立即消耗15M内存,而最佳值应该是128K,默认值好像是512k.

    +XX:AggressiveHeap 会使得 Xms没有意义。这个参数让jvm忽略Xmx参数,疯狂地吃完一个G物理内存,再吃尽一个G的swap。

    -Xss:每个线程的Stack大小

    -verbose:gc 现实垃圾收集信息

    -Xloggc:gc.log 指定垃圾收集日志文件

    -Xmn:young generation的heap大小,一般设置为Xmx的3、4分之一

    -XX:+UseParNewGC :缩短minor收集的时间

    -XX:+UseConcMarkSweepGC :缩短major收集的时间

    提示:此选项在Heap Size 比较大而且Major收集时间较长的情况下使用更合适。

            PermGen space的全称是Permanent Generation space,是指内存的永久保存区域OutOfMemoryError: PermGen space从表面上看就是内存益出,解决方法也一定是加大内存。说说为什么会内存益出:这一部分用于存放Class和Meta的信息,Class在被 Load的时候被放入PermGen space区域,它和和存放Instance的Heap区域不同,GC(Garbage Collection)不会在主程序运行期对PermGen space进行清理,所以如果你的APP会LOAD很多CLASS的话,就很可能出现PermGen space错误。这种错误常见在web服务器对JSP进行pre compile的时候。改正方法:-Xms256m -Xmx256m -XX:MaxNewSize=256m -XX:MaxPermSize=256m

    2.2、在tomcat中redeploy时出现outofmemory的错误. 可以有以下几个方面的原因:

    1) 使用了proxool,因为proxool内部包含了一个老版本的cglib.

    2) log4j,最好不用,只用common-logging

    3) 老版本的cglib,快点更新到最新版。

    4) 更新到最新的hibernate3.2 3

    3、实例演示

    这里以tomcat环境为例,其它WEB服务器如jboss,weblogic等是同一个道理。

    一、java.lang.OutOfMemoryError: PermGen space PermGen space的全称是Permanent Generation space,是指内存的永久保存区域, 这块内存主要是被JVM存放Class和Meta信息的,Class在被Loader时就会被放到PermGen space中, 它和存放类实例(Instance)的Heap区域不同,GC(Garbage Collection)不会在主程序运行期对 PermGen space进行清理,所以如果你的应用中有很多CLASS的话,就很可能出现PermGen space错误, 这种错误常见在web服务器对JSP进行pre compile的时候。如果你的WEB APP下都用了大量的第三方jar, 其大小超过了jvm默认的大小(4M)那么就会产生此错误信息了。

    解决方法: 手动设置MaxPermSize大小修改TOMCAT_HOME/bin/catalina.sh 在“echo "Using CATALINA_BASE: $CATALINA_BASE"”上面加入以下行: JAVA_OPTS="-server -XX:PermSize=64M -XX:MaxPermSize=128m

    建议:将相同的第三方jar文件移置到tomcat/shared/lib目录下,这样可以达到减少jar 文档重复占用内存的目的。

    二、java.lang.OutOfMemoryError: Java heap space Heap size 设置 JVM堆的设置是指java程序运行过程中JVM可以调配使用的内存空间的设置.JVM在启动的时候会自动设置Heap size的值,其初始空间(即-Xms)是物理内存的1/64,最大空间(-Xmx)是物理内存的1/4。可以利用JVM提供的-Xmn -Xms -Xmx等选项可进行设置。Heap size 的大小是Young Generation 和Tenured Generaion 之和。提示:在JVM中如果98%的时间是用于GC且可用的Heap size 不足2%的时候将抛出此异常信息。提示:Heap Size 最大不要超过可用物理内存的80%,一般的要将-Xms和-Xmx选项设置为相同,而-Xmn为1/4的-Xmx值。

    解决方法:手动设置Heap size 修改TOMCAT_HOME/bin/catalina.sh 在“echo "Using CATALINA_BASE: $CATALINA_BASE"”上面加入

    下行: JAVA_OPTS="-server -Xms800m -Xmx800m -XX:MaxNewSize=256m"

    三、下面给出1G内存环境下Java jvm 的参数设置 ,作为参考

    JAVA_OPTS="-server -Xms800m -Xmx800m -XX:PermSize=64M -XX:MaxNewSize=256m -XX:MaxPermSize=128m -Djava.awt.headless=true "

    展开全文
  • JAVA_OPTS

    千次阅读 2018-12-18 21:53:26
    JAVA_OPTS ,顾名思义,是用来设置JVM相关运行参数的变量。 JAVA_OPTS="-server -Xms256m -Xmx512m -XX:PermSize=64M -XX:MaxPermSize=128m" -server:一定要作为第一个参数,在多个CPU时性能佳 -Xms:...

    JAVA_OPTS ,顾名思义,是用来设置JVM相关运行参数的变量。

    JAVA_OPTS="-server -Xms256m -Xmx512m -XX:PermSize=64M -XX:MaxPermSize=128m"

    -server:一定要作为第一个参数,在多个CPU时性能佳
    -Xms:初始Heap堆大小,使用的最小内存,cpu性能高时此值应设的大一些
    -Xmx:java heap最大值,使用的最大内存
    上面两个值是分配JVM的最小和最大内存,取决于硬件物理内存的大小,建议均设为物理内存的一半。
    -XX:PermSize:设定内存的永久保存区域
    -XX:MaxPermSize:设定最大内存的永久保存区域
    -XX:MaxNewSize:
    -Xss 15120 这使得JBoss每增加一个线程(thread)就会立即消耗15M内存,而最佳值应该是128K,默认值好像是512k.
    +XX:AggressiveHeap 会使得 Xms没有意义。这个参数让jvm忽略Xmx参数,疯狂地吃完一个G物理内存,再吃尽一个G的swap。
    -Xss:每个线程的Stack大小
    -verbose:gc 现实垃圾收集信息
    -Xloggc:gc.log 指定垃圾收集日志文件
    -Xmn:young generation的heap大小,一般设置为Xmx的3、4分之一
    -XX:+UseParNewGC :缩短minor收集的时间
    -XX:+UseConcMarkSweepGC :缩短major收集的时间
    提示:此选项在Heap Size 比较大而且Major收集时间较长的情况下使用更合适。


    参数说明:

    -server:一定要作为第一个参数,在多个CPU时性能佳

    -Xms:初始Heap大小,使用的最小内存,cpu性能高时此值应设的大一些

    -Xmx:java heap最大值,使用的最大内存

    -XX:PermSize:设定内存的永久保存区域

    -XX:MaxPermSize:设定最大内存的永久保存区域

    -XX:MaxNewSize:

    +XX:AggressiveHeap 会使得 Xms没有意义。这个参数让jvm忽略Xmx参数,疯狂地吃完一个G物理内存,再吃尽一个G的swap。

    -Xss:每个线程的Stack大小

    -verbose:gc 现实垃圾收集信息

    -Xloggc:gc.log 指定垃圾收集日志文件

    -Xmn:young generation的heap大小,一般设置为Xmx的3、4分之一

    -XX:+UseParNewGC :缩短minor收集的时间

    -XX:+UseConcMarkSweepGC :缩短major收集的时间

    提示:此选项在Heap Size 比较大而且Major收集时间较长的情况下使用更合适。

    展开全文
  • tomcat要开启jmx监控,JAVA_OPTS和CATALINA_OPTS都可以让参数起作用,比如 JAVA_OPTS="-Djava.rmi.server.hostname=192.168.1.2 -Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.ssl=...

    tomcat要开启jmx监控,JAVA_OPTS和CATALINA_OPTS都可以让参数起作用,比如

    JAVA_OPTS="-Djava.rmi.server.hostname=192.168.1.2 -Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxrem
    ote.authenticate=false"

    但是这样在catalina.sh中设置完后,停止tomcat的时候会报jmx端口被占用,这样tomcat就停不掉了,只能kill

    CATALINA_OPTS参数是只有在启动的时候才起作用的,对停止不影响,正合我意。

    展开全文
  • Docker, Spring Boot and JAVA_OPTS

    千次阅读 2019-01-17 17:41:08
    While adjusting some environment variables recently, I came across an odd issue with Docker, Spring Boot and JAVA_OPTS. JAVA_OPTS comes from the Tomcat/Catalina world and when searching for “Docker ...
  • JAVA_OPTS设置及使用 JAVA_OPTS=”-server-Xms256m-Xms512m-XX:PermSize=64M-XX:MaxPermSize=128m-Djava.awt.headless=true” -Xms256m就是java应用开启后需要的最小内存 -Xms512m就是java应用开启后运行只能到...
  • JAVA_OPTS设置

    2019-07-31 17:05:45
    在windows环境下,tomcat下的~/bin/catalina.bat文件,在文件头部加入:set "JAVA_OPTS=%JAVA_OPTS% -server -Xms5120m -Xmx10240m -XX:PermSize=640M -XX:MaxPermSize=2560m" 在linux环境下,tomcat下的~/bin/...
  • tomcat JAVA_OPTS设置

    千次阅读 2019-09-25 05:48:28
    原文地址:...AVA_OPTS ,顾名思义,是用来设置JVM相关运行参数的变量。 JVM:JAVA_OPTS="-server -Xms2048m -Xmx2048m -Xss512k" -server:一定要作为第一个参数,在多...
  • 查找办法提示是因为Tomcat的设置问题,很多文章都推荐在catalina.bat中加这么set JAVA_OPTS=-Xms512m -Xms1024m -XX:MaxPermSize=1024m -Dfile.encoding=UTF-8一句话,比如这篇。 但是加完之后Tomcat却无法启动了,...
  • 1、JAVA_TOOL_OPTIONS是何物 有些应用不方便设置JVM参数,如命令行应用、通过JNI(Java Native Interface)API调用虚拟机的应用、脚本嵌入虚拟机中的应用等。这种情况环境变量JAVA_TOOL_OPTIONS就非常有用了,它会被...
  • tomcat参数java_opts调整

    2019-07-22 17:07:57
    在windows环境下,tomcat下的~/bin/catalina.bat文件,在文件头部加入:set "JAVA_OPTS=%JAVA_OPTS% -server -Xms5120m -Xmx10240m -XX:PermSize=640M -XX:MaxPermSize=2560m" 在linux环境下,tomcat下的~/bin/...
  • JAVA_OPTS="-server -Xms1024m -Xmx2048m -Xss512k -XX:PermSize=300m -XX:MaxPermSize=1024m" -Xms256m :初始化内存 -Xmx1024m :能获得的最大内存 -Xss1024K :每增加一个线程消耗的内存 -XX:PermSize=300m :...
  • 通过eclipse启动tomcat设置JAVA_OPTS失败的解决方案
  • 项目中tomcat设置java_opts: JAVA_OPTS="$JAVA_OPTS -server -Xmx512m -Xms512m -Xss256K -XX:NewRatio=2 -XX:SurvivorRatio=6 -XX:+DisableExplicitGC -...
  • Tomcat JAVA_OPTS参数设置说明

    万次阅读 2016-11-08 15:17:27
    The JAVA_OPTS environment variable can be used to specify additional arguments to the JVM JBoss will be run in. These can be set as regular environment variables on the platform, in the startup script
  • JAVA_OPTS只对tomcat/weblogic等Web服务器中间件有效,以“java -cp [*.jar] test.Main”方式运行的不会去读取JAVA_OPTS,所以通过java -cp执行相关文件会报错。 JAVA_OPTS在 tomcat/bin/catalina.sh或tomcat/bin/...
  • JAVA_OPTS的使用

    千次阅读 2020-03-02 07:23:26
    主要是用在tomcat中。 2种方式可以添加: 直接添加再startup.sh中 新建一个setenv.sh setenv.sh脚本如下(如果...JAVA_OPTS=" \ -Deureka.waitTimeInMsWhenSyncEmpty=0 \ -Deureka.numberRegistrySyncRetries=0" ...
  • 前提说明 OS信息: Linux rel65 3.10.0-514.26.2.el7.x86_64 #1 SMP Tue Jul 4 15:04:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux Tomcat版本信息: apache-tomcat-8.5.34 ...Java(TM) SE...
  • 在Tomcat的catalina.sh文件中的启停server脚本中都应用到了两个变量: CATALINA_OPTSJAVA_OPTS。用于保存Tomcat运行所需的各种参数。 他们在文件中的注释如下: (可选)Java 执行"start","stop&...
  • Tomcat7配置JAVA_OPTS

    2020-03-02 17:31:46
  • 设置Tomcat的JAVA_OPTS参数 修改$TOMCAT_HOME/bin/catalina.bat 添加set JAVA_OPTS= ... rem ----- Execute The Requested Command ---------------------------------------set JAVA_OPTS=%JAVA_OPTS% -server -...
  • tomcat配置文件: 在catalina.bat的set “JAVA_OPTS=%JAVA_OPTS% %JSSE_OPTS% -Dfile.encoding=UTF-8” ,加上UTF-8问题就可以解决
  • Spring Boot的JAVA_OPTS配置参数

    千次阅读 2019-11-26 14:30:43
    JAVA_OPTS="-Djava.library.path=/var/xxx/bin/lib -Dspring.profiles.active=prod -server -Xms8g -Xmx8g -XX:MaxGCPauseMillis=500 -XX:+AggressiveOpts -XX:+UseParallelGC" 注意:.conf文件名,必须和jar的...
  • 可以利用JVM提供的-Xmn -Xms -Xmx等选项可进行设置三、实例,以下给出1G内存环境下java jvm 的参数设置参考:JAVA_OPTS="-server -Xms800m -Xmx800m -XX:PermSize=64M -XX:MaxNewSize=256m -X...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 79,899
精华内容 31,959
关键字:

java_opts

java 订阅