Когда используются used_memory_peak_perc и used_memory_dataset_perc?
Это статистика использования памяти из моего экземпляра Redis. Я не уверен, что значат used_memory_peak_perc и used_memory_dataset_perc - и когда я должен начать беспокоиться? Тем более что последний продвигается ближе к 100%.
# Memory
used_memory:454041104
used_memory_human:433.01M
used_memory_rss:558338048
used_memory_rss_human:532.47M
used_memory_peak:867680576
used_memory_peak_human:827.48M
used_memory_peak_perc:52.33%
used_memory_overhead:93054648
used_memory_startup:3662104
used_memory_dataset:360986456
used_memory_dataset_perc:80.15%
used_memory_lua:37888
used_memory_lua_human:37.00K
maxmemory:9901336167
maxmemory_human:9.22G
maxmemory_policy:volatile-lru
mem_fragmentation_ratio:1.23
mem_allocator:jemalloc-4.0.3
active_defrag_running:0
lazyfree_pending_objects:0
1 ответ
Нет ничего, касающегося того, что 'used_memory_dataset_perc' приблизился к 100% - теоретически он может только приблизиться к нему, но никогда не достигнет его. Эта метрика отражает часть пользовательских данных из общей памяти, выделенной в данный момент ('used_memory_rss').
Точно так же "used_memory_peak_perc" пытается отразить то же соотношение, но вместо текущего распределения использует пиковое распределение, полученное за время существования экземпляра (или сброс статистики).
Вам необходимо следить за "used_memory_rss", чтобы убедиться, что у вас не закончились ресурсы (то есть ОЗУ, и "used_memory_dataset", чтобы избежать попадания в OOM/eviction, если это не нужно).
Обратите внимание, что "maxmemory" определяет максимальный размер набора данных (то есть верхний предел для "used_memory_dataset"), тогда как "used_memory_rss" - это фактическая память, выделенная для Redis с точки зрения ОС. "used_memory_rss" включает в себя данные, все служебные данные сервера (например, структуры данных, буферы и т. д.) и может быть фрагментированным. Это означает, что когда ваш 'used_memory_dataset' достигает 'maxmemory', значение 'used_memory_rss' может быть значительно больше, чем 'maxmemory'.