Вопрос для программистов:
Предположим, у нас имеется некий кеш, который должен содержать произвольные данные. Данные имеют срок годности, для каждой единицы данных разный, который определяется клиентом. Есть два способа общаться с таким кешем:
1. Когда что-то кладется в кеш, клиент говорит срок годности (возьми А и держи 5 минут)
2. Когда что-то берется из кеша, клиент говорит срок годности (дай мне А не старше 5 минут)
Есть ли какие-то причины предпочитать один из этих способов другому, и если да, то какие?
Tags:
no subject
no subject
no subject
вполне конкретным критериям.
предположим у нас в кеше есть данные которые запрашиваются часто, живут недолго, получить свежие мы может достаточно быстро и дешево. и другие которые должны жить долго,
запрашиваются несколько меньше но их свежая копия нам стоит дорого. при втором способе кешь не знает какие данные уже не актуальны, он всегда будет вынужден выбирать из "свежих"
поэтому может получится что будут удалены "дорогие" данные.
вообще второй способ вполне можно скомбинировать с первым, т.е данные в кеш имеют с ttl который указывается при store, но клиент может при запросе указать "свежесть" данных.
таким образом для разных данных можно получить разные политики комбинируя разные параметры.
P.S тут http://www.hpl.hp.com/techreports/1999/HPL-1999-69.html про cache policy для squid, может что для себя найдете полезного.