Внимание!
Не все расширения для phpBB 3.2 совместимы с phpBB 3.3, главным образом из-за неверного синтаксиса в определениях сервисов (отсутствия обрамляющих кавычек - '...').
Перед обновлением необходимо убедиться в совместимости всех расширений.
Рекомендуется предварительно тестировать обновление на копии конференции (локально или на сервере).

Высокая нагрузка от phpBB 3.3

Проблемы с установкой или работой phpBB 3.3.x? Получите помощь здесь!
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB 3.1.x/3.2.x | FAQ | Как задавать вопросы | Как устанавливать расширения

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Craftsman
phpBB 1.4.0
Сообщения: 37
Зарегистрирован: 29.07.2018 23:06
Благодарил (а): 5 раз
Поблагодарили: 9 раз

Re: Высокая нагрузка от phpBB 3.3

Сообщение Craftsman »

Итак, история разбирательств с перегрузками после установки 3.3.0 получилась длинная:

1. На старых версиях 3.2.x тоже возникла проблема с перегрузкой CPU (и помнится, на диск тоже).
Хотя она был не столь сильная, как теперь в 3.3.0.
На официальном форуме phpBB кто-то посоветовал как временное решение установить дополнительный индекс к таблице phpbb_posts, и это тогда действительно сняло проблему, перегрузка CPU полностью исчезла -
phpbb_posts-del-index.PNG

2. Однако после апдейта 3.2.8 до 3.3.0 перегрузка возникла снова, только на этот раз во много раз сильнее.
Прегрузка была вызвана очень длительным запросом 10-15 секунд.

Вспомнив о дополнительном индексе, удалил его.
Нагрузка на CPU уменьшилась, но не до конца, потому что появилась новая перегрузка, но другая -
- на этот раз сильно перегружается диск, если смотреть его с помощью iotop.

Как дальше выяснилось, перегрузка диска в этотраз вызывается другими длинными 2-мя запросами, достигающими до 30 секунд, которые прикладываю в спойлере -
Запросы, перегружающие диск 

Код: Выделить всё

# Time: 200207 14:02:57
# User@Host: db_phpbb[db_phpbb] @ localhost []
# Thread_id: 1007369  Schema: db_phpbb  QC_hit: No
# Query_time: 29.005237  Lock_time: 0.000044  Rows_sent: 30  Rows_examined: 100825
SET timestamp=1581073377;
SELECT p.post_id
        FROM phpbb_posts p
        WHERE p.topic_id = 638997
                AND ((p.post_visibility = 1))


        ORDER BY p.post_time ASC, p.post_id ASC
 LIMIT 28650, 30;
# Time: 200207 14:04:02
# User@Host: db_phpbb[db_phpbb] @ localhost []
# Thread_id: 1008190  Schema: db_phpbb  QC_hit: No
# Query_time: 13.359848  Lock_time: 0.000030  Rows_sent: 30  Rows_examined: 47575
SET timestamp=1581073442;
SELECT p.post_id
        FROM phpbb_posts p
        WHERE p.topic_id = 794650
                AND ((p.post_visibility = 1))


        ORDER BY p.post_time ASC, p.post_id ASC
 LIMIT 13110, 30;
# Time: 200207 14:04:31
# User@Host: db_phpbb[db_phpbb] @ localhost []
# Thread_id: 1008488  Schema: db_phpbb  QC_hit: No
# Query_time: 11.302361  Lock_time: 0.000037  Rows_sent: 1  Rows_examined: 6223
SET timestamp=1581073471;
SELECT COUNT(p.post_id) AS prev_posts
                        FROM phpbb_posts p
                        WHERE p.topic_id = 829408
                                AND ((p.post_visibility = 1)) AND (p.post_time < 1578314160 OR (p.post_time = 1578314160 AND p.post_id <= 33218300));
# Time: 200207 14:04:35
# User@Host: db_phpbb[db_phpbb] @ localhost []
# Thread_id: 1008381  Schema: db_phpbb  QC_hit: No
# Query_time: 29.161335  Lock_time: 0.000028  Rows_sent: 1  Rows_examined: 12759
SET timestamp=1581073475;
SELECT COUNT(p.post_id) AS prev_posts
                        FROM phpbb_posts p
                        WHERE p.topic_id = 301895
                                AND ((p.post_visibility = 1)) AND (p.post_time < 1559823060 OR (p.post_time = 1559823060 AND p.post_id <= 32422686));
# Time: 200207 14:04:37
# User@Host: db_phpbb[db_phpbb] @ localhost []
# Thread_id: 1008526  Schema: db_phpbb  QC_hit: No
# Query_time: 11.532666  Lock_time: 0.000036  Rows_sent: 30  Rows_examined: 3461
SET timestamp=1581073477;
SELECT p.post_id
        FROM phpbb_posts p
        WHERE p.topic_id = 274173
                AND ((p.post_visibility = 1) OR ((p.post_visibility = 0 OR p.post_visibility = 3) AND p.poster_id = 17))


        ORDER BY p.post_time DESC, p.post_id DESC
 LIMIT 3431, 30;
Так что разобраться в новых артефактах сложно, прошу помощи.

Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 14746
Зарегистрирован: 12.05.2006 18:16
Откуда: Красноярск
Благодарил (а): 354 раза
Поблагодарили: 1623 раза

Re: Высокая нагрузка от phpBB 3.3

