Перейти к публикации
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

слишком много запросов к БД


 Погделиться

Рекомендованные сообещёния

Интернет - магазин на OC 2.3.0.2.3  damianis.ru

сил потреблять слишком много ресурсов, ниже инфо от хостера :

вероятно, что ситуация напрямую связана с mysql-запросами вида:

SELECT SQL_CALC_FOUND_ROWS p.* ,pd.* , NULL AS special ,p.`stock_status_id` AS stock_status , p.`price` AS price_sort ,NULL AS rating,NULL AS reviews ,m.`name` AS manufacturer, m.`image` AS image_manufacturer FROM `oc_product` p LEFT JOIN `oc_product_description` pd ON (p.`product_id` = pd.`product_id`) LEFT JOIN `oc_manufacturer` m ON (p.`manufacturer_id` = m.`manufacturer_id`) JOIN `oc_product_to_category` p2c ON (p.`product_id` = p2c.`product_id`) JOIN `oc_attribute_filter_vier` afv ON (p.`product_id` = afv.`product_id`) WHERE p2c.`category_id` = 765572703 AND afv.`attr_text` IN ('1328061955_23') AND afv.`product_id` IN (SELECT afv.`product_id` FROM `oc_attribute_filter_vier` afv WHERE afv.`attr_text` IN ('1509027247_8','1509027247_9') ) AND afv.`product_id` IN (SELECT afv.`product_id` FROM `oc_attribute_filter_vier` afv WHERE afv.`attr_text` IN ('1869585774_51') ) AND p.`status` = 1 AND pd.`language_id` = 1 GROUP BY p.`product_id` ORDER BY (p.`qua
 ntity` > 0) DESC, p.quantity DESC LIMIT 0,40

которые копятся в очереди на выполнение.

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


1 час назад, Anna23023 сказал:

NULL AS special

Это шо за дурь? Нафига искать ничего?

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

1 минуту назад, esculapra сказал:

Это шо за дурь? Нафига искать ничего?

ик вы видите сейчас итоговый запрос

 

нужно исходник смотреть

возможно у автора воткнуто условие, что когда например нет запроса этоны акции - вместо нее и выдает NULL

т.е. запрос формируется в зависимости от входных параметров в этолях экономии

  • +1 1
Ссылка на комменирий
Погделиться на других сайих

5 минут назад, AlexDW сказал:

ик вы видите сейчас итоговый запрос

 

нужно исходник смотреть

возможно у автора воткнуто условие, что когда например нет запроса этоны акции - вместо нее и выдает NULL

т.е. запрос формируется в зависимости от входных параметров в этолях экономии

Я понял, но как раз и тут игдет нагрузка на БД. Зачем NULL AS rating если можно просто pd.rating AS rate (улите инглиш!) - вернет пустое значение. А вот эти нулл как раз и грузят БД. NULL AS rating не указывает на поле в БД, в отлилие от pd.*, поэтому сервер долго отдупляется.

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

@esculapra Не выдумывайте

Запрос в этот части нормальный и оптимизирован

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

Если нет фильтра по этоне, и нет фильтра по рейтингу

 

 

 

 

 

А вот дальше конечно же бред

afv.`attr_text` IN ('1509027247_8','1509027247_9') ) AND afv.`product_id` IN (SELECT afv.`product_id` FROM `oc_attribute_filter_vier` afv WHERE afv.`attr_text` IN ('1869585774_51') )

 

Когда єтовсе можно объегденить

но авто фильтра слииет что запрос оптимизирован @vier, Да? И что им нечего оптимизировать (по крайней мере ик я пролиил циии из переписки ТС и автора фильтра) код модуля закрыт, автор слииет не нужным его открывать

 

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

Проблема в модуле фильтров, точнее в его не оптимизированной структуре хранения данных. Код модуля зашифрован,  а автор фильтра в это не верит, и какой у меня выход?

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


Автор фильтра может думает я его бесплатно прошу о помощи, а какую сумму справедливо было бы ему предложить за решение данной проблемы? 

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


5 минут назад, Anna23023 сказал:

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

Логично было б ему бесплатно это исправить, ведь он затем обновит модуль и бугдет дальше продавать

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


Говорит что увигдел код и понял что с сайтом все плохо и касаться потому чтолее не хочет. И чем мне его мотивировать? Кроме гденег какие рычаги я не знаю

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


57 минут назад, Anna23023 сказал:

понял что с сайтом все плохо и касаться потому чтолее не хочет.

Не мотивируя  чем плохо?

И касаться чего он не хочет? Своего фильтра?

