Можно ли установить время жизни (TTL) для ключа memcached на бесконечный? - PullRequest
10 голосов
/ 17 мая 2011

Я реализовал memcache в своем приложении на основе PHP-MySQL, и он регулярно обновляется из бэкэнд-процесса.

Из-за этого некоторые данные конфликтуют со временем истечения срока действия и другими внутренними процессами, поэтому я нашел решение, но для этого мне пришлось бы сделать TTL = бесконечным.

Ответы [ 3 ]

19 голосов
/ 17 мая 2011

Легко - просто напишите 0 там.

истекает

Время истечения предмета. Если это равно нулю, элемент никогда не будет истекает . Вы также можете использовать Unix отметка времени или количество секунд начиная с текущего времени, но в В последнем случае количество секунд может не более 2592000 (30 дней).

5 голосов
/ 17 мая 2011

Вы можете установить TTL на 0, что означает, что он не должен истекать никогда.

Но помните, что оно никогда не будет бесконечным. Данные хранятся в памяти и будут потеряны при некоторых обстоятельствах, наиболее очевидным из которых является перезагрузка сервера. :)

У вас всегда должна быть возможность восстановить эти данные при сбое memcache.

Более подробную информацию можно найти здесь .

0 голосов
/ 17 мая 2011

Насколько я знаю, если вы не установите ttl, он никогда не истечет.

Тем не менее, существуют заменяющие политики для ключей, о которых вы можете прочитать здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...