본문 바로가기

시스템/REDIS

[REDIS] 메모리 단편화(memory fragmentation) 해소

반응형

이슈 파악


  • redis 의 mem_fragmentation_ratio 값이 1.5로 설정 되어 있었고 이 수치를 넘어 서게 될 경우 단편화를 의심해 봐야 한다고 판단함.
  • mem_fragmentation_ratio 값이 점점 상승하여 1.5를 넘어섬
  • redis info memory
> info
...
# Memory
used_memory:21303688
used_memory_human:20.32M
used_memory_rss:32083968
used_memory_peak:25667096
used_memory_peak_human:24.48M
used_memory_lua:36864
mem_fragmentation_ratio:1.51
mem_allocator:jemalloc-3.6.0
...

      used_memory : redis에서 실제 사용하고 있는 메모리

      used_memory_rss : 시스템에서 redis에 할당한 메모리

      used_memory_peak : redis에서 실제 사용했던 메모리양으로 누적치

 

  • 위 값을 바탕으로 zabbix에 수치를 기록하고 있었으며 수치는 아래와 같다.

used_memory
used_memory_rss

 

  • RSS 값은 거의 변화가 없으나 used_memory 값이 계속 줄어 들며 단편화 ratio 값이 상승한것으로 내부단편화를 의심.

 

조치


  • redis 재기동

  - redis는 sentiel 구성과 vip를 이용한 로드밸런성 구성이 되어 있는 상태로 재기동이 가능하다고 판단하여 재기동 실시하여 할당된 메모리 리소스를 해소해줌. 

 

반응형