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

Як знайти джерело запитів до БД які тормозять сайт?


Recommended Posts

У мене раптово почав суттєво тормозити сайт.
Трохи покопавшись, помітив що дуже велике навантаження іде від MySQL.
І серед запитів до БД основну частку займають запити які починаються на:
SELECT SUM(op.quantity) AS total FROM oc_order_product op LEFT JOIN `oc_order` o ON (op.order_id = o"

Як можна локалізувати, що саме викликає такі запити до сторінки?

slow_query_2024-06-05 10-51-14.png

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


Для начала смотрите полный запрос:

show full processlist

 

По кускам текста запроса можно поиском по *.php файлам сайта найти откуда он... модуль какой-то или сам движек.

 

Можно попробовать в phpmyadmin этот же запрос запустить и там напишет сколько времени он выполнялся.

Если действительно долго (может быть и быстро, но просто таких запросов очень много приходит), то исследовать все его составные части, посмотреть есть ли нужные индексы в базе. Если нет - проставить.

Посмотреть какой размер ответа получается, включен ли кэш запросов в mysql. Встречал случаи когда были тяжелые запросы, которые выдавали в ответ несколько Мб текста. А query_cache_limit стоял по-умолчанию (небольшое значение какое-то) и подняв его, сразу получил заметно более быстрый ответ, т.к. начало работать кэширование.

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


В 05.06.2024 в 11:18, chukcha сказав:

модуль bestseller
стикер bestseller

Так, вимкнув ці стікери, і одразу полегшало! :)
Навантаження повернулося в норму.
Залишилося відкритим питання, чому раніше з включеним даним модулем не так гостро відчувалося навантаження. Але то таке, питання вирішене і добре.

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


05.06.2024 в 10:59, G_S_V сказал:

У мене раптово почав суттєво тормозити сайт.
Трохи покопавшись, помітив що дуже велике навантаження іде від MySQL.
І серед запитів до БД основну частку займають запити які починаються на:
SELECT SUM(op.quantity) AS total FROM oc_order_product op LEFT JOIN `oc_order` o ON (op.order_id = o"

Як можна локалізувати, що саме викликає такі запити до сторінки?

slow_query_2024-06-05 10-51-14.png

 

Задорого. Под ключ. Пишите в личку.

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


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

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

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

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

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

Вхід

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

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

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