зачем периодически?
mashi 20.02.2006 20:06
Вообще, наиболее разумно было бы переодически считать и кешировать дерево в виде хешей, но в парсере нет средств сериализации для этого типа данных.
Зачем периодически?
Достаточно один раз, после любого изменения конфигурации дерева.
Разве что пересчитывать не все дерево, а только там где это надо.
Например, поменяли у элемента имя или родителя -- перстраиваем его full_path, nesting и thread_id, а ткже у всех его потомков.
В процессе сборки страницы по какомуто запросу, необходимо вытаскивать не все дерево, а лиш конкретную ветку с требуемым уровнем вложености (where thread_id=x and nesting=5) + полные два верхних уровня (корень сайта и корни всех разделов)
Этой ветки будит достаточно для постороения главного меню, меню раздела и хлебных крошек.
Для построения карты сайта прийдется один раз вытащить все дерево. Дальше будет работать кеш запроса, до тех пор пока админка не удалит кеш.
Для формирования ссылки на внутренние страницы других разделов прийдется лезть в базу за конкретным элементом дерева (но это ведь один раз: потом работает кеш)
Короче говоря, все можно кешировать без даты и срока, а при наступлении изменений -- удалять соотв. кеш-файлы.
- Предлагаю оптимизировать класс uri.p, mashi 29.11.2005 21:08 / 29.11.2005 21:13
- uri (класс): исправления и доработки, Никита Козин [M] 03.02.2006 14:36 / 03.02.2006 14:36
- Ответ, mashi 03.02.2006 20:26
- дополнения, dev 02.12.2005 18:20 / 02.12.2005 18:25
- Ответ, mashi 06.12.2005 20:48 / 06.12.2005 20:53
- Ответ, Misha v.3 [M] 01.12.2005 18:34 / 01.12.2005 18:56
- идея мне нравится, dev 01.12.2005 13:35
- ответ:, mashi 01.12.2005 15:37
- Ответ, dev 01.12.2005 18:12
- Ответ, mashi 02.12.2005 01:25
- Ответ, dev 02.12.2005 14:02
- Ответ, dev 02.12.2005 13:29
- children (-), Александр Петросян (PAF) [M] 01.12.2005 19:14
- @geveme...[] - афтар жжошь! пеши есчо! :) (-), Misha v.3 [M] 29.11.2005 22:14