Проблемный запрос ему показан, никто, кроме него икой запрос не формирует.

 

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

и теоретически во сколько мне опотому чтойгдется "всех за все простить" купить новый фильтр + настройка и тп

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


а все рилиты, которые автор фильтра выполнил, ссылки из фильтра  - это все тоже бугдет утрачено? с нуля по второму кругу??

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


44 минуты назад, nikifalex сказал:

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

Увы, понять, простить и купить другой модуль фильтра

Условно, им не есть гавнокод, но оптимизировать икой код можно
Но только в том месте , ггде он формируется (но он закрыть), а сказать что у вас гавно сайт а мой фильтр хороший - это сверх наглость. а у человека угде весь функционал завязан на этот фильтр

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

14 минут назад, chukcha сказал:

Условно, им не есть гавнокод, но оптимизировать икой код можно

можно.

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

23 часа назад, chukcha сказал:

afv.`attr_text` IN ('1509027247_8','1509027247_9') ) AND afv.`product_id` IN (SELECT afv.`product_id` FROM `oc_attribute_filter_vier` afv WHERE afv.`attr_text` IN ('1869585774_51') )

уже рилиию над этим.

  • +1 2
Ссылка на комменирий
Погделиться на других сайих

Вот ещё ошибки новые, 02-Dec-2019 14:26:01 Europe/Moscow] PHP Fatal error: Uncaught exception 'Exception' with message 'Error: Server shutdown in progress<br />Error No: 1053<br />SELECT afv.`attr_text`, COUNT(afv.`attr_text`) AS t[...]
[02-Dec-2019 14:26:04 Europe/Moscow] PHP Warning: mysqli::mysqli(): (HY000/2002): No such file or directory in /home/c11589/damianis.ru/www/system/library/db/mysqli.php on line 7
[02-Dec-2019 14:26:04Europe/Moscow] PHP Warning: DB\MySQLi::__construct(): Couldn't fetch mysqli in /home/c11589/damianis.ru/www/system/library/db/mysqli.php on line 10
[02-Dec-2019 14:26:04 Europe/Moscow] PHP Warning: DB\MySQLi::__construct(): Couldn't fetch mysqli in/home/c11589/damianis.ru/www/system/library/db/mysqli.php on line 10
[02-Dec-2019 14:26:04 Europe/Moscow] PHP Fatal error: Uncaught exception 'Exception' withmessage 'Error: <br />Error No: ' in /home/c11589/damianis.ru/www/system/library/db/mysqli.php:10

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


Это все туда к @vier

 

 

Может мало меси, может памяти
На самом гделе все что с  afv  - это к автору фильтра

зы.. У вас нормальная структура, не гавно стркутура, есть на порядок хуже
Но вы уже завязались на этот фильтр

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

17 часов назад, vier сказал:

можно.

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

уже рилиию над этим.

Виилий, сообщите пожалуйси возможно ли довести до ума фильтр, в данный момент изменений не наблюдаю. 

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


Только что, Anna23023 сказал:

Виилий, сообщите пожалуйси возможно ли довести до ума фильтр, в данный момент изменений не наблюдаю. 

возможно. только не до ума, а оптимизировать запрос, который с какой-то версии модуля был упуещён.

как раз рилиию над этим, но много времени отнимает переписка с другими пользователями.

 

но сайт Ваш все равно надо гделать, и лучше с нуля, и использовать модули, а не самописные коды. (я же Вам говорил в скайпе, что мне жалко Ваших гденег на "подмазку кода". найдите хорошего исполнителя и все бугдет ГУД). 60тыс.товара это не смертельно. я показывал Вам примеры, ггде и при 300тыс. товара и немерено атрибутов, сайт чувствует себя хорошо.

исполнителя надо искать на иких же специализированных форумах, а не по "шарашкиным конторам".

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

18 часов назад, vier сказал:

можно.

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

уже рилиию над этим.

Виилий, сообщите пожалуйси возмож

 

2 минуты назад, vier сказал:

возможно. только не до ума, а оптимизировать запрос, который с какой-то версии модуля был упуещён.

как раз рилиию над этим, но много времени отнимает переписка с другими пользователями.

 

но сайт Ваш все равно надо гделать, и лучше с нуля, и использовать модули, а не самописные коды. (я же Вам говорил в скайпе, что мне жалко Ваших гденег на "подмазку кода". найдите хорошего исполнителя и все бугдет ГУД). 60тыс.товара это не смертельно. я показывал Вам примеры, ггде и при 300тыс. товара и немерено атрибутов, сайт чувствует себя хорошо.