Сообщение rxu »

Craftsman писал(а):
07.02.2020 14:50
LIMIT 28650, 30;
Я пока не понимаю, каким образом идет выборка 28620 записей из БД. Это означает, что вы выставили количество выводимых постов на одну страницу темы в 28650. Это как?

Чего-то вы недоговариваете.
Изображение

Craftsman
phpBB 1.4.0
Сообщения: 37
Зарегистрирован: 29.07.2018 23:06
Благодарил (а): 5 раз
Поблагодарили: 9 раз

Re: Высокая нагрузка от phpBB 3.3

Сообщение Craftsman »

rxu, не совсем так. Там выборка идет так: начиная с 28620 показать 30 записей.

Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 14746
Зарегистрирован: 12.05.2006 18:16
Откуда: Красноярск
Благодарил (а): 354 раза
Поблагодарили: 1623 раза

Re: Высокая нагрузка от phpBB 3.3

Сообщение rxu »

Тогда тем более неясно, в чем проблема отбора 30 записей из БД.
Опять элементарный запрос, который вешает вашу базу данных.
phpBB не при делах.
Изображение

Craftsman
phpBB 1.4.0
Сообщения: 37
Зарегистрирован: 29.07.2018 23:06
Благодарил (а): 5 раз
Поблагодарили: 9 раз

Re: Высокая нагрузка от phpBB 3.3

Сообщение Craftsman »

rxu писал(а):
07.02.2020 19:21
phpBB не при делах.
Так по запросам видно, что эти запросы приходят именно от phpBB.
И больше этой базой никто из других приложений не пользуется, кто ж тогда при делах, если не phpBB ?

Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 9952
Зарегистрирован: 08.08.2011 2:02
Благодарил (а): 176 раз
Поблагодарили: 2765 раз

Re: Высокая нагрузка от phpBB 3.3

Сообщение Татьяна5 »

Подобные запросы не должны вешать базу данных. Они лёгкие

Аватара пользователя
nissin
phpBB 3.0.4
Сообщения: 2184
Зарегистрирован: 16.12.2007 14:01
Откуда: Павлодар
Благодарил (а): 7 раз
Поблагодарили: 339 раз

Re: Высокая нагрузка от phpBB 3.3

Сообщение nissin »

Craftsman,
1) у вас очень много сообщений в теме, рекомендую периодически их закрывать.
2) я был попробовал сделать индекс по всем 4 полям участвующим в запросе в следующем порядке:
topic_id, post_visibility, post_time, post_id
когда все поля уже есть в индексе, то SQL не будет обращаться за выборкой к данным (а тормозит именно она).
Всё повторяется. nurlan.info

Craftsman
phpBB 1.4.0
Сообщения: 37
Зарегистрирован: 29.07.2018 23:06
Благодарил (а): 5 раз
Поблагодарили: 9 раз

Re: Высокая нагрузка от phpBB 3.3

Сообщение Craftsman »

Татьяна5 писал(а):
07.02.2020 21:23
Подобные запросы не должны вешать базу данных. Они лёгкие
Хорошо, что не должны. Но ведь вешают же.
nissin писал(а):
07.02.2020 22:27
2) я был попробовал сделать индекс по всем 4 полям участвующим в запросе в следующем порядке:
topic_id, post_visibility, post_time, post_id
когда все поля уже есть в индексе, то SQL не будет обращаться за выборкой к данным (а тормозит именно она).
Спасибо, попробую
nissin писал(а):
07.02.2020 22:27
1) у вас очень много сообщений в теме, рекомендую периодически их закрыват
Надо будет подумать над этим, тут есть некоторые сложности.

Отправлено спустя 2 часа 49 минут 23 секунды:
Чем дальше в лес... наверное, буду возвращаться на 3.2.8.

Craftsman
phpBB 1.4.0
Сообщения: 37
Зарегистрирован: 29.07.2018 23:06
Благодарил (а): 5 раз
Поблагодарили: 9 раз

Re: Высокая нагрузка от phpBB 3.3

Сообщение Craftsman »

Итак, итоги 2-х дневного отката с 3.3.0 на 3.2.8: результат - великолепен! :applause
Никаких больше перегрузок, никаких длинных запросов, никаких запредельных темеператур, никакого круглосуточного воя кулера - все вернулось на круги своя, и снова наступила благодать :)

Так что ваша 3.3.0, если мягко выразиться - гуано :shock:

Может, она сносно работает с небольшими базами, но когда они достигают 40 GB, тогда вы реально прочувствуете на себе ваше "У нас все работает нормально!" :P

Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 14746
Зарегистрирован: 12.05.2006 18:16
Откуда: Красноярск
Благодарил (а): 354 раза
Поблагодарили: 1623 раза

Re: Высокая нагрузка от phpBB 3.3

Сообщение rxu »

Craftsman писал(а):
10.02.2020 20:24
ваша 3.3.0
Она такая же наша, как и ваша. Эмоции оставьте при себе.
Craftsman писал(а):
10.02.2020 20:24
никаких длинных запросов
Никаких длинных запросов и не было. Они остались теми же, какими и были.

Отправлено спустя 51 секунду:
Craftsman писал(а):
10.02.2020 20:24
тогда вы реально прочувствуете на себе ваше
На следующем таком экзерсисе получите ЖК.
Изображение

Вернуться в «Поддержка phpBB 3.3.x»