Rotarymonkey

Оптимизация сайта под большое кол-во товаров

Рекомендуемые сообщения

Добрый день.

Итак, имеем Opencart 1.5.6

Имеем хостинг с максимально разрешенной нагрузкой на БД в 5к секунд в сутки.

Очень долго ругались с хостером, в итоге проблема действительно на нашей стороне оказалась и оказалось, что сайт генерит слишком большОе кол-во запросов к БД, что перегружает сервер и сайт падает с 504 ошибкой. В итоге хостер поставил на нас кэширующий шаблон, что сломало мне мозг и сайт почти полностью, но после нашли откуда ноги растут.

На данный момент отключены все функции посчета общего кол-ва товаров на сайте, чтобы снизить нагрузку на БД. Как следствие, на сайте пропала пагинация.

Мне нужно оптимизировать движок магазина под наше кол-во товаров, вернуть пагинацию без лишней нагрузки на БД. Я надеюсь, что все эти действия приведут и к уменьшению времени загрузки страницы. Сейчас оно по данным gtmetrix.com 7.9 сек.

Общее кол-во товаров на данный момент около 2к.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
markimax    1 547

2000 товаров ?
Да это вообще "ничего" для нормального хостера

 

Смените хостера лучше. И установите кешировщик какой нибудь с форума. Boost к примеру, Lighting или еще какой

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
freelancer    1 418
Общее кол-во товаров на данный момент около 2к.

 

так это совсем не количество )

поставьте https://opencartforum.com/files/file/786-db-log/

и скиньте мне лог запросов. будет думать что делать

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

так это совсем не количество )

поставьте https://opencartforum.com/files/file/786-db-log/

и скиньте мне лог запросов. будет думать что делать

При установке заменяю require_once(DIR_SYSTEM . 'library/db.php'); на require_once(DIR_SYSTEM . 'library/db_log.php');

И сайт перестает работать.

 

2000 товаров ?

Да это вообще "ничего" для нормального хостера

 

Смените хостера лучше. И установите кешировщик какой нибудь с форума. Boost к примеру, Lighting или еще какой

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
freelancer    1 418

ставьте этот

db_log(opencart1.5.6.4).zip

beget ни хороший и не плохой, но по моему мнению для ИМ не подходит. вот например, вы пишите что сайт перестал работать, я попытаюсь додумать, вы видите пресловутый белый экран.

а это значит хостер не побеспокоился включить вывод ошибок и неизвестно сколько времени уйдет что бы эти ошибки всё же включить.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ставьте этот

db_log(opencart1.5.6.4).zip

beget ни хороший и не плохой, но по моему мнению для ИМ не подходит. вот например, вы пишите что сайт перестал работать, я попытаюсь додумать, вы видите пресловутый белый экран.

а это значит хостер не побеспокоился включить вывод ошибок и неизвестно сколько времени уйдет что бы эти ошибки всё же включить.

Сайт как бы не перестает работать, он продолжает открываться в 80% случаев, но время отрисовки страницы может доходить до 2-х минут или 504 ошибка.

Они мне собирали статистику запросов к БД в течении 5 часов из которых админ хостера увидел, что проблема в подсчете кол-ва товаров, закомментировал строки функций подсчета, в т.ч. функции пагинации. После чего нагрузка на БД упала в разы

Изменено пользователем Rotarymonkey

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ставьте этот

db_log(opencart1.5.6.4).zip

Да, я этот вариант и устанавливал. Вижу пресловутый белый экран, вместо главной)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

в общем проблема в хостере

Если снять комментарии с функций подсчета кол-ва товаров, то нагрузка возрастет.

Соответсвенно, если я сейчас верну все "в зад", как было) То у хостера поднимится нагрузка. Если нет, то была проблема в хостере о которой мне не сказали, но устранили. Так получается?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
markimax    1 547

в общем проблема в хостере

 

Однозначно причем!

Хостеры часто не правильно настраивают "очередь запросов"  (паранойики боятся DDoS)

DDoS фильтры тоже

 

Просто не умеют отражать атаки DDoS - поэтому решили примитивно все запросы в очередь ставить  и если она длинная удалять "конец"

 

2000 товаров - это "детский лепет" должен быть для любого хостера

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Однозначно причем!

