Un cache est généralement un LRU (Least Recently Used). Il n'est pas recommandé de manipuler ceci, si vous utilisez probablement le mauvais mécanisme. Cela dit, votre système devrait fonctionner dans la plupart des cas, encore une fois, mais pourquoi?
Comme par http://code.google.com/appengine/docs/java/memcache/overview.html
Comment Expire données mises en cache Par défaut, les valeurs stockées dans memcache sont conservés aussi longtemps que possible. Les valeurs peuvent être expulsées du cache lorsqu'une nouvelle valeur est ajoutée au cache si le cache a peu de mémoire. Lorsque les valeurs sont expulsées en raison de la pression de la mémoire, les valeurs les moins récemment utilisées sont évincées en premier. L'application peut fournir un délai d'expiration lorsqu'une valeur est stockée, soit en nombre de secondes par rapport à l'ajout de la valeur, soit en tant qu'heure absolue Unix à l'avenir (nombre de secondes à partir du 1er janvier 1970 à minuit) . La valeur sera expulsée au plus tard cette fois, bien qu'elle puisse être expulsée pour d'autres raisons. Dans de rares circonstances, les valeurs peuvent également disparaître du cache avant l'expiration pour des raisons autres que la pression de la mémoire. Même si memcache résiste aux défaillances de serveur, les valeurs memcache ne sont pas enregistrées sur le disque. Un échec du service peut donc entraîner l'indisponibilité des valeurs. En général, une application ne doit pas s'attendre à ce qu'une valeur mise en cache soit toujours disponible.
J'ai étendu ma réponse en fonction des documents pour MemCache. –