Илья
ну а зачем обязательно все 50 тыс. ресурсов кешировать сразу?
Илья
выбрать контент из базы - это один запрос и необязательно всем пользователям показывать кеш
Илья
один запрос не сильно увеличит время загрузки
Илья
просто можно, конечно, вызвать в шаблоне кешированный сниппет, который будет в базу данных записывать событие кеширования текущего ресурса
Илья
а при очистке кеша базу чистить
Илья
Тогда всегда в базе будет список закешированных ресурсов. Из базы этот список брать гораздо правильнее, чем из списка файлов
Илья
но просто я не уверен, что вся эта схема того стоит
Миша
Чё там по грибы?
Evgeniy
но просто я не уверен, что вся эта схема того стоит
А как же кеширование хлебных крошек, меню( class="active") иконка к товару в зависимости от категории и прочие мелочи доходят до 0.3 сек
Evgeniy
Из Кеша 0.1
Илья
меню( class="active") можно проставлять на JS
Илья
а вот с хлебными крошками - это интересно...
Илья
но, думаю, если меню закешировать, то 0.2 стабильно будет без кеша
Evgeniy
Взял однотипную страницу, самое долгое это babel 0.04 и кнопка предыдущий продукт, msproducts 0.025, wayfinder 0.01
Илья
понятно
Evgeniy
Можно ли как-то отдельно закешировать babel?
Evgeniy
Но чтобы он нормально определял где какой контекст)
Evgeniy
Вообще по поводу Кеша много вопросов без ответа, которые требуют время на тесты, которого не так и много) например как закешировать сниппет с параметром RAND()?
Evgeniy
Почитать бы про чем-нибудь опыт в этом плане, но подобных статей всего пара штук и весьма общих
Илья
я с Babel особо не работал. Он нужен, чтобы выдать ссылку на ту же страницу, но на другом языке?
Evgeniy
Да,site.ru/en/uri
Баха Волков
И проверять
Баха Волков
Я как-то на форуме кому-то отвечал, правда не помню, помогло ли
Баха Волков
Может даже тебе
Evgeniy
Вернуть рандомные id и засунуть их в сессию
А можно немного подробнее? Есть компонент Bannery, с параметром rand, необходимо показывать 3-4 баннера на 1 и той же позиции при каждой загрузке разный.
Evgeniy
У меня что-то с кешем это не вяжется)
Evgeniy
Точно не мне)
Evgeniy
На сайте висит баннер. Нажимая f5 надо получить на этом месте другой баннер.
Илья
Может даже тебе
возможно мне, но там было по рандомизации товаров)
Evgeniy
Чтобы из 1000 посетителей, 500 увидело 1 баннер, другие 500 - другой баннер. Если считать что каждый открыл страницу 1 раз
Evgeniy
Ну чтобы быстрее)
Илья
Помогло?)
Да, если был вариант выводить в 2 запросах (в первом рандомизировать, во 2 упорядочить по первому запросу).
Баха Волков
Ну чтобы быстрее)
А баннеров много?
Evgeniy
А баннеров много?
Рандомные на странице в 3 местах. На каждой позиции может быть 3-4 изображения
Баха Волков
Да, если был вариант выводить в 2 запросах (в первом рандомизировать, во 2 упорядочить по первому запросу).
Нужен был один сниппет который бы проверял кэш/сессию и в случае отсутствия рандомизировал бы запрос, сохранял в кэш/сессию и вывел бы, надеюсь ты сделал так или даже лучше
Alexey
О, спасибо за идею с кешем рандомного вывода
Alexey
Если результатов не сильно много вариантов, их же все можно закешировать
Баха Волков
Рандомные на странице в 3 местах. На каждой позиции может быть 3-4 изображения
Тут мне кажется либо с кэшем играться, либо есть идея сделать на js
Alexey
А уже из закешированного рандомно выбирать
Илья
Нужен был один сниппет который бы проверял кэш/сессию и в случае отсутствия рандомизировал бы запрос, сохранял в кэш/сессию и вывел бы, надеюсь ты сделал так или даже лучше
я сделал без кеша, просто на феноме вызвал 2 раза, сохранял результат в переменную и сортировал потом по переменной, но в 1 вызов наверное правильнее, будет время - перепишу)
Баха Волков
Рандомные на странице в 3 местах. На каждой позиции может быть 3-4 изображения
Выгружаешь из кэша все баннеры в js объект например и уже у клиента рандомно выводишь в разных местах разные
Evgeniy
В объект не получится, надо чтобы ротация рандомные была у всех 3 позиций баннеров
Баха Волков
Хотя не думаю, что жопа стоит свечь
Evgeniy
Ну для меня это пока магия)
Evgeniy
Был сайт до этого, на CI написанный. Он загружался за 0.7 секунд. Переделали на modx - 1.7 и начались танцы с кешем)
Alexey
свой некешируемый сниппет-обертка, а внутри уже вызов сниппета и кешменеджер модх можно подключать в дело
Баха Волков
Был сайт до этого, на CI написанный. Он загружался за 0.7 секунд. Переделали на modx - 1.7 и начались танцы с кешем)
Использую файловые элементы от fenom и нет проблем с скоростью, я сейчас скажу одну провокационную штуку, но лично для меня pdoTools с fenom спасли MODX
Alexey
так бы до сих пор с компонентом [[!IF ]] е*ались
Alexey
или с модификаторами
Баха Волков
Когда появится полноценная возможность использования кастомного парсера, т.е. чтобы парсер MODX совсем не участвовал, будет круто, жду от Сергея Шлокова статью и решение, он вроде обещал показать как можно сделать на данный момент
Баха Волков
так бы до сих пор с компонентом [[!IF ]] е*ались
Это дело вкуса конечно, но наследования нет потому и плохо
Alexey
Это дело вкуса конечно, но наследования нет потому и плохо
Да ладно ты, трудно чтоли по ~20 шаблонам пройтись и в каждый вставить чанк/или что там нужно
Баха Волков
или с модификаторами
Я помню как мне попадались такие конструкции в которых хрен разберёшься))
Alexey
Я помню как мне попадались такие конструкции в которых хрен разберёшься))
Сам охреневал, если отступы не расставлены еще, то не накатив не разберешься. Кстати, сейчас проект на битриксе пилим, тоже не могу понять логику в оступах в их спагетти-коде
Evgeniy
А с феномом количество шаблонов уменьшается?
Evgeniy
В 1 шаблоне шаблоне писать условие и разный вывод? Не работал с ним ещё)
Alexey
В 1 шаблоне шаблоне писать условие и разный вывод? Не работал с ним ещё)
Количество шаблонов зависит от разработчика. Уходит дублированность кода
Баха Волков
Evgeniy
Разве не от количества различающихся страниц ? Иначе будет дольше обрабатываться
Баха Волков
Просто наследуется один шаблон
Alexey
Разве не от количества различающихся страниц ? Иначе будет дольше обрабатываться
Иногда это борьба только ради борьбы за миллисекунды скорости загрузки. Пользователю на них будет наплевать. Но наплодив шаблонов без причины осложните себе жизнь в будущем
Alexey
Всё в меру надо )
Баха Волков
Всё в меру надо )
У меня была шутка про геморрой, но не буду настроение портить людям))
Evgeniy
Благодарю за пояснения, надо будет разобраться с ним)
Alexey
Благодарю за пояснения, надо будет разобраться с ним)
Да что разбираться, надо брать и делать, не так уж там сложно. Если с ООП проблем нет, то в наследовании шаблонов/чанков тоже не проблема разобраться
Alexey
😄
у кого-то может норма меряется кулаком, тут я пас)