6 votes

éliminer la limite de 30 jours de memcached

Pourquoi memcached impose-t-il une limite de 30 jours sur la durée de vie des entrées de cache ?

Dans mon système, je fixe toujours la durée de vie à 30 jours, car c'est la valeur maximale autorisée. Une valeur bien supérieure à 30 jours serait idéale pour mon application.

Est-il possible de remplacer la valeur "30 jours" par une autre valeur ?

J'envisage de télécharger les sources de memcached et de les recompiler pour mon propre usage. Je remplacerais le "30" par le "300" ou je me débarrasserais complètement de cette vérification. Si je faisais cela, est-ce que je changerais quelque chose qui causerait un dysfonctionnement ou une mauvaise performance de memcached ? Je m'attends à ce que les éléments soient autorisés à rester plus longtemps dans le cache, et à ce qu'ils soient retirés du cache lorsqu'il est plein.

10voto

Dustin Points 35205

30 jours est la limite à partir de laquelle nous considérons que le temps que vous avez spécifié est un TTL à partir de maintenant.

Si vous voulez plus de 30 jours, c'est parfait, il suffit d'utiliser une durée absolue ( time() + whatever ).

Si vous ne voulez pas d'expiration basée sur le temps, comme le dit ConroyP, utilisez simplement 0 .

8voto

ConroyP Points 24021

30 jours est la durée maximale pour laquelle vous pouvez spécifier une expiration, mais si vous envisagez d'éliminer complètement le contrôle de l'expiration, ne serait-il pas plus simple de fixer le délai d'expiration à 0 ? Cela signifie que les données sont stockées jusqu'à ce que le cache soit plein et qu'elles soient supprimées pour permettre l'insertion d'éléments plus récents.

A partir de la Documentation PHP Memcache :

Paramètres expire est le délai d'expiration en secondes. S'il vaut 0, l'élément n'expire jamais (mais le serveur memcached ne garantit pas que cet élément sera stocké en permanence, il peut être supprimé du cache pour laisser la place à d'autres éléments).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X