Хостеры часто не правильно настраивают "очередь запросов"

 

2000 товаров - это "детский лепет" должен быть для любого хостера

Ну а если же нет?)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
markimax    1 547

Ну а если же нет?)

Хостеры часто не правильно настраивают "очередь запросов"  (паранойики боятся DDoS)

DDoS фильтры тоже

 

Просто не умеют отражать атаки DDoS - поэтому решили примитивно все запросы в очередь ставить  и если она длинная удалять "конец"

Причем они вообще офигели... если очередь больше определенного количества то они ставят задержку на этот запрос, в соответствии с тем  каким стоит в очереди запрос т е с коэффициентом задержки!

 

В итоге может быть на ваш запрос к серверу MySQL поставить задержку в секунду на каждый последующий запрос

 

Идиоты просто - низкая квалификация админов хостера

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
freelancer    1 418

если там вместо ошибки пользователю выводится "белый экран" о чем вообще можно дальше разговаривать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
markimax    1 547

Поэтому db_log не показатель

Он может показать самый примитивный запрос с выполнением более 5 секунд даже

Что здесь "оптимизировать"

 

Да opencart генерит много запросов. Но они легкие! И гораздо легче одно "монстра"

 

Так что хостера менять

 

Но они это делают спецом, чтобы пользователи переходили на VPS

Короче что сказать - мудаки

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

были произведены изменения в файлах

catalog/controller/module/category.php

catalog/controller/common/header.php

catalog/controller/product/category.php

Это писал хостер.

В файлах category.php я в обоих нашел закомментированные строки. Убрал комменты. Но в файле header.php комментов нет и понять, что он там менял мне не удается. Пагинации так и нет(((

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
freelancer    1 418

markimax, я и не говорю что db_log панацея, но он может дать представление о том что происходит. какие запросы выполняем магазин и как долго они выполняются.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
markimax    1 547

Это писал хостер.

В файлах category.php я в обоих нашел закомментированные строки. Убрал комменты. Но в файле header.php комментов нет и понять, что он там менял мне не удается. Пагинации так и нет(((

 

Офигеть - уже хостеры патчат файлы opencart!

Да к моНАХам такого хостера

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
markimax    1 547

markimax, я и не говорю что db_log панацея, но он может дать представление о том что происходит. какие запросы выполняем магазин и как долго они выполняются.

Да я не имею ничего к db_log

Суть в том что он не поможет даже когда хостер [censored]

:)

 

Я видел когда SELECT * FROM oc_language выполнялся 10 секунд (так как его "поставили с задержкой в "очередь" хостер) :)

Где было две записи

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Товарищи, помогите вернуть пагинацию)

Хостинг буду менять, однозначно. Я с ними месяц воевал, чтобы хоть как-то понять в чем причина.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
markimax    1 547

Марк, этот хостер сломал паджинацию ))

https://opencartforum.com/topic/51629-оптимизация-сайта-под-большое-кол-во-товаров/?do=findComment&comment=452211

 

:ugeek: :-D

Я в шоке от таких хостеров

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
markimax    1 547

Товарищи, помогите вернуть пагинацию)

Хостинг буду менять, однозначно. Я с ними месяц воевал, чтобы хоть как-то понять в чем причина.

А как ?!

 

Хостер то все там поломал

Как теперь искать то. :ugeek:

 

Бекап восстанавливайте до того момента как туда полезли дилетанты хостера

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А как ?!

 

Хостер то все там поломал

Как теперь искать то. :ugeek:

 

Бекап восстанавливайте до того момента как туда полезли дилетанты хостера

Файлы восстановил, посмотрю, что будет теперь с нагрузкой.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
markimax    1 547

Файлы восстановил, посмотрю, что будет теперь с нагрузкой.

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

Поставьте для начала кешировщик Boost или Lighting

Такой себе инструмент "бита" для  хостера вымогателя VPS

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
klaos27    131

Хостер то все там поломал

Как теперь искать то. :ugeek:

 

Бекап восстанавливайте до того момента как туда полезли дилетанты хостера

у beget-a это по хочу часто в последнее время.

На прошлой неделе тоже такая беда с одним сайтом...нашел кучу переименованных файлов, а они утверждали что ничего не делали

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

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

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти


  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу