kafka性能测试的,jmap内存堆分析
2017-11-08 10:03
639 查看
在进行测试中,发现推送kafka集群会有延迟1秒多,查看kafka的内存已经使用的堆内存超过了Kafka默认的1G内存,查看kafka的默认内存在kafka-server-start.sh的脚本文件if [ "x$KAFKA_HEAP_OPTS" = "x" ]; thenexport KAFKA_HEAP_OPTS="-Xmx1G -Xms1G"fi修改堆内存xmx为2G内存,xms初始内存还是默认1G内存,推送还是有延迟,内存使用超过堆内存的2G,但垃圾回收一直很频繁在把初始化内存xms修改2G内存,内存也有飙到2G多,发送到分区的所属Broker节点超出2G内存的都会延迟。1356 kafka 20 0 8333440 2.023g 9572 S 70.1 17.6 14:40.19 java1356 kafka 20 0 8333440 2.024g 9536 S 58.3 17.6 14:41.94 java1356 kafka 20 0 8333440 2.025g 9528 S 62.7 17.6 14:43.82 java1356 kafka 20 0 8333440 2.026g 9500 S 63.1 17.6 14:45.72 java1356 kafka 20 0 8333440 2.027g 9500 S 67.3 17.7 14:47.74 java1356 kafka 20 0 8333440 2.029g 9380 S 66.7 17.7 14:49.74 java1356 kafka 20 0 8333440 2.029g 9320 S 59.8 17.7 14:51.54 java1356 kafka 20 0 8333440 2.031g 9260 S 81.7 17.7 14:53.99 java1356 kafka 20 0 8333440 2.032g 9276 S 70.7 17.7 14:56.11 java1356 kafka 20 0 8333440 2.034g 9276 S 72.1 17.7 14:58.28 java1356 kafka 20 0 8333440 2.034g 9260 S 73.7 17.7 15:00.49 java1356 kafka 20 0 8333440 2.034g 9260 S 65.7 17.7 15:02.46 java1356 kafka 20 0 8333440 2.036g 9260 S 67.4 17.7 15:04.49 java1356 kafka 20 0 8333440 2.036g 9252 S 57.0 17.7 15:06.20 java1356 kafka 20 0 8333440 2.038g 9244 S 72.7 17.7 15:08.38 java1356 kafka 20 0 8333440 2.038g 9104 S 64.1 17.8 15:10.31 java 查看堆内存Old Gen回收速度 执行jmap -heap 1356G1 Old Generation:regions = 688capacity = 2034237440 (1940.0MB)used = 719784456 (686.4399490356445MB)free = 1314452984 (1253.5600509643555MB)35.383502527610545% used
隔1秒在刷一次G1 Old Generation:regions = 287capacity = 2034237440 (1940.0MB)used = 299869184 (285.9775390625MB)free = 1734368256 (1654.0224609375MB)14.741110260953608% used可以看出刚从使用%used一直在变,说明Old一直在执行垃圾回收的操作,在执行垃圾回收操作的时候,kafka是拒绝接收数据的。
相关文章推荐
- jstack(查看线程)、jmap(查看内存)和jstat(性能分析)命令
- .Net Core内存回收模式及性能测试对比分析
- jstack(查看线程)、jmap(查看内存)和jstat(性能分析)命令
- jstack(查看线程)、jmap(查看内存)和jstat(性能分析)命令
- 性能测试瓶颈分析之内存泄漏
- 性能分析4~jmap命令分析:堆信息、内存溢出
- LoadRuner性能测试之内存分析方法及步骤(Windows)
- jstack(查看线程)、jmap(查看内存)和jstat(性能分析)命令
- 性能测试--性能分析--内存分析
- jstack(查看线程)、jmap(查看内存)和jstat(性能分析)命令
- jstack(查看线程)、jmap(查看内存)和jstat(性能分析)命令
- jstack(查看线程)、jmap(查看内存)和jstat(性能分析)命令
- Kafka性能测试分析
- jstack(查看线程)、jmap(查看内存)和jstat(性能分析)命令
- .NET程序内存分析工具CLRProfiler的使用(性能测试)
- jstack(查看线程)、jmap(查看内存)和jstat(性能分析)命令
- jstack(查看线程)、jmap(查看内存)和jstat(性能分析)命令
- jstack(查看线程)、jmap(查看内存)和jstat(性能分析)命令
- Linux下用JMap对Java程序进行性能测试检查内存泄露问题
- Linux下用JMap对Java程序进行性能测试检查内存泄露问题