一、Springboot 如何配置GC
Spring Boot本身不提供对GC的配置,但您可以通过JVM参数来配置GC。以下是一些常用的JVM GC参数:
-XX:+UseSerialGC:使用串行垃圾回收器
-XX:+UseParallelGC:使用并行垃圾回收器
-XX:+UseConcMarkSweepGC:使用CMS垃圾回收器
-XX:+UseG1GC:使用G1垃圾回收器
您还可以通过设置其他参数,如堆大小、新生代和老年代比例等来调整GC性能。建议根据应用程序的性质进行实验和调优以获取最佳结果。
二、CMS如何使用
CMS(Concurrent Mark Sweep)是Java虚拟机的一种垃圾回收器,它采用了并发清理和低停顿时间的方式,适合于处理大型Java应用程序的垃圾回收任务。要使用CMS,可以按照以下步骤操作:
1.在启动脚本中指定使用CMS垃圾回收器。例如,在Linux系统上,可以将如下参数添加到启动脚本中:
java -jar -XX:+UseConcMarkSweepGC your-application.jar
或者在应用程序的application.yml(或application.properties)
文件中添加以下内容,强制使用CMS垃圾回收器,以JDK1.8为例:
server:
port: 8080
spring:
datasource:
url: jdbc:mysql://localhost:3306/mydatabase
username: myuser
password: mypassword
jpa:
properties:
hibernate:
jdbc:
batch_size: 20
order_inserts: true
order_updates: true