我有一个kafka streams应用程序在多个jvm上运行(总共5个),以提高吞吐量。它正常运行了一个小时左右,然后每个jvm开始一个接一个地崩溃,除了最后一个。在我的代码中无例外地随机崩溃。当我看到堆芯垃圾时,上面写着:
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0x00007f939eb57255, pid=9669, tid=0x00007f93883f3700
#
# JRE version: Java(TM) SE Runtime Environment (8.0_131-b11) (build 1.8.0_131-b11)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.131-b11 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# V [libjvm.so+0x5c5255] G1ParScanThreadState::copy_to_survivor_space(InCSetState, oopDesc*, markOopDesc*)+0x45
我无法将此错误与我的代码关联起来。
1条答案
按热度按时间nhhxz33t1#
根据评论,最好使用kafka支持的最新java版本,例如java11(也可以选择scala2.13)。
另外,您可以将垃圾收集器更改为类似cms的内容,而不是g1gc