sql >> Databáze >  >> NoSQL >> Redis

Redis - sledování využití paměti

Paměť je kritickým zdrojem pro výkon Redis. Použitá paměť definuje celkový počet bajtů přidělených Redis pomocí jeho alokátoru (buď standardní libc, jemalloc nebo alternativního alokátoru, jako je tcmalloc).

Všechna data metrik využití paměti pro instanci Redis můžete shromáždit spuštěním „informační paměti“.

 127.0.0.1:6379> info memoryMemoryused_memory:1007280used_memory_human:983.67Kused_memory_rss:2002944used_memory_rss_human:1.91Mused_memory_peak2K8_meak:preak>peak:1008. 

Někdy, když je Redis nakonfigurován bez maximálního limitu paměti, využití paměti nakonec dosáhne systémové paměti a server začne házet chyby „Nedostatek paměti“. Jindy je Redis nakonfigurován s maximálním limitem paměti, ale zásadou neeviction. To by způsobilo, že server nevysune žádné klíče, čímž zabrání jakémukoli zápisu, dokud se paměť neuvolní. Řešením těchto problémů by byla konfigurace Redis s maximální pamětí a určitou politikou vystěhování. V tomto případě server začne vyřazovat klíče pomocí zásady vyřazení, jakmile využití paměti dosáhne maxima.

Memory RSS (Resident Set Size) je počet bajtů, které operační systém přidělil Redis. Pokud je poměr „memory_rss“ k „memory_used“ větší než ~1,5, znamená to fragmentaci paměti. Fragmentovanou paměť lze obnovit restartováním serveru.



  1. Jak převedu vlastnost v MongoDB z textu na typ data?

  2. MongoDB $velikost

  3. Redis vs Service Bus pro scénář pub/sub

  4. Interakce Python Redis