Page 2 of 5

Re: Оптимизация DB

Posted: Mon Jan 15, 2018 2:11 am
by admin
Что тут можно оптимизировать:

1. SQL_CALC_FOUND_ROWS - подсчет точного ко-ва галер - это делается когда есть пагинация, если ее заменить на prev / next то подсчета не будет и этого запроса

2. судя по

group_id IN (256,210,204,211,255,154,229,198,155,265,156,208,226,157,225,158,67,268,185,258,264,259,267,230,228,123,195,269,232,162,165,214,213,223,220,221,218,217,219,215,216,222,262,257))

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

Это проблема мягкого или жжесткого исключения.

Сейчас оно жесткое: если галера в группе А и Б . Группа А выключена.
мы выводи группу Б - надо ли выводить галеру? по дефолту нет тк часто категории надо дестко разделять, например тин + гей и на сайте выключен гей, то в тин однозначно не надо выводить. Для этого и такая проверка в запросе. Но если у вас ситуация когда можно без доп проверки этой то можно провести ап и добавить в конфиге

$config['soft_group_exclusion'] = true;

это уберет еще чатсь запроса.

Думаю можно начать с этого и смотреть дальше как будет.

Re: Оптимизация DB

Posted: Mon Jan 15, 2018 10:15 am
by Serhio
Пагинацию заменили.
Группы отключенные удалили.
Сейчас зачищаются галеры от тумб с низким ctr.
Потихоньку отпускает проц и диск (говорит админ).
Понаблюдаем. Отпишу результат.
Спасибо

Re: Оптимизация DB

Posted: Mon Jan 15, 2018 2:02 pm
by admin
ok

Re: Оптимизация DB

Posted: Tue Jan 16, 2018 9:46 am
by Serhio
Приветствую.
Админ говорит, серверу легчает.
Но иногда всплывают такие запросы и висят по 20 сек.

| 13173531 | master_tcms | | master_tcms | Query | 1 | Sending data | SELECT gs.gallery_id, gs.thumb_id, gi.sponsor_id, gi.content_count, gi.content_type, gs.total_shows, gs.total_clicks, gs.total_ctr, gt.thumb_url, gd.*, gi.cont
ent_count, gi.crop_profile_id, gi.activation_date, gi.added_date, gi.duration, gi.url, gi.gallery_total_shows, gi.sponsor_id, gi.source_url, gi.custom_gallery FROM rot_gallery_stats23 as gs FORCE INDEX (group_id) JOIN rot_gallery_info as gi on gi.gallery_id = gs.gallery_id
JOIN rot_gallery_data1 as gd on gd.gallery_id = gs.gallery_id
JOIN rot_thumbs as gt on gt.thumb_id = gs.thumb_id
WHERE 1 = 1 AND gi.gallery_status = 'active' AND gi.gallery_type = 0 and gs.best_thumb = 'yes' and gs.group_id IN (41) ORDER BY tested_thumb DESC, gs.total_ctr DESC LIMIT 0, 4087

Re: Оптимизация DB

Posted: Tue Jan 16, 2018 11:15 am
by admin
LIMIT 0, 4087

а что это у вас за страница с таким кол-вом выводимых галер?

Re: Оптимизация DB

Posted: Tue Jan 16, 2018 3:07 pm
by Serhio
да нет таких страниц. ни в одном темплейте

JOIN rot_thumbs as gt on gt.thumb_id = gs.thumb_id
WHERE 1 = 1 AND gi.gallery_status = 'active' AND gi.gallery_type = 0 and gs.best_thumb = 'yes' and gs.group_id IN (146) ORDER BY tested_thumb DESC, gs.total_ctr DESC LIMIT 0, 3973
а этот запрос с другого слейва .
тут тоже где то страница с таким колличеством выводимых галер ?
ну нет таких страниц. откуда такой запрос выводится?

Re: Оптимизация DB

Posted: Tue Jan 16, 2018 4:40 pm
by admin
сайтмап?

Re: Оптимизация DB

Posted: Tue Jan 16, 2018 4:49 pm
by Serhio
сайтмап вообще нигде нет.
может на каждой категории подсчитывает <!--TOTAL_ITEMS--> ?
на одном слейве убрал <!--TOTAL_ITEMS-->. Наблюдаем.

Re: Оптимизация DB

Posted: Tue Jan 16, 2018 4:53 pm
by admin
Нет, откуда б оно знало тучную цифру
скидывайте тогда шел и админку сайта от которого такие запросы

Re: Оптимизация DB

Posted: Tue Jan 16, 2018 5:48 pm
by Serhio
Завтра скину все доступы.
А доступ к ftp на тот же айпи сделать?