Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

OpenCart с базой товаров 100к+


Recommended Posts

Всем привет!

 

Есть задача сделать магазин для 100-200-300 тысяч и более товаров.

 

Используется OC 1.5.6, из весомых нестандартных решений установлены: модуль фильтрации по цене\атрибутам, причем в категориях выводятся товары из подкатегорий и атрибуты в модуле тоже выводятся по всем товарам из подкатегорий.

 

Подскажите, что желательно оптимизировать для шустрой работы такого магазина?

Я думаю, что вся оптимизация работы - это оптимизация БД, но куда именно смотреть, сходу не пойму.

 

И заодно вот такой вопрос еще есть (мне кажется, этот запрос сильно тормозит работу) - это getProducts, который для каждого товара делает отдельный запрос из getProducts. Стоит ли поменять этот запрос, чтобы сразу возвращал все значения, не обращаясь к функции getProducts? 

Добавил индекс для url_alias, для некоторых полей товаров.

 

Сейчас страница категории с 80к товарами грузится 7 секунд, 6.5 из которых - ожидание ответа сервера (с включенным модулем фильтрации по атрибутам) и 3.5 секунды (3 секунды ожидание сервера) с выключенным модулем фильтрации по атрибутам.

 

Понимаю, что вопрос совсем не простой, но, может быть, кто-то работал с большими базами, даст советы по оптимизации работы? 

 

Заранее спасибо! Думаю, тема может быть еще кому-нибудь полезна (поиском не нашел похожей)

Змінено користувачем Гість
Надіслати
Поділитися на інших сайтах

Вам надо к Мише обращаться, он должен быть в курсе в личку скину контакт

 

Миша уже сам здесь. :-)

 

 

Все решаемо, 100 - это семечки.

Есть и по 500 000 примеры если надо.

 

 

И заодно вот такой вопрос еще есть (мне кажется, этот запрос сильно тормозит работу) - это getProducts, который для каждого товара делает отдельный запрос из getProducts. Стоит ли поменять этот запрос, чтобы сразу возвращал все значения, не обращаясь к функции getProducts? 

Добавил индекс для url_alias, для некоторых полей товаров.

 

Это первые два из сотни, проблем, которые у вас возникнут. А еще есть поиск. Карта сайта и еще... и еще ... и еще....

Цена вопроса настройки системы  100к+  от $200. Если обладаете бюджетом - пишите в личку.

Надіслати
Поділитися на інших сайтах

Миша уже сам здесь. :-)

 

 

Все решаемо, 100 - это семечки.

Есть и по 500 000 примеры если надо.

 

 

Это первые два из сотни, проблем, которые у вас возникнут. А еще есть поиск. Карта сайта и еще... и еще ... и еще....

Цена вопроса настройки системы  100к+  от $200. Если обладаете бюджетом - пишите в личку.

 

спасибо за предложение, но есть время сделать все своими руками, хотел просто узнать какие-то самые тормозные места, может кто поделился бы своим опытом

Надіслати
Поділитися на інших сайтах

спасибо за предложение, но есть время сделать все своими руками, хотел просто узнать какие-то самые тормозные места, может кто поделился бы своим опытом

 

Я вот не знаю, как можно поделиться опытом, который приобретался в течении пяти лет.

Начинать нужно видимо с азов устройства реляционных баз данных. Принципов работы web-сервера.

После этого перелопатить массу информации связанной с оптимизацией запросов. Тонкой настройкой MySql. Принципах работы разных типов индексов на разных типах полей.

Также нужно очень внимательно и детально изучить работу системных библиотек Opencart  и встроенные методы построения деревьев базовых сущностей.

После этого освоить навыки управления и настройки vsp сервера. Изучить особенности использования, интеграции и настройки поискового демона Sphinx.

Освоить парадигму написания CLI скриптов.

 

И может быть тогда, с вероятностью пятьдесят на пятдьесят, вы сможете привести магазин в какое то подобие быстрой стабильной системы.

  • +1 2
Надіслати
Поділитися на інших сайтах

Поискав чуть получше, нашел вот такую тему:

