![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| Bangladesh |
|
|||
![]() AsBest ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1089 Регистрация: 4.9.2004 Где: Калининград Репутация: нет Всего: 17 |
здравствуйте
ситуация: в админ-панеле, где редактируются товары и разделы, очень долго выводиться само иерархическое дерево. там используется рекурсия + каждый раздел обрабатывается и выводиться кол-во товаров в разделе — обычное дело, но всё это ужасно медлеенно даже на локальной машине (около 10 сек). понятно, что при кол-ве товаров в 20к, к которым надо подгрузить фотки, клиенту это не понравиться. допустим: есть переменная $result в которую записывается весь выходящий код. задача: сделать так, чтобы, если переменная уже раз была заполнена, то она заполнялась автоматически предыдущим кодом. вопрос: как это сделать, если можно? спасибо. -------------------- ок |
|||
|
||||
| vasac |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1060 Регистрация: 4.5.2006 Репутация: 8 Всего: 36 |
I, GyoZ, как выводишь это иерархическое дерево? Наверняка можно сделать намного быстрее.
По задаче — сохрани просто где-нибудь, в файле или БД и выводи оттуда. |
|||
|
||||
| DemoCode |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 890 Регистрация: 20.10.2005 Где: Россия Репутация: 1 Всего: 41 |
А что обязательно сразу все узлы дерева выводить? Нельзя их дополнять children'ами при клике на родительсткий узел?
сохранять этот резалт в сессии. -------------------- Жить стало лучше, жить стало веселей © И.В. Сталин |
|||
|
||||
| vasac |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1060 Регистрация: 4.5.2006 Репутация: 8 Всего: 36 |
В сессии неинтересно ) Будет кэшироваться только для одного пользователя на одну сессию. Классический алгоритм кэширования чего-то подобного: - Есть кэш (нужный текст в файле или базе) - Есть признак актуальности кэша (который сбрасывается при изменении струкутры, например, при добавлении товара) - При выводе дерева, сначала проверяется кэш, если он не пустой и актуальный — выводится из него. Если нет — дерево формируется, записывается в кэш, устанавливается флаг актуальности, дерево выводится. |
|||
|
||||
| Bangladesh |
|
||||
![]() AsBest ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1089 Регистрация: 4.9.2004 Где: Калининград Репутация: нет Всего: 17 |
это функция вывода подразделов. это те, которые используются в ней:
-------------------- ок |
||||
|
|||||
| DemoCode |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 890 Регистрация: 20.10.2005 Где: Россия Репутация: 1 Всего: 41 |
А зачем перед каждым запросом заново подключаться к базе?
Подключись один раз в начале скрипта и работай с ней. Сразу и скорость на порядок возрастет. -------------------- Жить стало лучше, жить стало веселей © И.В. Сталин |
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |