java.lang.OutOfMemoryError: GC overhead limit exceeded

时间:2023-03-08 22:02:37
java.lang.OutOfMemoryError: GC overhead limit exceeded
前端请求:
{"code":400,"message":"Handler dispatch failed; nested exception is java.lang.OutOfMemoryError: Java heap space"}
后台日志:

at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:433) ~[mybatis-spring-1.3.1.jar:1.3.1]
... 21 common frames omitted
Caused by: java.lang.OutOfMemoryError: GC overhead limit exceeded

2018-01-15 16:34:17.241 INFO 13892 --- [pool-1-thread-1] c.z.c.schedule.ScreenStatisticsDataJob : syncCurrentStatisticsDataJob complete
2018-01-15 16:34:18.140 INFO 13892 --- [pool-1-thread-1] c.zhengjia.common.schedule.SentimentJob : sentiment complete
2018-01-15 16:34:18.346 INFO 13892 --- [pool-1-thread-1] c.zhengjia.common.schedule.SentimentJob : sentiment weibo complete
2018-01-15 16:34:18.347 INFO 13892 --- [pool-1-thread-1] c.z.common.schedule.ThermalChartJob : thermalChartDataScreen()
2018-01-15 16:34:27.373 INFO 13892 --- [pool-1-thread-1] c.z.common.schedule.ThermalChartJob : thermalChartDataScreen complete
2018-01-15 16:34:27.373 INFO 13892 --- [pool-1-thread-1] c.z.common.schedule.ThermalChartJob : customerFlow()
2018-01-15 16:35:26.607 ERROR 13892 --- [pool-1-thread-1] o.s.s.s.TaskUtils$LoggingErrorHandler : Unexpected error occurred in scheduled task.

java.lang.OutOfMemoryError: GC overhead limit exceeded

2018-01-15 16:35:26.607 INFO 13892 --- [pool-1-thread-1] c.z.c.schedule.ScreenStatisticsDataJob : syncCurrentStatisticsDataJob()
2018-01-15 16:35:26.607 INFO 13892 --- [pool-1-thread-1] c.z.c.schedule.ScreenStatisticsDataJob : totalIn = 37715
2018-01-15 16:35:26.607 INFO 13892 --- [pool-1-thread-1] c.z.c.schedule.ScreenStatisticsDataJob : quatity = 2039
2018-01-15 16:35:26.607 INFO 13892 --- [pool-1-thread-1] c.z.c.schedule.ScreenStatisticsDataJob : revenue = 17880

旧配置:

HEAP_MEMORY=512m
PERM_MEMORY=32m
JAVA_OPTS="-server -XX:+HeapDumpOnOutOfMemoryError "
JAVA_OPTS="${JAVA_OPTS} -Xms${HEAP_MEMORY} -Xmx${HEAP_MEMORY} -XX:PermSize=${PERM_MEMORY} -XX:MaxPermSize=${PERM_MEMORY} -Dapp.name=$SERVER_NAME"
修改配置:
HEAP_MEMORY=512m
MAX_HEAP_MEMORY=2048m
PERM_MEMORY=256m
MAX_PERM_MEMORY=512m
JAVA_OPTS="-server -XX:-UseGCOverheadLimit "
JAVA_OPTS="${JAVA_OPTS} -Xms${HEAP_MEMORY} -Xmx${MAX_HEAP_MEMORY} -XX:PermSize=${PERM_MEMORY} -XX:MaxPermSize=${MAX_PERM_MEMORY} -Dapp.name=$SERVER_NAME"