https://opencartforum.com/topic/17709-%D0%BE%D0%BF%D1%82%D0%B8%D0%BC%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F-%D0%B4%D0%B2%D0%B8%D0%B6%D0%BA%D0%B0-%D0%BF%D0%BE%D0%B4-120-000-%D1%82%D0%BE%D0%B2%D0%B0%D1%80%D0%BE%D0%B2/

 

Так что, думаю, что тему стоит закрыть

Надіслати
Поділитися на інших сайтах

Я вот не знаю, как можно поделиться опытом, который приобретался в течении пяти лет.

Начинать нужно видимо с азов устройства реляционных баз данных. Принципов работы web-сервера.

После этого перелопатить массу информации связанной с оптимизацией запросов. Тонкой настройкой MySql. Принципах работы разных типов индексов на разных типах полей.

Также нужно очень внимательно и детально изучить работу системных библиотек Opencart  и встроенные методы построения деревьев базовых сущностей.

После этого освоить навыки управления и настройки vsp сервера. Изучить особенности использования, интеграции и настройки поискового демона Sphinx.

Освоить парадигму написания CLI скриптов.

 

И может быть тогда, с вероятностью пятьдесят на пятдьесят, вы сможете привести магазин в какое то подобие быстрой стабильной системы.

 

Большая часть описанного мне хорошо знакома, просто быстрее дело идет, когда кто-то делится своим накопленным опытом

Надіслати
Поділитися на інших сайтах

К сожалению, по вашему первому посту, складывается ощущение, что вам знакомо это все достаточно поверхностно. Так как.

 

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

Соответсвенно любые изменения в его структуру влекут за собой все последствия, сопутствующие денормализации базовых функций.

 

А если бы вы еще более внимательно присмотрелись к этому запросу, то возможно используя навыки создания сложных индексов, вы бы смогли обнаружить возможности, существенного сокращения итераций при выполнении основного запроса этого метода.

Надіслати
Поділитися на інших сайтах

К сожалению, по вашему первому посту, складывается ощущение, что вам знакомо это все достаточно поверхностно. Так как.

 

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

Соответсвенно любые изменения в его структуру влекут за собой все последствия, сопутствующие денормализации базовых функций.

 

А если бы вы еще более внимательно присмотрелись к этому запросу, то возможно используя навыки создания сложных индексов, вы бы смогли обнаружить возможности, существенного сокращения итераций при выполнении основного запроса этого метода.

 

Да может все и так, поэтому и создал тему. Если бы все было понятно на 100%, зачем ее создавать? Просто вы предложили решить проблему за деньги, а я пришел за тем, чтобы получить направление, куда копать, и решить ее самому. Я не спорю, что проблема серьезная, эффективно можно решить, обладая большим опытом, но тему создал в разделе "Помощь программистам и разработчикам", помощь хотел получить не в виде решения этой проблемы за меня.

Надіслати
Поділитися на інших сайтах

Ваш вопрос  - не является общим. И только частично затрагивает программирование  и разработку. А больше относится к сфере тонкого системного администрирования. Подобных вашему посту на форуме - пруд пруди. Поищите поиском. Решения  в "один клик" или в "три клика" - не существует.

Надіслати
Поділитися на інших сайтах

Ваш вопрос  - не является общим. И только частично затрагивает программирование  и разработку. А больше относится к сфере тонкого системного администрирования. Подобных вашему посту на форуме - пруд пруди. Поищите поиском. Решения  в "один клик" или в "три клика" - не существует.

 

Вы меня неверно поняли. Я просил поделиться опытом. Решение в 1 клик или в 3 клика я не искал. Я примерно представляю проблемные места CMS. Нужные ответы нашел в теме, которую указал уже в 6м сообщении. Поэтому прошу тему закрыть, обсуждать более нечего, мне кажется. Вам спасибо за отклик

Надіслати
Поділитися на інших сайтах

Вы меня неверно поняли. Я просил поделиться опытом. Решение в 1 клик или в 3 клика я не искал. Я примерно представляю проблемные места CMS. Нужные ответы нашел в теме, которую указал уже в 6м сообщении. Поэтому прошу тему закрыть, обсуждать более нечего, мне кажется. Вам спасибо за отклик

Если вас не затруднит, когда вы своими силами, что-то сделаете, покажите результат.

Надіслати
Поділитися на інших сайтах

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.