192GB RAM을 갖춘 Linux 서버에서 Java(TIBCO EBX)를 실행 중인데 Java 프로세스가 계속해서 다시 시작되고 메모리 부족 경고와 함께 애플리케이션이 정지 상태가 됩니다.
힙 크기를 176GB로 설정했고 10시간 간격 후에 힙 크기가 가득 차는 동시에 메모리 사용률은 떨어지지 않는 것을 확인했습니다.
서버를 다시 시작하면 메모리 사용률이 떨어집니다. 우리는 메모리 누수를 분석하기 위해 서버의 Kdump를 얻으려고 시도했으며 파일에서 vmcore-dmesg.txt
다음 항목을 볼 수 있습니다.
이로 인해 메모리 누수가 발생하는지, 그리고 이를 해결할 수 있는 방법을 제안할 수 있는 사람이 있나요?
[ 389.832835] SysRq : Trigger a crash
[ 390.049124] BUG: unable to handle kernel NULL pointer dereference at (null)
[ 390.050076] IP: [<ffffffffbb270326>] sysrq_handle_crash+0x16/0x20
[ 390.050076] PGD 80000017c6c6e067 PUD 17fa9c8067 PMD 0
우리의 커널 버전은 다음과 같습니다:
$uname -r
3.10.0-1062.52.2.el7.x86_64
$ uname -a
Linux sr001 3.10.0-1062.52.2.el7.x86_64 #1 SMP Thu Jul 8 09:03:01 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux