Низкая скорость сайта с большим количеством товаров
Есть сайт с 14к товарами
насколько я понимаю, для минишопа это не проблема
но он очень долго грузится, т.е. где надо, например, фильтровать все 14к товаров время ожидания ответа сервера 10-15 сек
можно ли как-то ускорить работу фильтров mfilter? вроде читал, что минишоп и 40к товаров может потянуть
насколько я понимаю, для минишопа это не проблема
но он очень долго грузится, т.е. где надо, например, фильтровать все 14к товаров время ожидания ответа сервера 10-15 сек
можно ли как-то ускорить работу фильтров mfilter? вроде читал, что минишоп и 40к товаров может потянуть
Комментарии: 17
Проблема не в минишоп, а в фильтрах.
у меня например тоже 20к товаров, все шустро работает, пока к mfliter2 мне не пришлось прицепить остатки. и теперь каталог грузится по 30 секунд.
никто из разработчиков плагинов mfilter и remains так и не разобрались.
Понятно стало только то что при подключении remains к выводу, идет огромное количество запросов
у меня например тоже 20к товаров, все шустро работает, пока к mfliter2 мне не пришлось прицепить остатки. и теперь каталог грузится по 30 секунд.
никто из разработчиков плагинов mfilter и remains так и не разобрались.
Понятно стало только то что при подключении remains к выводу, идет огромное количество запросов
да, проблема именно в mfilter
т.е. решения особо нет?
т.е. решения особо нет?
Если хочешь, можешь попробовать FlatFilters
спасибо, наверное буду пробовать
после установки плагина сайт упал( HTTP ERROR 500
Ставить раннюю alpha версию альтернативного компонента фильтрации на боевой сайт — не нужно 100%.
проблема была в версии php на которую ругался плагин SendIt. подняли с 7.3 до 7.4 — норм
спасибо за оперативную помощь @Артур Шевченко
спасибо за оперативную помощь @Артур Шевченко
Если remains отключить сайт быстрее работает? или так же?
у меня нет remains…
если вы имеете ввиду плагин для учёта остатков
если вы имеете ввиду плагин для учёта остатков
Если убрать хотя бы сортировку по остаткам, то в 10 раз быстрее грузятся категории.
Причем замечено, чем больше товаров категории, тем затуп сильнее.
От 50 товаров уже становится заметно.
Все вызовы по инструкциям компонентов, ни каких велосипедов.
Если интересно посмотреть на это, могу в теле доступ дать
Причем замечено, чем больше товаров категории, тем затуп сильнее.
От 50 товаров уже становится заметно.
Все вызовы по инструкциям компонентов, ни каких велосипедов.
Если интересно посмотреть на это, могу в теле доступ дать
Причин может быть множество.
Нужно и структуру каталога посмотреть, и вызов сниппета mFilter2, и чанк для отображения строки с товаром.
После этого изучить формируемый sql запрос, что там… Поставьте debugParser для первичного анализа еще.
На ваш вопрос нет однозначного ответа и волшебной кнопки.
mFilter2 может работать относительно быстро с большим кол-вом товаров, но нужно аккуратно его использовать.
Нужно и структуру каталога посмотреть, и вызов сниппета mFilter2, и чанк для отображения строки с товаром.
После этого изучить формируемый sql запрос, что там… Поставьте debugParser для первичного анализа еще.
На ваш вопрос нет однозначного ответа и волшебной кнопки.
mFilter2 может работать относительно быстро с большим кол-вом товаров, но нужно аккуратно его использовать.
поигрался еще с debugParser
вот параметр фильтра
НО с ms|price:number время ответа 50 секунд
как фильтр цены может так влиять на время ответа?
вот параметр фильтра
&filters=`
ms|price:number,
tv|ms_type,
tv|ms_type-lamp,
tv|ms_style,
tv|ms_tsvet-stekla,
tv|ms_material,
tv|ms_shyrina:number,
tv|ms_vysota:number,
tv|ms_dlyna:number,
tv|ms_diametr:number,
tv|ms_kolich-lamp:number,
tv|ms_brand,
`
ЕСЛИ убираю ms|price:number (т.е. фильтр цены), то время ответа примерно 3 секунды, что терпимоНО с ms|price:number время ответа 50 секунд
как фильтр цены может так влиять на время ответа?
prepareSnippet стоит, он может поддормаживать
куча tv в фильтре, причем фильтруются как number. Вы же знаете, что tv хранятся в базе в виде строки, и каждый раз при фильтрации они к числу приводятся, что есть медленно
у вас 72 тысячи (!) запросов! есть над чем подумать.
куча tv в фильтре, причем фильтруются как number. Вы же знаете, что tv хранятся в базе в виде строки, и каждый раз при фильтрации они к числу приводятся, что есть медленно
у вас 72 тысячи (!) запросов! есть над чем подумать.
72 тысячи запросов как раз тогда, когда есть фильтр по цене, без него — 1 тысяча запросов, но дело в том, что это по сути обычный вызов снипета как на большинстве магазинах с десятком тв полей…
ЕСЛИ убираю ms|price:number (т.е. фильтр цены), то время ответа примерно 3 секунды, что терпимоОчень просто.
НО с ms|price:number время ответа 50 секунд
как фильтр цены может так влиять на время ответа?
В miniShop2 есть событие для изменения цены товара плагинами — msOnGetProductPrice. Если у вас установлены какие-то плагины, меняющие цены, то они срабатывают в момент подготовки фильтров. И генерируют вам дополнительные десятки тысяч запросов.
Нужно разбираться, какой плагин и зачем это делает.
спасибо, именно в этом проблема была
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.