Магазин на 500 000+ товаров

Добрый день.
Есть задача сделать магазин на 570 000 товраов.
Товары простые — у них почти нет свойств, кроме изображения, описания и цены.

Первая проблема — это напролнение.
Модуль Импорт/Экспорт вешается. По моим расчетам ему надо 3-4 недели чтобы все загрузить )))

Это решилось импортом напрямую через запрос в БД. Слава mysql и после импорта 4 таблиц все товары на месте примерно за 15-20 минут.

Но начинается новый прикол, что до 300 000 товаров сайт еще более-менее живой и время отклика «около вменяемое» порядка 1000-1500 м/сек.

Но как только мы переваливаем за 400 тыс, время отклика уходит в 3-5 м/сек, а после 500 000 товаров доходит до 7 м/сек.
А в некоторых случаях сайт просто начинает отдавать 500 ошибку прямо с главной страницы.

Как быть с таким количеством наименований?
это просто магазин крепежа — куча разных винтиков разного размера и разной фасовки.

Тут нет модификаций, нет связей, один товар — одна категория.
yuri
19 марта 2021, 13:41
modx.pro
1
749
0

Комментарии: 12

Наумов Алексей
19 марта 2021, 14:17
0
Да не раз обсуждалось в этом же сообществе…
Во первый кеш… он как бы в modx файловый по-умолчанию… уходите от этого.
Если товары простые — может их хранить в отдельной таблице? не в дереве ресурсов?
    Роман
    19 марта 2021, 15:42
    0
    Во первый кеш… он как бы в modx файловый по-умолчанию… уходите от этого.
    В какую сторону уходить?
    Вообще конечно посмотрите, что у вас тормозит, какие запросы, и уже тогда можно будет искать решение.
    В самой карточке товара есть тормоза, или они только в каталоге присутствуют?
      yuri
      19 марта 2021, 16:08
      0
      Судя по всему и правда нужная отдельная таблица на товары или даже на группы товаров разные таблицы.
      Есть что-то по этому поводу в описании?

      Нашел тут, что кто то мучался с 300 000 товаров, но никаких итогов в вопросе там не было.
      Больше тем особо не нашел.

      Отдельные таблицы под товары потребуют изменений в самом minishop судя по всему. Если была тема или кто-то писал про что-то подобное — пришлите, вдруг поможет

      Кэш уже не спасет. Тормозит весь сайт.
      Наумов Алексей
      19 марта 2021, 16:02
      0
      Про кеш статья хорошая: modx.pro/hosting/281

      Но в идеале для товаров кеш нужно вообще отключить! Он при таких кол-вах страниц приносит больше проблем, чем ускоряет сайт.
        Александр Мельник
        19 марта 2021, 17:26
        +3
        может не верно выбран инструмент? Зачем тогда вам именно modx? У вас только товары и только категории, набросайте эту логику без всяких cms ок.
          Алексей Смирнов
          20 марта 2021, 08:53
          0
          Попробуйте отключить в положение НЕТ эти настройки: cache_alias_map и use_context_resource_table. возможно это хоть как то ускорит. Но при 500к — выводить товары нужно уже самописными сниппетами с прямыми запросами без xpdo. Тк узким местом в данном случае скорее оно, чем кеши прочее.
            Konstantin
            20 марта 2021, 09:54
            0
            Напиши @Володя, у него есть заготовочка которая тестилась на большем количестве товаров с поиском и фильтрацией. Прекрасно себя показала. Естественно оно продается, но, уверяю, стоит того.
              yuri
              20 марта 2021, 12:32
              0
              попробовал отключить xpdo — скорость осталась на дне. возможно, что это не он.
              постоянно идут ошибки о медленных запросах mysql
                Алексей Смирнов
                20 марта 2021, 20:35
                0
                отключить xpdo не возможно. она либо есть либо (нет) прямые запросы. Проверьте используются ли в БД индексы.
                Ну и смотря какой хостинг. Ну и частота процессора очень сильно влияет на быстроту mysql.
              yuri
              20 марта 2021, 12:33
              0
              возможно есть вариант разделить таблицы товаров и объектов или что-то в этом духе? или разделить таблицы товаров по категориям, тогда в каждой категории выйдет по 50-100 тыс товаров. а с ними система работает.
                Алексей Смирнов
                20 марта 2021, 20:35
                0
                А у вас ВСЕ товары только в 1й категории?
                  yuri
                  20 марта 2021, 23:05
                  0
                  парент один, да. а привязка по дереву ко многим
                Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
                12