Question

nous utilisons memcache dans plusieurs de nos applications Rails. Maintenant, je me demandais: est-il possible d’obtenir une liste de tous les objets stockés dans memcache, y compris la quantité de données occupée par chaque valeur?

Exemple:

key       | memory(Bytes) |   %
-----------------------------------
foo_key   | 15013         |   0.3
bar_key   | 2201          |   0.05

Impossible de trouver quoi que ce soit dans la documentation ...

Merci

Matt

Était-ce utile?

La solution

Non, nous n'avons pas l'intention de prendre en charge de telles fonctionnalités.

Actuellement, toutes les opérations memcached sont O (1) (y compris les flush). Avoir une opération qui vous donne une liste de clés ne peut pas satisfaire cette contrainte. Cela nécessiterait des verrous qui seraient conservés pendant toute la durée de la demande et vous donneraient des informations inexactes au moment même où vous les verrez.

C’est le genre de chose que les gens demandent fréquemment, mais personne n’a jamais présenté de cas d’utilisation où a) ils en avaient besoin et b) ils utilisaient memcached de manière non nuisible pour leur environnement.

Pensez au principe d’incertitude de Heisenberg et au stockage éphémère.

Autres conseils

Non. C'est un cache, pas une base de données. Si vous devez faire des choses comme ça, vous ferez mieux avec autre chose que Memcached.

Voir la FAQ pour plus de détails informations

Memcached n’a jamais vraiment agi comme une base de données, pouvant interroger un ensemble de lignes spécifié, etc.

.

Si vous voulez une base de données basée sur la mémoire, vous pouvez utiliser MySQL et créer un Tables MEMORY . Ils fonctionnent uniquement en mémoire, en contournant les accès lents basés sur disque pour vous offrir des performances supérieures.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top