Comparez les prix des domaines et des services informatiques des vendeurs du monde entier

Pourquoi memcached prend beaucoup plus de mémoire que spécifié dans sa configuration

Je fixe la taille de l'élément sur 128 MB et mémoire maximum sur 1024 MB dans ma configuration memcached. Mais quand je lance cette commande:

ps -eo pmem,pcpu,vsize,pid,cmd | sort -k 1 -nr | head -5

j'ai eu

71.7  0.0 3072592 4537 /usr/bin/memcached -vv -m 1024 -p 11211 -u memcache -l 0.0.0.0 -I 128M

Cela signifie que memcached occupé 3 Gb de la mémoire. Maintenant, je comprends que lorsque nous définissons la taille de l'élément plus 1 MB, consommation de mémoire memcached Augmente. Mais 3 GB lorsque vous avez installé la quantité maximale de mémoire sur 1 Gb, cela semble beaucoup beaucoup.

Toujours ou fais-je quelque chose de mal? Existe-t-il un moyen de réduire cette consommation de mémoire?

Remarque: bien que les clés que je garde actuellement dans memcached, ou un peu plus 1 MB, mais la taille de ces clés augmente constamment, donc pour la sécurité à l'avenir, j'ai défini la taille de l'élément au maximum possible!
Invité:

Emilie

Confirmation de:


vsize

Fait

ne pas

Signifie combien de mémoire est occupée par le processus. Ce numéro est donné

rss

.

Taille de résident, ou

rss

, Indique combien de mémoire utilise réellement le processus. Bien que la quantité totale de VM, ici

vsize

, Indique
https://serverfault.com/q/138427/126632
. Le programme peut éventuellement utiliser cette quantité de RAM, mais la majeure partie de l'espace d'adressage est utilisée par des éléments dédiés, mais pas de mémoire non utilisée, des parties de bibliothèques non chargées du disque, car elles ne sont pas nécessaires, etc.

En pratique, vous pouvez ignorer

vsize

Sauf si vous utilisez un système 32 bits dans lequel l'espace d'adressage maximal possible pour tout processus est 4 Gb (Même si le processus utilise un volume beaucoup plus petit de RAM).

Pour répondre aux questions, connectez-vous ou registre