URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 9070
[ Назад ]

Исходное сообщение
"libmemcached: как получить время жизни из кэша"

Отправлено InfinityNsu , 16-Мрт-11 14:36 
Как при извлечении некоторого значения по ключу из кэша получить оставшееся время жизни этого ключа в кэше и точную дату, когда этот ключ был добавлен в кэш? Сижу копаюсь в исходниках, нашла там структурку memcached_result_st, в которой есть что-то похожее, но что-то так и не поняла, как ее наружу заполучить. Там еще есть установка коллбэков, но тоже не очень понимаю, где и как они вызываются...

Помогите, пожалуйста.


Содержание

Сообщения в этом обсуждении
"libmemcached: как получить время жизни из кэша"
Отправлено anonymous , 18-Мрт-11 16:21 
> Как при извлечении некоторого значения по ключу из кэша получить оставшееся время
> жизни этого ключа в кэше и точную дату, когда этот ключ
> был добавлен в кэш?

вероятно, придется менять протокол.  или хранить эти данные самому (в value)

но, собственно, зачем?


"libmemcached: как получить время жизни из кэша"
Отправлено InfinityNsu , 30-Мрт-11 13:01 
>или хранить эти данные самому (в value)

Уже так сделала.

> но, собственно, зачем?

На сервере есть кэш, в котором хранятся данные. Данные попадают туда так: пришел запрос от клиента, я генерю нужный ему ответ, этот ответ складывается определенным образом в буфер. Ответ валиден только до времени обновления базы данных, поэтом у я кладу все это в кэш на время до следующего обновления. Клиенту отдаются данные c HTTP заголовками в которых указано это самое время кэширования, чтобы кэшировалось еще и в браузере. Если те же данные запросит другой клиент, мне надо отдать ему время, оставшееся на хранение в серверном кэше.



"libmemcached: как получить время жизни из кэша"
Отправлено anonymous , 01-Апр-11 01:44 
> На сервере есть кэш, в котором хранятся данные. Данные попадают туда так:
> пришел запрос от клиента, я генерю нужный ему ответ, этот ответ
> складывается определенным образом в буфер. Ответ валиден только до времени обновления
> базы данных, поэтом у я кладу все это в кэш на
> время до следующего обновления.

т.е. время до следующего обновления предсказуемо?

> Клиенту отдаются данные c HTTP заголовками в
> которых указано это самое время кэширования, чтобы кэшировалось еще и в
> браузере. Если те же данные запросит другой клиент, мне надо отдать
> ему время, оставшееся на хранение в серверном кэше.

nice trick