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

Recommended Posts

Уже работающий магазин, с каждым добавлением товара увеличивалось количество запросов к БД. Со временем количество запросов превысило лимит хостера. Сделал бэкап и переустановил опенкарт, добавил все модули все товары, запросы к БД минимальные. Прошло 2 недели произошел скачок запросов, хотя нового товара не добавлялось. Прошло 2 месяца произошел ещё больший скачок (просто нереально) запросы в день 200 миллионов. Товаров около 5000. ocStore Версия 1.5.5.1.2

Стоит модуль BOOST - ускоритель OpenCart + AJAX загрузка модулей 1.1 

 

Ищу человека для оптимизации количества запросов в БД и возможно ускорения работы сайта. Бюджет 600 грн. (1200 руб.).

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


А как могут увеличиваться количество запросов от количества товаров ? :ugeek:

Совет - потратьте этот бюджет на VPS сервер

5000 товаров - это практически "ничего"

У вас настолько слаб хостер...

 

У вас уже стоит Boost - он кеширует прямо всей страницей

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

А как могут увеличиваться количество запросов от количества товаров ? :ugeek:

Совет - потратьте этот бюджет на VPS сервер

5000 товаров - это практически "ничего"

У вас настолько слаб хостер...

 

У вас уже стоит Boost - он кеширует прямо всей страницей

Вот вот я тоже так думаю 5000 товаров это ничего. Хостер установил лимит 5750000 запросов в день. Я думаю этого при достаточно.

Скачки количества запросов можно сказать не зависят от посетителей на сайте.

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


Вот вот я тоже так думаю 5000 товаров это ничего. Хостер установил лимит 5750000 запросов в день. Я думаю этого при достаточно.

Скачки количества запросов можно сказать не зависят от посетителей на сайте.

 

Зависят от поисковых ботов ;)

 

Это поисковики теребенят ваш сайт жестко так.

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

Зависят от поисковых ботов ;)

 

Это поисковики теребенят ваш сайт жестко так.

 

И такое быть может! Но, это поправимо!

 

Не нужно так же исключать наличие вредоносного кода.

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

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

 

Вот типичный пример, кусок кода из контроллера header.php  OcStore 1.5.5.1.2

foreach ($children as $child) {
					$data = array(
						'filter_category_id'  => $child['category_id'],
						'filter_sub_category' => true
					);
					
					$product_total = $this->model_catalog_product->getTotalProducts($data);
									
					$children_data[] = array(
						'name'  => $child['name'] . ($this->config->get('config_product_count') ? ' (' . $product_total . ')' : ''),
						'href'  => $this->url->link('product/category', 'path=' . $category['category_id'] . '_' . $child['category_id'])
					);						
				}

Как видно - сначала производится подсчет 

$product_total = $this->model_catalog_product->getTotalProducts($data);

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

 

То-есть строку 

$product_total = $this->model_catalog_product->getTotalProducts($data);

надо бы заменить на 

if($this->config->get('config_product_count')) $product_total = $this->model_catalog_product->getTotalProducts($data);

Тоже самое может встречаться в контроллере category.php и в контроллере модуля category.php в участке формирования массива $this->data['categories']

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

  • 9 months later...

Привет. У меня Хедер очень сильно нагружает сайт согласно модулю

https://opencartforum.com/files/file/636-opencart-profiler/

 

Как что можно в хедере выключить, оптимизировать, отключить? (какие запросы к БД)

ocstore 15512

дефолтный шаблон

 

А согласно этого модуля

https://opencartforum.com/files/file/786-db-log/

 

много запросов идет от этой строки
$categories = $this->model_catalog_category->getCategories(0);

 

Категорий примерно 200.

 

Это можно как-то исправить?

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


Привет. У меня Хедер очень сильно нагружает сайт согласно модулю

https://opencartforum.com/files/file/636-opencart-profiler/

 

Как что можно в хедере выключить, оптимизировать, отключить? (какие запросы к БД)

ocstore 15512

дефолтный шаблон

 

А согласно этого модуля

https://opencartforum.com/files/file/786-db-log/

 

много запросов идет от этой строки

$categories = $this->model_catalog_category->getCategories(0);

 

Категорий примерно 200.

 

 

Это можно как-то исправить?

 

Шапку сайта и модуль категорий можно кэшировать. Примерно так (отрывок из vqMod файла, входящего в состав одного из моих модулей):

<!-- header menu categories cache -->
<file name="catalog/controller/common/header.php">
    <operation error="log">
        <search position="before"><![CDATA[$this->data['categories'] = array();]]></search>
        <add><![CDATA[          $categories = $this->cache->get('mcj.common.header.'.md5(json_encode(array((isset($this->request->get['path'])?$this->request->get['path']:false), $this->config->get('config_store_id'), $this->config->get('config_language_id')))));
        if ($categories){
            $this->data['categories'] = $categories;
        }else{]]></add>
    </operation>
    <operation error="log">
        <search position="before"><![CDATA[$this->children = array(]]></search>
        <add><![CDATA[              $this->cache->set('mcj.common.header.'.md5(json_encode(array((isset($this->request->get['path'])?$this->request->get['path']:false), $this->config->get('config_store_id'), $this->config->get('config_language_id')))), $this->data['categories']);
        }]]></add>
    </operation>
</file>
<!--  -->   
Змінено користувачем halfhope
Надіслати
Поділитися на інших сайтах

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

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

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

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

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

Вхід

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

Вхід зараз
×
×
  • Створити...

Important Information

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