Тормозит 2.3.0.2 чуть больше 5000 товаров

Тема в разделе "Ошибки и их решения", создана пользователем DiNoZavr, 28 июл 2017.

  1. solunski.d

    solunski.d Эксперт

    Сообщения:
    1.569
    Симпатии:
    432
    А зачем? Приведу пример с модулем "Рекомендуемые" товары и "Последнее добавленные"(один из полезных модулей)

    Эти товары и так есть в категориях, но нас интересует чтобы эти товары максимально быстро проиндексировались, не проблема.
    В категории сортировка идет по алфавиту, если заменить сортировку на дату добавления, то мы получим что в категориях в самом вверху будут последнее добавленные товары и + sitemap поисковику в помощь.

    Я не вижу смысла волноваться по этому поводу.

    И статья 2012 года от Yandex, старая но работает.
     
  2. Chukcha

    Chukcha Специалист

    Сообщения:
    3.013
    Симпатии:
    685
    разочарую, ORDER BY sort_order, а потом по имени

    Конечно, способов много, статья яндекса совсем о другом..
     
  3. DiNoZavr

    DiNoZavr Пользователь

    Сообщения:
    136
    Симпатии:
    10
    Модуль под названием LazyLoad в Модификаторы - присутствует.
    Вот его содержимое:
    Код:
    <?xml version="1.0" encoding="utf-8"?>
    <modification>
      <name> Lazy load</name>
      <version>1.0</version>
      <author>http://www..com</author>
     <link>http://www..com</link>
     <code>lazy_load</code>
      <file path="catalog/controller/extension/module/{featured,bestseller,latest,special}.php">
        <operation>
         <search><![CDATA[ 'thumb'       => $image,]]></search>
          <add position="after">
            <![CDATA[
           'img-width'  => $setting['width'],
            'img-height' => $setting['height'],
           ]]>
         </add>
        </operation>
      </file>
     <file path="catalog/controller/product/{category,manufacturer,product,search,special}.php">
       <operation>
         <search><![CDATA['thumb'       => $image,]]></search>
         <add position="after">
            <![CDATA[
           'img-width'  => $this->config->get($this->config->get('config_theme') . '_image_related_width'),
            'img-height' => $this->config->get($this->config->get('config_theme') . '_image_related_height'),
           ]]>
         </add>
        </operation>
      </file>
    </modification>
    Отключил все модули в Модификаторы, кроме debug, и Modification Manager.
    Дизайн поплыл, но на глаз скорость обработки не изменилась...

    Лог прикрепляю
     

    Вложения:

  4. Chukcha

    Chukcha Специалист

    Сообщения:
    3.013
    Симпатии:
    685
  5. DiNoZavr

    DiNoZavr Пользователь

    Сообщения:
    136
    Симпатии:
    10
    Ответ был для solunski.d относительно модуля LazyLoad, и отключения модулей по очереди...
     
  6. Chukcha

    Chukcha Специалист

    Сообщения:
    3.013
    Симпатии:
    685
    потому что я писал, оптимизация клиентской части, никак не относится к оптимизации серверной

    Вам нужно избавляться от мусора.
    Гоните в шею админа с 10летним стажем.
    Может он и спец, но не в sql и в веб
     
  7. DiNoZavr

    DiNoZavr Пользователь

    Сообщения:
    136
    Симпатии:
    10
    Люди добрые, подскажите пожалуйста, чего я этим добился?
    Из: /catalog/controller/common/header.php
    убрал:
    Код:
            // For page specific css
            if (isset($this->request->get['route'])) {
                if (isset($this->request->get['product_id'])) {
                    $class = '-' . $this->request->get['product_id'];
                } elseif (isset($this->request->get['path'])) {
                    $class = '-' . $this->request->get['path'];
                } elseif (isset($this->request->get['manufacturer_id'])) {
                    $class = '-' . $this->request->get['manufacturer_id'];
                } elseif (isset($this->request->get['information_id'])) {
                    $class = '-' . $this->request->get['information_id'];
                } else {
                    $class = '';
                }
    
                $data['class'] = str_replace('/', '-', $this->request->get['route']) . $class;
            } else {
                $data['class'] = 'common-home';
            }
    и
    Код:
            $data['language'] = $this->load->controller('common/language');
            $data['currency'] = $this->load->controller('common/currency');
    В результате из 2800 вот таких запросов в БД:
    Код:
    SELECT * FROM oc_url_alias WHERE `query` = 'category_id=X'
    осталось всего: 900
    Остальные запросы тоже сократились.
    подскажите пожалуйста, что я грохнул кроме курса валют и выбора языка?
     
  8. Chukcha

    Chukcha Специалист

    Сообщения:
    3.013
    Симпатии:
    685
    Ни может быть :(

    1 блок это вообще текст ..

    вторые - там только нужно получить redirect
     
  9. DiNoZavr

    DiNoZavr Пользователь

    Сообщения:
    136
    Симпатии:
    10
    Да, вы снова правы :(
    Когда чего-то сильно хочется, то начинаешь верить в это...

    Статистика: джет кеша:
    Без кэша на главной: 2510 запросов.
    Если кэшировать только: common/column_left - то остается: 1741 запроса.
    Если кэшировать только: common/header - то остается: 1029 запросов.

    Сейчас кэширую только header и column_left - получается: 292 запроса на главной странице.

    Очевидно что проблема в header и column_left...
    Что делать, уже не знаю...
     
  10. Chukcha

    Chukcha Специалист

    Сообщения:
    3.013
    Симпатии:
    685
    Я вам писал что делать..
    Я вам показал, откуда там ноги растут
    Не знаю, за что так любят это ваш модуль, но проблем он создает не мало!
     
    RomanKov нравится это.
  11. Chukcha

    Chukcha Специалист

    Сообщения:
    3.013
    Симпатии:
    685
    Не думаю, что header нужно кешировать, и я не знаю, как марк его кеширует
    Если кешировать хидер, то его нужно кешировать в зависимости он контроллера
    также и левую колонку.
     
  12. RomanKov

    RomanKov Активный пользователь

    Сообщения:
    275
    Симпатии:
    0
    Сайт - http://nashedelo.biz.ua/
    Ocstore 1.5.5.1.1

    Та же проблема, как и у DiNoZavr. В последнее время стал жутко тормозить сайт. Были проделаны работы и добавлены некоторые модули, скрипты и элементы. Все модули официальные, от варезников что были еще с начала моей работы - избавился.

    Если доверять PageSpeed Insights (его рекомедует для проверки мой хостер - Ситихост). У меня показывает в пределах 0.6-0.9, порой до 1.5-4 секунд. Раньше стабильно показывало 0.2-0.4. Ситихост пишет - должен быть не более 0.2

    Что можно сделать? Пробовать отключать модули и скрипты? Запустить дебаггер - посмотреть
     
  13. Chukcha

    Chukcha Специалист

    Сообщения:
    3.013
    Симпатии:
    685
    Насколько помнится у вас сайт достаточно быстро отвечал
    А сейчас - это ужас..
    Да, дебагер запросов

    Отключайте модули
    проверяйте
     
    RomanKov нравится это.