SHOOT - 메모리 사용량 문제

민경찬·2023년 2월 20일
1

백엔드

목록 보기
4/20
post-thumbnail

서론


              total        used        free      shared  buff/cache   available
Mem:          3.8Gi       2.6Gi       358Mi        22Mi       876Mi       983Mi
Swap:            0B          0B          0B

free 메모리는 점점 줄어들고 버퍼/캐시 메모리는 점점 가득 찬다. 메모리 누수로 서버를 몇 번 터뜨리다못해 인스턴스까지 터뜨려버린 본인은 이 현상을 보고 불안해지기 시작했다. 문제가 있는지 파악해보고 있으면 해결해보자!


본론


1. free메모리

진짜 비워져있는 메모리이다.
현재 358Mi만큼 비워져있다는 뜻이다.

2. available메모리

말그대로 사용가능한 메모리라고 봐도 무방할 것 같다. 실제로 비워져있는 것은 아니고 새 프로그램이 가동할 때 필요한 만큼 비워내서 사용한 가능한 메모리 영역이라고 보면 된다.

똑똑한 커널 친구가 메모리를 이만큼 비워낼 수 있다고 말해주는 느낌이네요

3. 괜찮은가?

free영역은 점점 줄어들고 있지만 available 영역은 줄어들지 않는다. 왜 그럴까?

서버에서 필요한 만큼 메모리를 사용하고 있고 그 영역은 속도를 위해서 커널이 잠시 쓰고 있는 영역인 것이다.페이지 캐시 / 파일 캐시 등등... 이것저것 쓰고있는 것이다.

인터넷에 나와있는 내용을 기반으로 나의 available 메모리의 역할을 예측하고 있는 것입니다. 정확하지 않은 내용일 수도 있습니다.


결론


커널을 믿어보자. availble영역이 남아있는 이상 인스턴스가 메모리 부족으로 인해 문제가 생기지는 않을 것 같다.



참고

0개의 댓글