January 2026

S M T W T F S
    1 23
45 678910
11121314151617
18192021222324
25262728293031

Page Summary

Style Credit

Expand Cut Tags

No cut tags

May 22nd, 2021

alex_dragon: (Default)
Saturday, May 22nd, 2021 05:04 am

Кто б на пальцах объяснил алгоритм кэширования? Как это делается? Задача такая: в некую директорию кладутся некие файлы, скрипт их обрабатывает и выдаёт некий результат. Но обрабатывает в два этапа: сперва преобразует в некую промежуточную форму, которая сохраняется в директорию кэша — каждый файл кэша соответствует одному исходному, а конечную обработку проводит уже с этими промежуточными результатами. Мякотка — сделать так, чтобы если скрипт запускается повторно, то он бы — при условии неизменности исходников — сразу работал бы с теми промежуточными данными, а не молол всё целиком заново сначала, при этом бы проверял соответствие кэша и исходников и обратно — то есть если у нас меняются исходные файлы — их становится больше, меньше, поменялись имена или как-то изменилось содержимое, то в кэше лишнее удаляется, недостающее кэшируется, несоответствующее перекэшируется, а если вдруг в кэше окажется что-то левое (скажем, кто-то по ошибке что-то скопировал в директорию кэша) — удаляется.

На словах вроде просто, а начал думать — как та сороконожка в своих ногах запутался.