1.6.5内存泄漏
运行一段时间后,mycat的内存就会被占满,cpu飙升。是不是存在泄漏点?求大神帮忙。。 堆内存使用状况: $>jmap -heap xxxxxxx Attaching to process ID 199244, please wait... Debugger attached successfully. Server compiler detected. JVM version is 25.181-b13
using thread-local object allocation. Parallel GC with 43 thread(s)
Heap Configuration: MinHeapFreeRatio = 0 MaxHeapFreeRatio = 100 MaxHeapSize = 19327352832 (18432.0MB) NewSize = 3578789888 (3413.0MB) MaxNewSize = 6442450944 (6144.0MB) OldSize = 7158628352 (6827.0MB) NewRatio = 2 SurvivorRatio = 8 MetaspaceSize = 21807104 (20.796875MB) CompressedClassSpaceSize = 1073741824 (1024.0MB) MaxMetaspaceSize = 17592186044415 MB G1HeapRegionSize = 0 (0.0MB)
Heap Usage: PS Young Generation Eden Space: capacity = 4452777984 (4246.5MB) used = 4073338464 (3884.6382751464844MB) free = 379439520 (361.8617248535156MB) 91.47858884131601% used From Space: capacity = 720896000 (687.5MB) used = 0 (0.0MB) free = 720896000 (687.5MB) 0.0% used To Space: capacity = 709361664 (676.5MB) used = 0 (0.0MB) free = 709361664 (676.5MB) 0.0% used PS Old Generation capacity = 12884901888 (12288.0MB) used = 12884835192 (12287.936393737793MB) free = 66696 (0.06360626220703125MB) 99.99948237091303% used
9815 interned Strings occupying 831344 bytes.
垃圾回收状况:
S0 S1 E O M CCS YGC YGCT FGC FGCT GCT
0.00 0.00 50.31 100.00 97.20 94.19 273 31.282 9 31.158 62.439
0.00 0.00 50.34 100.00 97.20 94.19 273 31.282 9 31.158 62.439
堆对象情况: num #instances #bytes class name
1: 5538102 12672621144 [C 2: 730175 123191512 [B 3: 4634867 111236808 java.lang.String 4: 1259130 90657360 io.mycat.route.RouteResultsetNode 5: 1393991 82480712 [Ljava.lang.Object; 6: 1571143 75414864 java.util.HashMap 7: 938969 75117520 io.mycat.route.RouteResultset 8: 935608 67363776 net.sf.ehcache.Element 9: 141170 59266560 [I 10: 936402 37456080 net.sf.ehcache.store.chm.SelectableConcurrentHashMap$HashEntry 11: 1343676 32248224 java.util.ArrayList 12: 935608 29939456 net.sf.ehcache.DefaultElementEvictionData 13: 507636 25969920 [Ljava.util.HashMap$Node; 14: 943683 23504424 [Lio.mycat.route.RouteResultsetNode; 15: 604208 14500992 com.alibaba.druid.sql.ast.expr.SQLIntegerExpr 16: 429995 13759840 java.util.HashMap$Node 17: 321491 10287712 com.alibaba.druid.sql.ast.expr.SQLIdentifierExpr 18: 234185 9367400 java.util.LinkedHashMap$Entry 19: 553481 8855696 java.lang.Integer 20: 643 8407896 [Lnet.sf.ehcache.store.chm.SelectableConcurrentHashMap$HashEntry; 21: 122360 6852160 java.util.LinkedHashMap 22: 262144 6291456 org.apache.logging.log4j.core.async.AsyncLoggerConfigDisruptor$Log4jEventWrapper 23: 128871 5154840 io.mycat.route.SQLMerge 24: 159630 5108160 com.alibaba.druid.sql.dialect.mysql.visitor.MySqlEvalVisitorImpl 25: 69108 4975776 io.mycat.net.mysql.FieldPacket 26: 101271 4050840 com.alibaba.druid.stat.TableStat$Column 27: 93604 3744160 com.alibaba.druid.sql.ast.expr.SQLBinaryOpExpr 28: 111134 3556288 com.alibaba.druid.sql.ast.statement.SQLSelectItem 29: 49450 3164800 java.nio.DirectByteBuffer 30: 77116 3084640 java.util.HashMap$KeyIterator 31: 122432 2938368 java.lang.StringBuilder 32: 82341 2634912 io.mycat.sqlengine.mpp.ColumnRoutePair 33: 109565 2629560 java.lang.Long 34: 105737 2537688 java.util.concurrent.ConcurrentSkipListMap$Node 35: 87794 2107056 java.util.concurrent.ConcurrentLinkedQueue$Node 36: 25760 2060800 com.alibaba.druid.sql.dialect.mysql.parser.MySqlLexer 37: 58 1901472 [Lio.mycat.memory.unsafe.memory.MemoryBlock; 38: 58448 1870336 com.alibaba.druid.sql.ast.statement.SQLUpdateSetItem 39: 70324 1687776 io.mycat.backend.mysql.MySQLMessage 40: 23399 1684728 java.util.regex.Pattern 41: 39904 1596160 java.math.BigDecimal 42: 24613 1575232 java.util.regex.Matcher 43: 61988 1487712 com.alibaba.druid.sql.ast.expr.SQLCharExpr 44: 33479 1374872 [Lcom.alibaba.druid.sql.ast.SQLExpr; 45: 15513 1365144 com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlSelectQueryBlock 46: 23374 1308944 [Ljava.util.regex.Pattern$GroupHead; 47: 52226 1253424 java.util.concurrent.ConcurrentSkipListMap$Index 48: 28945 1157800 com.alibaba.druid.sql.dialect.mysql.parser.MySqlSelectParser 49: 27142 1085680 com.alibaba.druid.sql.ast.statement.SQLExprTableSource 50: 18933 1060248 sun.nio.cs.UTF_8$Encoder 51: 25760 1030400 com.alibaba.druid.sql.dialect.mysql.parser.MySqlStatementParser 52: 39922 962440 [Ljava.lang.String; 53: 8970 932880 io.mycat.backend.mysql.nio.handler.SingleNodeHandler 54: 38031 912744 com.alibaba.druid.sql.ast.expr.SQLNumberExpr 55: 25760 824320 com.alibaba.druid.sql.dialect.mysql.parser.MySqlExprParser 56: 25336 810752 io.mycat.statistic.HeartbeatRecorder$Record 57: 20179 807160 java.lang.ref.SoftReference 58: 23484 751488 java.util.concurrent.locks.ReentrantLock$NonfairSync 59: 12802 716912 com.alibaba.druid.stat.TableStat 60: 9255 666360 io.mycat.statistic.stat.QueryResult 61: 15712 628480 io.mycat.statistic.stat.UserSqlLastStat$SqlLast 62: 15513 620520 com.alibaba.druid.sql.ast.statement.SQLSelect 63: 18883 604256 java.lang.StringCoding$StringEncoder 64: 22663 543912 java.util.regex.Pattern$Start 65: 22642 543408 java.util.regex.Pattern$TreeInfo 66: 33552 536832 java.util.LinkedHashMap$LinkedEntrySet 67: 16632 532224 java.util.concurrent.ConcurrentHashMap$Node 68: 20672 496128 java.util.regex.Pattern$Slice 69: 5631 495528 io.mycat.route.parser.druid.MycatSchemaStatVisitor 70: 15177 485664 com.alibaba.druid.sql.ast.statement.SQLSelectStatement 71: 19108 458592 java.lang.StringBuffer 72: 9354 448992 com.alibaba.druid.sql.dialect.mysql.visitor.MySqlParameterizedOutputVisitor 73: 3926 443216 java.lang.Class 74: 6884 440576 com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlUpdateStatement 75: 27052 432832 java.util.LinkedHashSet 76: 16435 394440 com.alibaba.druid.stat.TableStat$Condition 77: 23484 375744 java.util.concurrent.locks.ReentrantLock 78: 11529 368928 java.util.concurrent.locks.AbstractQueuedSynchronizer$Node 79: 11065 354080 java.util.concurrent.LinkedTransferQueue$Node 80: 10408 333056 io.mycat.net.mysql.CommandPacket 81: 12340 296160 java.math.MutableBigInteger 82: 11353 272472 java.util.concurrent.CopyOnWriteArrayList 83: 11341 272184 java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject 84: 8501 272032 com.alibaba.druid.sql.ast.expr.SQLPropertyExpr 85: 5663 271824 java.util.concurrent.LinkedBlockingQueue 86: 7651 244832 io.mycat.net.mysql.EOFPacket 87: 894 241936 [Z 88: 7250 232000 com.alibaba.druid.sql.ast.expr.SQLMethodInvokeExpr 89: 4734 227232 java.util.TreeMap 90: 5631 225240 io.mycat.route.parser.druid.DruidShardingParseInfo 91: 9258 222192 java.util.concurrent.CopyOnWriteArrayList$COWIterator 92: 3965 222040 com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlInsertStatement 93: 5428 217120 java.util.TreeMap$Entry 94: 12802 204832 com.alibaba.druid.stat.TableStat$Name 95: 4816 192640 java.util.HashMap$EntryIterator 96: 5875 188000 java.util.ArrayList$Itr 97: 2610 187920 com.alibaba.druid.sql.dialect.mysql.visitor.MySqlSchemaStatVisitor 98: 11068 177088 java.util.HashSet 99: 1451 176736 [J 100: 4389 175560 java.math.BigInteger
关闭堆外合拼
sql统计也关闭看看
关闭堆外合拼 sql统计也关闭看看 好的,我再观察下。谢谢大佬。
sql统计也关闭看看 关闭堆外合拼 都关闭了 ,过了两天还是99%的内存。。。
jvm dump 出来,用内存分析工具,看看内存消耗在哪里了,是不是有大SQL或者大文件load data @xadomgreen @junwen12221
jvm dump 出来,用内存分析工具,看看内存消耗在哪里了,是不是有大SQL或者大文件load data @xadomgreen @junwen12221
Problem Suspect 1
One instance of "net.sf.ehcache.store.NotifyingMemoryStore" loaded by "sun.misc.Launcher$AppClassLoader @ 0x5c002aff8" occupies 1,943,996,632 (97.30%) bytes. The memory is accumulated in one instance of "net.sf.ehcache.store.chm.SelectableConcurrentHashMap$Segment[]" loaded by "sun.misc.Launcher$AppClassLoader @ 0x5c002aff8".
Keywords net.sf.ehcache.store.NotifyingMemoryStore sun.misc.Launcher$AppClassLoader @ 0x5c002aff8 net.sf.ehcache.store.chm.SelectableConcurrentHashMap$Segment[]
这个问题修复了吗?