自学内容网 自学内容网

spring boot 常用参数总结

通用 JVM 参数

这些参数直接传递给 JVM,用于控制内存、垃圾回收等。

  • -Xms<size>: 设置初始堆大小。
  • -Xmx<size>: 设置最大堆大小。
  • -XX:+HeapDumpOnOutOfMemoryError: 在内存溢出时生成堆转储文件。
  • -XX:HeapDumpPath=<path>: 指定堆转储文件的路径。
  • -XX:+PrintGCDetails: 打印详细的垃圾回收信息。
  • -Xms:设置JVM初始堆内存大小。例如,-Xms512m表示初始堆内存为512MB。

  • -Xmx:设置JVM最大堆内存大小。例如,-Xmx1024m表示最大堆内存为1024MB。

  • -XX:MaxMetaspaceSize:设置元空间的最大大小。例如,-XX:MaxMetaspaceSize=512m表示元空间最大为512MB。

  • -XX:MetaspaceSize:设置元空间的初始大小。例如,-XX:MetaspaceSize=256m表示元空间初始大小为256MB。

  • -XX:InitialBootClassLoaderMetaspaceSize:设置引导类加载器的元空间大小。例如,-XX:InitialBootClassLoaderMetaspaceSize=64m表示引导类加载器元空间初始大小为64MB。

  • -XX:NewRatio:设置年轻代与老年代的比例。例如,-XX:NewRatio=2表示年轻代与老年代的大小比例为1:2。

  • -XX:SurvivorRatio:设置Eden区与Survivor区的比例。例如,-XX:SurvivorRatio=8表示Eden区与Survivor区的大小比例为8:1。

  • -XX:MaxTenuringThreshold:设置对象从年轻代晋升到老年代的年龄阈值。例如,-XX:MaxTenuringThreshold=6表示对象在年轻代存活6次后晋升到老年代。

  • -XX:+UseG1GC:启用G1垃圾收集器。

  • -XX:+UseConcMarkSweepGC:启用CMS垃圾收集器。

Spring Boot 特定参数

  • --server.port=<port>: 设置应用运行的端口号。
  • --spring.profiles.active=<profile>: 激活特定的 Spring Profile。
  • --logging.level.<package>=<level>: 设置特定包或类的日志级别(如 DEBUGINFOWARNERROR)。
  • --spring.config.location=<location>: 指定外部配置文件的位置。
  • --spring.datasource.url=<url>: 设置数据源 URL。
  • --spring.datasource.username=<username>: 设置数据源用户名。
  • --spring.datasource.password=<password>: 设置数据源密码。
  • --spring.jpa.hibernate.ddl-auto=<value>: 设置 Hibernate DDL 自动生成策略(如 nonevalidateupdatecreatecreate-drop)。
  • --spring.main.banner-mode=<mode>: 设置启动横幅模式(如 offconsolelog)。
  • --spring.application.name=<name>: 设置应用名称。

其他常见参数

  • --spring.output.ansi.enabled=<true|false>: 启用或禁用 ANSI 颜色输出。
  • --spring.devtools.restart.enabled=<true|false>: 启用或禁用 DevTools 重启功能。
  • --spring.datasource.initialization-mode=<always|embedded|never>: 设置数据源初始化模式。
  • --spring.jpa.show-sql=<true|false>: 显示 SQL 语句。
  • --spring.h2.console.enabled=<true|false>: 启用或禁用 H2 控制台。

端口号

通过--server.port参数设置应用运行的端口号

java -jar your-app.jar --server.port=8081

配置文件

通过--spring.config.location参数指定外部配置文件的位置。

java -jar your-app.jar --spring.config.location=classpath:/default.properties,classpath:/override.properties

环境变量

通过--spring.profiles.active参数激活特定的Spring Profile。

java -jar your-app.jar --spring.profiles.active=dev

JVM参数

直接传递JVM参数,如内存设置等。

java -Xms512m -Xmx1024m -jar your-app.jar

配置文件

ava -jar your-app.jar --spring.config.location=classpath:/default.properties,classpath:/override.properties

日志级别

你可以使用--logging.level参数来设置不同包或类的日志级别。例如:

java -jar your-app.jar --logging.level.org.springframework=DEBUG

这将把Spring框架的日志级别设置为DEBUG。

生成Dump文件

如果你需要生成堆转储(heap dump)文件,可以使用以下参数:

java -jar your-app.jar -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/path/to/dumpfile

这会在内存溢出时生成一个堆转储文件到指定路径。

Nacos相关参数

Nacos是一个动态服务发现、配置管理和服务管理平台。如果你的应用使用了Nacos,你可能需要配置Nacos的相关参数。

  • --spring.cloud.nacos.discovery.server-addr=<address>: 设置 Nacos 服务发现服务器地址。
  • --spring.cloud.nacos.config.server-addr=<address>: 设置 Nacos 配置中心服务器地址。
  • --spring.cloud.nacos.config.namespace=<namespace>: 设置 Nacos 命名空间。
  • --spring.cloud.nacos.config.group=<group>: 设置 Nacos 配置组。

例如:

java -jar your-app.jar --spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848 --spring.cloud.nacos.config.server-addr=127.0.0.1:8848

JVM

  1. 堆内存大小

    • 参数-Xms(初始堆内存大小),-Xmx(最大堆内存大小)
    • 示例java -jar -Xms512m -Xmx1024m myapp.jar
    • 说明:通过设置初始堆内存和最大堆内存,可以控制Java虚拟机使用的内存量。例如,上述命令将初始堆内存设置为512MB,最大堆内存设置为1024MB。
  2. 垃圾回收日志

    • 参数-XX:+PrintGCDetails(打印详细的GC日志)
    • 示例java -jar -XX:+PrintGCDetails myapp.jar
    • 说明:启用垃圾回收日志可以帮助开发者了解垃圾回收的情况,从而进行性能调优。
  3. 远程调试

    • 参数-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005
    • 示例java -jar -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 myapp.jar
    • 说明:启用远程调试功能,允许开发者通过网络连接到正在运行的JVM实例进行调试。
  4. 元空间大小

    • 参数-XX:MetaspaceSize(元空间初始大小),-XX:MaxMetaspaceSize(元空间最大大小)
    • 示例java -jar -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=128m myapp.jar
    • 说明:元空间用于存储类的元数据,如类的版本、字段、方法等信息。通过设置元空间的大小,可以避免因元空间不足导致的OutOfMemoryError。
  5. 垃圾回收器选择

    • 参数-XX:+UseG1GC(启用G1垃圾收集器)
    • 示例java -jar -XX:+UseG1GC myapp.jar
    • 说明:选择合适的垃圾回收器可以根据应用的特点和需求优化内存管理。G1垃圾收集器是一种面向低暂停时间的垃圾收集器,适用于大内存和多处理器的环境。
  6. 系统属性设置

    • 参数-Dproperty=value(设置系统属性)
    • 示例java -jar -Dmy.property=myValue myapp.jar
    • 说明:通过设置系统属性,可以在运行时配置应用程序的行为。例如,上述命令设置了名为my.property的系统属性,其值为myValue


原文地址:https://blog.csdn.net/jg_csdn/article/details/143798976

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!