LINUX.ORG.RU
ФорумAdmin

Данные, записанные в Memcached глюк

 , ,


0

1

Зараза, поставил мемкешед, все заработало сразу, есть одна странность, если страницу быстро-быстро обновить, то «Данные, записанные при прошлой загрузке страницы:» он мне отдает, если же делать это с разницей в пару секунд, bool(false) куда смотреть то?


if (!class_exists("Memcache"))  exit("Memcached не установлен");
$memcache = new Memcache;
$memcache->connect('localhost', 11211) or exit("Невозможно подключиться к серве>

$version = $memcache->getVersion();
echo "Server's version: ".$version."<br/>\n";

$tmp_object = new stdClass;
$tmp_object->str_attr = 'test';
$tmp_object->int_attr = 123;

$get_result = $memcache->get('key');
echo "Данные, записанные при прошлой загрузке страницы:<br/>\n";

var_dump($get_result);

$memcache->set('key', $tmp_object, false, 300) or die ("Не получилось оставить >
echo "<br/>Записываем данные в кеш Memcached (данные будут храниться 30 секунд)>

$get_result = $memcache->get('key');
echo "<br/>Данные, записанные в Memcached:<br/>\n";

var_dump($get_result);

данные будут храниться 30 секунд

данные будут храниться не больше 30 секунд, но может быть и меньше, а может и не будут вообще.

/fixed

куда смотреть то

Если нужно именно 30 секунд, смотри в сторону redis.

no-such-file ★★★★★ ()
Последнее исправление: no-such-file (всего исправлений: 2)
Ответ на: комментарий от no-such-file

Мне нужно куда более 30 секунд, дело в том, что сам проект на dle и мне нужен именно memcache.

Я этот пример кода, привел именно, что бы показать глюк, почему значение храниться так мало, как это понять, если нет ни одного ерора и по сути все работает то, но почему мой ключ храниться так мало? связка ngnix+php-fpm

semayoda ()
Ответ на: комментарий от semayoda

https://stackoverflow.com/questions/2528414/how-long-will-memcached-data-stay...

TL;DR - сколько у тебя памяти отведено на memcached? Может он забивает кэш и стирает данные? Дефолт там - 64Mb, что в современном мире не так уж и много.

Pinkbyte ★★★★★ ()