Помощь Как ускорить загружаемость сайта

  • Заблокирован
  • #91
А если поробовать удалить весь мусор, оптимизировать БД и правильно настроить .htacces еще сильно грузит если урлы не настроены, у меня долго грузился, поставил плагин который все исправил, и сайт начал работать быстрее, ето то то мне помогло
 
У меня около 9 000 продуктов и скорость загрузки не радовала. Много продуктов и очень много категорий.
Следующие изменения ускорили сайт примерно в 10 раз.
Версия Opencart 1.5.6.4
в файле
catalog/controller/module/category.php
находим строку
Код:
foreach ($categories as $category) {
и после нее вставляем
Код:
$category_data = $this->cache->get('vqmod_category_data_controller_module_category');

            if ($category_data) {
                $this->data['categories'] = $category_data;
                break;
            }
также в этом же файле находим следующую строку
Код:
if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/module/category.tpl')) {
перед неё вставляем
Код:
if (!$category_data) {
            $this->cache->set('vqmod_category_data_controller_module_category', $this->data['categories']);
            }

в файле
catalog/controller/common/header.php
находим строку
Код:
foreach ($categories as $category) {
и после нее вставляем
Код:
$category_data = $this->cache->get('vqmod_category_data_controller_common_header');

            if ($category_data) {
                $this->data['categories'] = $category_data;
                break;
            }
также в этом же файле находим следующую строку
Код:
$this->children = array(
перед неё вставляем
Код:
if (!$category_data) {
            $this->cache->set('vqmod_category_data_controller_common_header', $this->data['categories']);
            }
В основном речь идёт о большом колличестве категорий.
 
У меня около 9 000 продуктов и скорость загрузки не радовала. Много продуктов и очень много категорий.
Следующие изменения ускорили сайт примерно в 10 раз.
Версия Opencart 1.5.6.4
в файле
catalog/controller/module/category.php
находим строку
Код:
foreach ($categories as $category) {
и после нее вставляем
Код:
$category_data = $this->cache->get('vqmod_category_data_controller_module_category');

            if ($category_data) {
                $this->data['categories'] = $category_data;
                break;
            }
также в этом же файле находим следующую строку
Код:
if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/module/category.tpl')) {
перед неё вставляем
Код:
if (!$category_data) {
            $this->cache->set('vqmod_category_data_controller_module_category', $this->data['categories']);
            }

в файле
catalog/controller/common/header.php
находим строку
Код:
foreach ($categories as $category) {
и после нее вставляем
Код:
$category_data = $this->cache->get('vqmod_category_data_controller_common_header');

            if ($category_data) {
                $this->data['categories'] = $category_data;
                break;
            }
также в этом же файле находим следующую строку
Код:
$this->children = array(
перед неё вставляем
Код:
if (!$category_data) {
            $this->cache->set('vqmod_category_data_controller_common_header', $this->data['categories']);
            }
В основном речь идёт о большом колличестве категорий.
отличное решение - скорость загрузки увеличилась в несколько раз
 
У меня около 9 000 продуктов и скорость загрузки не радовала. Много продуктов и очень много категорий.
Следующие изменения ускорили сайт примерно в 10 раз.
Версия Opencart 1.5.6.4
в файле
catalog/controller/module/category.php
находим строку
Код:
foreach ($categories as $category) {
и после нее вставляем
Код:
$category_data = $this->cache->get('vqmod_category_data_controller_module_category');

            if ($category_data) {
                $this->data['categories'] = $category_data;
                break;
            }
также в этом же файле находим следующую строку
Код:
if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/module/category.tpl')) {
перед неё вставляем
Код:
if (!$category_data) {
            $this->cache->set('vqmod_category_data_controller_module_category', $this->data['categories']);
            }

в файле
catalog/controller/common/header.php
находим строку
Код:
foreach ($categories as $category) {
и после нее вставляем
Код:
$category_data = $this->cache->get('vqmod_category_data_controller_common_header');

            if ($category_data) {
                $this->data['categories'] = $category_data;
                break;
            }
также в этом же файле находим следующую строку
Код:
$this->children = array(
перед неё вставляем
Код:
if (!$category_data) {
            $this->cache->set('vqmod_category_data_controller_common_header', $this->data['categories']);
            }
В основном речь идёт о большом колличестве категорий.
Да все намного проще, при 9к товаров решается парой запросов в базу и варезным нитропаком :)
А вы наверно оптимизатор об самого всевышнего, я б вкмод к чертям для начала отправил
 
Да все намного проще, при 9к товаров решается парой запросов в базу и варезным нитропаком :)
А вы наверно оптимизатор об самого всевышнего, я б вкмод к чертям для начала отправил
ну каждый решает проблему так как лучше ему - а Ваш нитропак редкосная фигня
 
Да все намного проще, при 9к товаров решается парой запросов в базу и варезным нитропаком :)
А вы наверно оптимизатор об самого всевышнего, я б вкмод к чертям для начала отправил

Детализируйте Ваши запросы к базе?

У меня к примеру - сейчас ~120 000 думаю будут несколько миллионов.

А по существу - подсчет категорий реально трудоемкий. и эти фиксы избовляют от "холостых пересчетов"
 
Детализируйте Ваши запросы к базе?

У меня к примеру - сейчас ~120 000 думаю будут несколько миллионов.

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

У меня к примеру - сейчас ~120 000 думаю будут несколько миллионов.

А по существу - подсчет категорий реально трудоемкий. и эти фиксы избовляют от "холостых пересчетов"
Его много что тормозит. Я настраивал под 300 тыс товаров, но там конкретно изменял, почти все join убирал, тормоза сильные. Проверьте по запросам, какие именно грузят. И их уже оптимизируйте, индексы, убрать лишнее и т.д.
 
Назад
Сверху