Перейти к содержанию
Официальный форум поддержки Simpla

Подбор товара по параметрам , фильтры (динамически изменяемые в зависимости от условий подбора).


Рекомендуемые сообщения

Всем добрый день.

Есть вопрос о том как (каким способом - идеей) реализовать фильтр

подобный как на http://hotline.ua/computer/noutbuki-netbuki/

 

Поясню : Выбираем один (или несколько )критерий подбора и фильтр перестраивается в зависимости от того какие товары удовлетворяют его параметрам. Т.е. выбрав только нетбуки - остаются фильтры под диагонали экранов 9, 10 , 12 , 13 другие - недоступны , т.к. с большим экраном уже ноутбуки.

При этом есть возможность как более детально углубленно производить подбор из комплекта фильтра, т.е. например: все модели нетбуков (всех диагоналей) но только фирм Эйсер и Асус которые имеют беспроводный интерфейс WiFi.

 

Почему неподходит тот фильтр который в базовой поставке симплы?

Т.к. слишком сложный запрос при 1000 товарах занимает около 1 секунды при ненагруженном хостинге.

Что для меня очень критично...

 

Понятно что структура таблиц которые будут использоваться для ускорения (оптимизации) запроса должны быть немного другими.  (Вопрос какими на ВАШ взгляд).

Хранить все критерии в одной отдельной таблице - нецелесообразно , отдельными таблицами - как например

Табл 1 - Свойства участвующие в фильтре

Табл 2 - Таблица соответствий свойств и товаров

И т.д.

 

Трудность пока в золотой середине между сложностью выборки  при подборе фильтра и скоростью работы запроса.

Высокая скорость - достигается при сложной структуре таблиц и резком увеличении кол-ва таблиц (практически на каждый параметр свойства фильтра - отдельная таблица).
Если менять логику поиска и уменьшать таблицы участвующие в запросе - тогда усложняется запрос и соответсвенно уменьшается скорость выполнения запроса.

 

Прошу помощи подсказать идею формирования сложных фильтров с минимальными затратами ресурсов хостинга как по памяти , так и по места и структуры БД.

 

 

Еще одно малое отступление от темы - почему неиспользуется механизм кеширования? Директория кеша - есть но она пуста постоянно.

Как включить механизм кеширования для частного случая фильтров подбора (именно из-них происходит торможение БД). Может кеширование спасет.

И кстати повторяющиеся запросы к БД тоже можно былобы кешировать хоть в массив и записывать в файл кеша.

 

Буду рад дельным советам - при детальных вопросах поясню подробнее что именно хочу получить.

Заранее спасибо.

Ссылка на сообщение
Поделиться на другие сайты

я бы не сказал что стоит сильно оптимизировать. На данном механизме можно построить нормальные фильтры, понятно дело что скорее всего обычного хостинга не хватит, что придется брать VPS. У меня лично в поддержке есть 5 проектов где количество товаров от 7тыс - 22тыс / ~4тыс уников. Везде стоит VPS 1x2.6Ghz, 512 Мб ОП. Полет нормальный.

Ссылка на сообщение
Поделиться на другие сайты

Для osben

Если не затруднит показать пример такого сайта с динамическим фильтром как на Хотлайне - без кеша так сказать без изменения структуры БД и дополнительных таблиц.

 

И еще открытый вопрос кеширования определенной части страницы или всей (некотрых страниц, разделов ) сайта.

Как включить механизм кеширования (без мемкеша ) - есть ли он (механизм кеширования) вообще в КМС или его надо добалять.

(напомню что директория cache - в базовой комплектации идет но она пустая).

Для чего ? Хочу кешировать постоянно повторяющиеся запросы к БД и особо ТЯЖЕЛЫЕ запросы, потом кроном чистить или при аптедте таблиц (добавлении / изменении товара) или по времени 1-2 раза в сутки.

 

Опять таки буду рад дельным и обосновательным ответам.

Ссылка на сообщение
Поделиться на другие сайты

Вопрос по кешированию пока открытый , если есть скрытое кеширование в сипле - то рад об этом узнать по подробнее...

Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...