Авторизация  

   

Свежие обсуждения  

Читать подробнее »

   
Подождите минутку, пока генерируется календарь
   

Комментарии блогов  

Josef Vilka Напечатанная на принтере подставка под ноутбук
29 января 2021
Сделал уже вторую подставку подобного рода - для графического планшета. Очень профессионально получи...
neejik Напечатанная на принтере подставка под ноутбук
03 января 2021
Ничего подобного самостоятельно не делал. По работе было не обходимо, обратился за 3d печатью к проф...
Josef Vilka Что делать если выскакивает реклама на андроид?
29 марта 2019
Планшет - снова жив! Я его восстановил. Процесс - вот в этом видео - https://www.youtube.com/watch?v...
Josef Vilka Что делать если выскакивает реклама на андроид?
22 февраля 2019
В общем - планшет - умер. Я подскользнулся и упал на него
Josef Vilka Что делать если выскакивает реклама на андроид?
28 августа 2018
Продолжение эпопеи! Очередное мое письмо производителю: ------------------------------ From: Josef V...
   

Пользователи on-line  

   

× Content Management System и SEO – оптимизация

Opencart превышение нагрузки при подсчете товаров в категориях

26 фев 2017 13:45 - 26 фев 2017 13:46 #7359 от sphere_kev
Столкнулся с таким случаем, когда хостер отключил сайт за превышение нагрузки.
Имеется Opencart 1.5.5.1 и хостер сообщил, что сайт грузит сервер - при простом заходе на сайт сервер mysql грузится до 70% CPU.
Запросы вида:
Query | 0 | Sending data | SELECT COUNT(DISTINCT p.product_id) AS total FROM oc_product_to_category p2c LEFT JOIN oc_product p |
После простого отключения подсчета товаров в админке магазина - проблема вроде как ушла, но через неделю - история повторилась.
Опять запросы вида
Query | 0 | Sending data | SELECT COUNT(DISTINCT p.product_id) AS total FROM oc_category_path cp LEFT JOIN oc_product_to_catego
- начали грузить сервер.
При одиночном заходе - еще ничего, но при индексации сервера поисковыми роботами - нагрузка по словам хостера- выходила за грани допустимой.
Посему - пришлось помимо простого отключения индексации в админке - решать вопрос с правкой скриптов..

Выключил getTotalProducts в:
catalog/controller/common/header.php
catalog/controller/product/category.php
catalog/controller/module/category.php


- заменил строку $product_total = $product->getTotalProducts($data); на $product_total = 1;

Заметно быстрее стали грузиться страницы и со слов хостера - нет превышения нагрузки.
Проблема решена.

..! You Can Make World Better !..

Вложенный файл:
Последнее редактирование: 26 фев 2017 13:46 пользователем sphere_kev.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • sphere_kev
  • sphere_kev аватар Автор темы
  • Не в сети
  • COM_KUNENA_SAMPLEDATA_RANK_MODERATOR
  • COM_KUNENA_SAMPLEDATA_RANK_MODERATOR
  • Небесный тихоход
Больше
27 фев 2017 10:35 #7360 от sphere_kev
Для того, чтобы было больше одной страницы в выводе категории товара - необходимо второй запрос на подсчет категорий либо оставить, либо задать в явном виде максимально возможное количество товара в файле
catalog/controller/product/category.php
ориентируемся по строчкам после запроса:
//здесь явно указываем количество - $product_total = 750; или оставляем строку ниже
$product_total = $this->model_catalog_product->getTotalProducts($data);

$results = $this->model_catalog_product->getProducts($data);

foreach ($results as $result) {
if ($result) {
$image = $this->model_tool_image->resize($result, $this->config->get('config_image_product_width'), $this->config->get('config_image_product_height'));
} else {
$image = false;
}

..! You Can Make World Better !..

Вложенный файл:

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • sphere_kev
  • sphere_kev аватар Автор темы
  • Не в сети
  • COM_KUNENA_SAMPLEDATA_RANK_MODERATOR
  • COM_KUNENA_SAMPLEDATA_RANK_MODERATOR
  • Небесный тихоход
Больше
Время создания страницы: 0.335 секунд
Работает на Kunena форум