# 2核4G内存的生成的最优配置参数例子
-Xmx2688M -Xms2688M -Xmn960M -XX:MaxMetaspaceSize=512M -XX:MetaspaceSize=512M -XX:+UseConcMarkSweepGC -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=70 -XX:+ExplicitGCInvokesConcurrentAndUnloadsClasses -XX:+CMSClassUnloadingEnabled -XX:+ParallelRefProcEnabled -XX:+CMSScavengeBeforeRemark -XX:ErrorFile=/opt/soft/services/hs_err_pid%p.log -Xloggc:/opt/soft/services/gc.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps -verbose:class -XX:+PrintCommandLineFlags
nohup java -Xmx64m -Xms64m -Xmn32m -Xss256k -jar -XX:ParallelGCThreads=2 -Djava.compiler=NONE springboot-web-memory-test-0.0.1-SNAPSHOT.jar > log.file 2>&1 &
nohup java -Xmx64m -Xms64m -Xmn32m -Xss256k -jar -XX:ParallelGCThreads=2 springboot-web-memory-test-0.0.1-SNAPSHOT.jar > log.file 2>&1 &
#!/bin/bash
java -Xmx2560m -Xms256m -Xmn128m -Xss1m -jar ureport2-springboot-1.0.0.jar --server.port=9898 >> log.log &
# chmod a+x run.sh
# http://localhost:9898/ureport/designer
java -Xmx64m -Xms64m -Xmn32m -Xss1m -jar springboot-web-memory-test-0.0.1-SNAPSHOT.jar
# JVM默认线程栈大小是1M,一个线程默认分配的内存是1M
java -Xmx64m -Xms64m -Xmn32m -Xss256k -jar -XX:ParallelGCThreads=2 springboot-web-memory-test-0.0.1-SNAPSHOT.jar
# C2CompilerThread:JIT编译线程,动态编译Java运行代码,JIT是JVM为了优化执行频率比较高的字节码设计的技术,JIT把字节码编译为机器码,之后执行则不需要解释字节码,直接运行机器码即可。我们的服务没有什么负载,即使不优化也不受影响,这里的优化是把JIT关掉,在Java启动的参数中添加 => -Djava.compiler=NONE,这样就不会再有CompilerThread了
java -Xmx64m -Xms64m -Xmn32m -Xss256k -jar -XX:ParallelGCThreads=2 -Djava.compiler=NONE springboot-web-memory-test-0.0.1-SNAPSHOT.jar
buildscript {
ext {
springBootVersion = ' 1.5.13.RELEASE'
}
repositories {
mavenLocal()
maven{ url " http://maven.aliyun.com/nexus/content/groups/public/" }
mavenCentral()
}
dependencies {
classpath(" org.springframework.boot:spring-boot-gradle-plugin:${ springBootVersion} " )
}
}
apply plugin : ' org.springframework.boot'
maven的settings.xml配置文件, mirrorOf的名称都设为 central , 好像maven下载插件时,默认是通过central的mirror对应的URL去查找,找遍了自定义的central后,再去官方默认的central找
<mirrors>
<mirror>
<id>aliyun-central</id>
<mirrorOf>central</mirrorOf>
<name>aliyun-central</name>
<url>https://maven.aliyun.com/repository/central</url>
</mirror>
<mirror>
<id>aliyun-jcenter</id>
<mirrorOf>central</mirrorOf>
<name>aliyun-jcenter</name>
<url>https://maven.aliyun.com/repository/jcenter</url>
</mirror>
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>central</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
<mirror>
<id>aliyun-apache</id>
<mirrorOf>central</mirrorOf>
<name>aliyun-apache</name>
<url>https://maven.aliyun.com/repository/apache-snapshots</url>
</mirror>
<mirror>
<id>aliyun-google</id>
<mirrorOf>central</mirrorOf>
<name>aliyun-google</name>
<url>https://maven.aliyun.com/repository/google</url>
</mirror>
<mirror>
<id>aliyun-gradle-plugin</id>
<mirrorOf>central</mirrorOf>
<name>aliyun-gradle-plugin</name>
<url>https://maven.aliyun.com/repository/gradle-plugin</url>
</mirror>
<mirror>
<id>aliyun-gradle-plugin</id>
<mirrorOf>central</mirrorOf>
<name>aliyun-gradle-plugin</name>
<url>https://maven.aliyun.com/repository/gradle-plugin</url>
</mirror>
<mirror>
<id>aliyun-spring</id>
<mirrorOf>central</mirrorOf>
<name>aliyun-spring</name>
<url>https://maven.aliyun.com/repository/spring</url>
</mirror>
<mirror>
<id>aliyun-spring-plugin</id>
<mirrorOf>central</mirrorOf>
<name>aliyun-spring-plugin</name>
<url>https://maven.aliyun.com/repository/spring-plugin</url>
</mirror>
<mirror>
<id>aliyun-public</id>
<mirrorOf>central</mirrorOf>
<name>aliyun-public</name>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>
<mirror>
<id>aliyun-releases</id>
<mirrorOf>central</mirrorOf>
<name>aliyun-releases</name>
<url>https://maven.aliyun.com/repository/releases</url>
</mirror>
<mirror>
<id>aliyun-snapshots</id>
<mirrorOf>central</mirrorOf>
<name>aliyun-snapshots</name>
<url>https://maven.aliyun.com/repository/snapshots</url>
</mirror>
<mirror>
<id>aliyun-grails-core</id>
<mirrorOf>central</mirrorOf>
<name>aliyun-grails-core</name>
<url>https://maven.aliyun.com/repository/grails-core</url>
</mirror>
</mirrors>
repositories {
mavenLocal()
maven{ url "https://maven.aliyun.com/repository/central"}
maven{ url "https://maven.aliyun.com/repository/jcenter"}
maven{ url "https://maven.aliyun.com/repository/apache-snapshots"}
maven{ url "https://maven.aliyun.com/repository/google"}
maven{ url "https://maven.aliyun.com/repository/gradle-plugin"}
maven{ url "https://maven.aliyun.com/repository/spring"}
maven{ url "https://maven.aliyun.com/repository/spring-plugin"}
maven{ url "https://maven.aliyun.com/repository/public"}
maven{ url "https://maven.aliyun.com/repository/releases"}
maven{ url "https://maven.aliyun.com/repository/snapshots"}
maven{ url "https://maven.aliyun.com/repository/grails-core"}
mavenCentral()
}