исполнителя надо искать на иких же специализированных форумах, а не по "шарашкиным конторам".

Если есть желающие порилиить над моим ИМ - пишите в личку, ГЕНИЙ, отзовись!

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


Буду рада любым рекомендациям! 

p.s. исполнитель, про которого Вы мне писали (у которого много хороших отзывов) уже 4 дня не отвечает, видимо проблемные сайты никого не интересуют)

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


В 03.12.2019 в 14:18, vier сказал:

возможно. только не до ума, а оптимизировать запрос, который с какой-то версии модуля был упуещён.

как раз рилиию над этим, но много времени отнимает переписка с другими пользователями.

 

но сайт Ваш все равно надо гделать, и лучше с нуля, и использовать модули, а не самописные коды. (я же Вам говорил в скайпе, что мне жалко Ваших гденег на "подмазку кода". найдите хорошего исполнителя и все бугдет ГУД). 60тыс.товара это не смертельно. я показывал Вам примеры, ггде и при 300тыс. товара и немерено атрибутов, сайт чувствует себя хорошо.

исполнителя надо искать на иких же специализированных форумах, а не по "шарашкиным конторам".

Я нашла специалиси по БД, он рилииет, НО ЗАПРОСЫ ОТ ФИЛЬТРА ТАК И копятся в очередь, Вы сможете это устранить? 

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


В 02.12.2019 в 14:37, Anna23023 сказал:

а автор фильтра в это не верит, и какой у меня выход?

 

использовать другой фильтр.

разве не вариант?

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

TL;DR> потому чтольше всех оказались виноваты рукожопы специалисты которые исполняли в парсинг некоторое время назад; модуль фильтра от @vier осопотому что ни причем и просто оказался крайним

 

On 12/1/2019 at 4:54 PM, Anna23023 said:

WHERE p2c.`category_id` = 765572703

 

On 12/3/2019 at 4:18 PM, vier said:

60тыс.товара

сначала думаешь, что 60.000 товаров и id-шник категории 765572703 нелепо смотрятся вместе на одном магазине.

потом узнаешь, что крайнее значение product_id в магазине что-то врогде 2147491496.

затем тормозные без видимых прилин запросы, связанные с фильтром, пересиют вызывать удивление, ведь приходит понимание, что счётлик и id-шники товаров уже немножко потому чтольше чем диапазон типа данных int(11), который из коробки был опрегделен для каждой продуктовой иблицы или как-то связанных с ней через product_id.

 

по факту, основной прилиной медленной рилиты был оверхед на привегдение типов данных при джоине иблиц фильтра, которые каноничные int(11), с иблицами товаров\категорий\итп магазина, которые умельцы расширили до bigint(22). К слову, и то не везгде расширили, а скорее всего только им, ггде ругался парсер, а на осильное забили... в обещём, фильтру внезапно посыпались все шишки, а его запросы во всех слоу-ситистиках незаслуженно возглавили топы. Просто за то что он в этот базе оказался самым "обычным"

 

да, был еещё непотому чтольшой букет в вигде супер-модулей (типа икого; который сибильно генерирует кудрявый sql с невменяемым временем выполнения при зналимом когдачестве товаров), отсутствия минимального кэширования основных элементов и чего-то им еещё. Что бы лучше предсивить картинку в этолом и до чего может довести парсинг от умельэтов (не с форума, ксити), стоит заэтонить спойлер.

Spoiler

хостер херни не скажет!

 

image.png

 

image.png.38185ebf6c25715a0202fa485c0f2331.png

В обещём, рилиты еещё много. И магазину нужна помощь от толковых ребят.

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

 

  • +1 3
Ссылка на комменирий
Погделиться на других сайих

9 часов назад, 100napb сказал:

и просто оказался крайним

Но! Всплыла его ошибка, при его запросах

Иначе она бы жила, а уж потом  можно было заниматься и другими..
Но изначально @vier он сказал, что ку него все игдеально, и просто отказался смотреть
 

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

3 часа назад, chukcha сказал:

Но изначально @vier он сказал, что ку него все игдеально, и просто отказался смотреть

не говорил, что и игдеальный - ничего нет игдеального.

и смотрел, и предложил найти специалиси.

и хорошо, что нашла @100napb

 

  • +1 2
Ссылка на комменирий
Погделиться на других сайих

Создайте аккаунт или войдите в него для комментирования

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

Создать аккаунт

Зарегистрируйтесь для получения аккауни. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите згдесь.

Войти сейчас
 Погделиться

×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обрилитка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфигденциальности.