Redis
 sql >> Database >  >> NoSQL >> Redis

perché l'utilizzo della memoria redis non si riduce quando si elimina la metà delle chiavi

Fare riferimento alla sezione Allocazione della memoria al seguente link:

http://redis.io/topics/memory-optimization

L'ho citato qui:

Redis non sempre libererà (restituirà) memoria al sistema operativo quando le chiavi vengono rimosse. Questo non è qualcosa di speciale su Redis, ma è il modo in cui funzionano le implementazioni di mostmalloc(). Ad esempio, se riempi un'istanza con 5 GB di dati e quindi rimuovi l'equivalente di 2 GB di dati, la dimensione del set residente (nota anche come RSS, che è il numero di pagine di memoria consumate dal processo) sarà probabilmente ancora di circa 5 GB, anche se Redis affermerà che la memoria dell'utente è di circa 3 GB. Ciò accade perché l'allocatore sottostante non può rilasciare facilmente la memoria tematica. Ad esempio, spesso la maggior parte delle chiavi rimosse sono state allocate nelle stesse pagine delle altre chiavi ancora esistenti.