Question

Je stocke actuellement des pages HTML générées dans un cache memcached en mémoire. Cela fonctionne très bien, mais je suis désireux d'augmenter la capacité de stockage du cache au-delà de la mémoire disponible. Ce que je voudrais vraiment est:

  1. sémantique memcached (à savoir pas fiable, juste un cache)
  2. memcached api préféré (mais pas obligatoire)
  3. grand cache de premier niveau en mémoire (MRU)
  4. énorme cache de second niveau sur disque (principal)
  5. évincé de cache sur disque au stockage maximum en utilisant LRU ou LFU
  6. implémentation éprouvée

Dans la recherche d'une solution que j'ai trouvé les solutions suivantes, mais ils ont tous manquez mes marques d'une certaine façon. Est-ce que quelqu'un sait soit:

  • d'autres options que je ne l'ai pas considéré
  • une façon de faire memcachedb faire les expulsions

Déjà considérée sont:

memcachedb

  • meilleur ajustement, mais ne rend pas les expulsions: explicitement « pas un cache »
  • ne vois aucune façon de faire les expulsions (manuelle ou automatique)

Tugela cache

  • abandonné, pas de soutien
  • ne veulent pas le recommander aux clients

nmdb

  • ne pas utiliser api memcache
  • nouvelle et non prouvée
  • ne veulent pas le recommander aux clients
Était-ce utile?

La solution 2

Il semble que les versions ultérieures de memcachedb peuvent être nettoyés manuellement si désiré à l'aide du rget commande et le stockage de la date d'expiration de l'enregistrement de données. Bien sûr, cela signifie que je livre à la fois le serveur et réseau avec les demandes de l'ensemble de bloc de données, même si je ne veux que l'heure d'expiration. Pas la meilleure solution, mais apparemment la seule disponible actuellement.

Autres conseils

J'ai travaillé avec ehcache et il fonctionne très bien. Il a dans le cache de la mémoire et le stockage sur disque avec différents politiques d'expulsion. C'est une bibliothèque mature avec un bon soutien. Il y a un api memcached qui enveloppe ehcache, spécialement développé pour le soutien GAE.

Cordialement,   Jonathan.

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