Нагрузка на сервер от phpbb3

Проблемы с установкой или работой phpBB 3.0.x? Получите помощь здесь!
С 1 января 2017 года phpBB Group прекращает поддержку phpBB версии 3.0.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.0 до 1 июля 2017 года.
Подробнее: Окончание поддержки phpBB 3.0.
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
mishael
phpBB 1.2.0
Сообщения: 18
Стаж: 18 лет 10 месяцев

Re: Нагрузка на сервер от phpbb3

Сообщение mishael »

Да, но Иннодб вроде не поддерживает полнотекстовый поиск? Как форуму без поиска?
И вопрос остался
SELECT t.topic_id, t.forum_id, t.topic_title, t.topic_last_post_id, t.topic_first_post_id, t.topic_replies, t.topic_replies_real, p.post_id, p.post_text, p.bbcode_uid, p.bbcode_bitfield, p.post_attachment, p.post_approved

Это по всей видимости получение последних тем
recent.php
// Fetching topics of public forums
$sql = 'SELECT t.topic_id, t.forum_id, t.topic_title, t.topic_last_post_id, t.topic_first_post_id, t.topic_replies, t.topic_replies_real, p.post_id, p.post_text, p.bbcode_uid, p.bbcode_bitfield, p.post_attachment, p.post_approved
FROM ' . TOPICS_TABLE . ' AS t, ' . POSTS_TABLE . ' AS p, ' . FORUMS_TABLE . " AS f
WHERE t.forum_id = f.forum_id
$sql_ignore_forums
$sql_only_forums
AND p.post_id = t.topic_first_post_id
AND t.topic_moved_id = 0
ORDER BY t.topic_last_post_id DESC LIMIT $cfg_nm_topics";

Как то дело оптимизировать чтобы не тупило? 100 000 тем 1000 000 сообщений.
Последний раз редактировалось mishael 09.06.2013 16:33, всего редактировалось 1 раз.
Аватара пользователя
MIT
Former team member
Сообщения: 2500
Стаж: 17 лет 6 месяцев
Откуда: 56°20′02″ с. ш. 36°42′45″ в. д.
Благодарил (а): 3 раза
Поблагодарили: 351 раз

Re: Нагрузка на сервер от phpbb3

Сообщение MIT »

mishael писал(а):но Иннодб вроде не поддерживает полнотекстовый поиск?
Зависит от версии MySQL. К тому же тебе никто не мешает переключить поиск в режим индексации движком форума.
mishael писал(а):И вопрос остался
А где вопрос?
mishael
phpBB 1.2.0
Сообщения: 18
Стаж: 18 лет 10 месяцев

Re: Нагрузка на сервер от phpbb3

Сообщение mishael »

Это по всей видимости получение последних тем
recent.php
// Fetching topics of public forums
$sql = 'SELECT t.topic_id, t.forum_id, t.topic_title, t.topic_last_post_id, t.topic_first_post_id, t.topic_replies, t.topic_replies_real, p.post_id, p.post_text, p.bbcode_uid, p.bbcode_bitfield, p.post_attachment, p.post_approved
FROM ' . TOPICS_TABLE . ' AS t, ' . POSTS_TABLE . ' AS p, ' . FORUMS_TABLE . " AS f
WHERE t.forum_id = f.forum_id
$sql_ignore_forums
$sql_only_forums
AND p.post_id = t.topic_first_post_id
AND t.topic_moved_id = 0
ORDER BY t.topic_last_post_id DESC LIMIT $cfg_nm_topics";

Как то дело оптимизировать чтобы не тупило? 100 000 тем 1000 000 сообщений.

Добавлено спустя 2 минуты 57 секунд:
MIT писал(а):переключить поиск в режим индексации движком форума
А вот тут интереснее. У меня стоит Fulltext mysql а если поставить Fulltext native то на Иннодб оно будет работать? На версиях младше 5.6.4 ? И нагрузка будет меньше?
Аватара пользователя
MIT
Former team member
Сообщения: 2500
Стаж: 17 лет 6 месяцев
Откуда: 56°20′02″ с. ш. 36°42′45″ в. д.
Благодарил (а): 3 раза
Поблагодарили: 351 раз

Re: Нагрузка на сервер от phpbb3

Сообщение MIT »

mishael писал(а):на Иннодб оно будет работать? На версиях младше 5.6.4 ?
Будет работать на чём угодно. В движке phpBB3 есть собственный индексатор контента, который использует три своих персональных таблицы для хранения контента.
mishael писал(а):И нагрузка будет меньше?
По части поиска — вряд ли. Но за счёт перехода на InnoDB общее количество узких мест будет снижено, а приведёт ли это в конкретно твоём случае к положительным результатам — заранее не известно. Но я думаю, что эффект будет.
mishael писал(а):Как то дело оптимизировать чтобы не тупило?
В общем — никак. То есть нет одно- и двухшаговых инструкций. Оптимизировать такие запросы надо комплексно, внося существенные правки в код.
Аватара пользователя
nissin
phpBB 3.0.4
Сообщения: 2229
Стаж: 18 лет 9 месяцев
Откуда: Астана
Благодарил (а): 7 раз
Поблагодарили: 344 раза

Re: Нагрузка на сервер от phpbb3

Сообщение nissin »

mishael писал(а): ORDER BY t.topic_last_post_id DESC LIMIT $cfg_nm_topics";
Как то дело оптимизировать чтобы не тупило? 100 000 тем 1000 000 сообщений.
Навскидку, создать индекс по topic_last_post_id в таблице phpbb_topics. Либо использовать для сортировки topic_last_post_time (по нему есть индекс).
По поиску я бы рекомендовал оставить Fulltext MySQL.
mishael
phpBB 1.2.0
Сообщения: 18
Стаж: 18 лет 10 месяцев

Re: Нагрузка на сервер от phpbb3

Сообщение mishael »

Спасибо. Сделал - подожду сутки глядя на результат.
Аватара пользователя
HAMMER663
Former team member
Сообщения: 2032
Стаж: 16 лет 5 месяцев
Откуда: Зеленоград
Благодарил (а): 77 раз
Поблагодарили: 249 раз

Re: Нагрузка на сервер от phpbb3

Сообщение HAMMER663 »

С этим можно чего-нибудь сделать?

Сервер был нагружен процессом mysql.
Вот самое проблемное место в записях slow log:

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

# Time: 130615 20:54:17

# Query_time: 1471 Lock_time: 1457 Rows_sent: 250 Rows_examined: 17286
SELECT p.post_id FROM (phpbb_search_wordlist w0 CROSS JOIN phpbb_search_wordmatch m0) LEFT JOIN phpbb_posts p ON (m0.post_id = p.post_id) WHERE w0.word_text LIKE 'акад%' AND m0.word_id = w0.word_id AND p.post_approved = 1 AND p.forum_id NOT IN (56, 57, 58, 61, 64, 65, 67, 68, 71, 77, 84, 92, 94, 150, 156, 190, 202, 245, 257, 259, 267, 274, 275, 276, 278, 280, 282, 284, 285, 304, 305, 306, 307, 314, 315, 317, 318, 324, 336, 337, 338, 339, 340, 368, 373, 378, 379, 381, 382, 426, 450, 512, 513, 514, 515, 523, 524, 525, 526, 537, 542, 602, 606, 609, 610, 615, 624, 626, 647, 648, 649, 650, 651, 653, 654, 655, 660, 662, 663, 664, 665, 668) GROUP BY p.post_id, p.post_time ORDER BY p.post_time DESC
LIMIT 250;
# Time: 130615 20:54:23

# Query_time: 16 Lock_time: 3 Rows_sent: 0 Rows_examined: 0
UPDATE phpbb_users
SET user_last_search = 1371290047
WHERE user_id = 6207;

# Query_time: 1862 Lock_time: 1842 Rows_sent: 250 Rows_examined: 18842
SELECT p.post_id FROM (phpbb_search_wordmatch m0) LEFT JOIN phpbb_posts p ON (m0.post_id = p.post_id) WHERE m0.word_id = 26732 AND p.post_approved = 1 AND p.forum_id NOT IN (1, 5, 6, 7, 16, 17, 18, 19, 20, 22, 25, 26, 31, 33, 38, 40, 41, 42, 53, 54, 56, 57, 58, 61, 64, 65, 67, 68, 69, 70, 71, 77, 84, 88, 92, 94, 95, 97, 100, 103, 104, 105, 106, 107, 108, 110, 111, 113, 114, 115, 116, 117, 118, 119, 120, 122, 123, 124, 136, 138, 140, 142, 143, 145, 150, 152, 153, 154, 155, 156, 161, 181, 182, 183, 184, 186, 187, 188, 189, 190, 191, 192, 201, 202, 203, 208, 209, 210, 212, 213, 214, 215, 216, 224, 231, 235, 236, 240, 241, 245, 255, 257, 258, 259, 260, 261, 267, 268, 270, 272, 274, 275, 276, 278, 280, 281, 282, 283, 284, 285, 286, 287, 288, 294, 295, 296, 298, 299, 300, 301, 303, 304, 305, 306, 307, 308, 314, 315, 317, 318, 324, 330, 331, 336, 337, 338, 339, 340, 344, 345, 346, 347, 348, 352, 353, 355, 356, 357, 358, 359, 360, 361, 362, 363, 366, 368, 370, 372, 373, 374, 375, 376, 378, 379, 381, 382, 383, 384, 388, 418, 419, 424, 425, 426, 427, 428, 429, 430, 432, 433, 434, 435, 450, 451, 456, 457, 458, 463, 465, 466, 467, 468, 473, 475, 479, 482, 483, 484, 486, 492, 496, 497, 499, 503, 505, 506, 507, 510, 511, 512, 513, 514, 515, 523, 524, 525, 526, 531, 532, 533, 535, 537, 539, 540, 541, 542, 600, 602, 603, 604, 605, 606, 607, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 622, 624, 625, 626, 629, 630, 631, 632, 633, 635, 636, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 653, 654, 655, 656, 657, 658, 660, 661, 662, 663, 664, 665, 666, 667, 668) GROUP BY p.post_id, p.post_time ORDER BY p.post_time DESC
LIMIT 250;

# Query_time: 1862 Lock_time: 1842 Rows_sent: 250 Rows_examined: 18842
SELECT p.post_id FROM (phpbb_search_wordmatch m0) LEFT JOIN phpbb_posts p ON (m0.post_id = p.post_id) WHERE m0.word_id = 26732 AND p.post_approved = 1 AND p.forum_id NOT IN (1, 5, 6, 7, 16, 17, 18, 19, 20, 22, 25, 26, 31, 33, 38, 40, 41, 42, 53, 54, 56, 57, 58, 61, 64, 65, 67, 68, 69, 70, 71, 77, 84, 88, 92, 94, 95, 97, 100, 103, 104, 105, 106, 107, 108, 110, 111, 113, 114, 115, 116, 117, 118, 119, 120, 122, 123, 124, 136, 138, 140, 142, 143, 145, 150, 152, 153, 154, 155, 156, 161, 181, 182, 183, 184, 186, 187, 188, 189, 190, 191, 192, 201, 202, 203, 208, 209, 210, 212, 213, 214, 215, 216, 224, 231, 235, 236, 240, 241, 245, 255, 257, 258, 259, 260, 261, 267, 268, 270, 272, 274, 275, 276, 278, 280, 281, 282, 283, 284, 285, 286, 287, 288, 294, 295, 296, 298, 299, 300, 301, 303, 304, 305, 306, 307, 308, 314, 315, 317, 318, 324, 330, 331, 336, 337, 338, 339, 340, 344, 345, 346, 347, 348, 352, 353, 355, 356, 357, 358, 359, 360, 361, 362, 363, 366, 368, 370, 372, 373, 374, 375, 376, 378, 379, 381, 382, 383, 384, 388, 418, 419, 424, 425, 426, 427, 428, 429, 430, 432, 433, 434, 435, 450, 451, 456, 457, 458, 463, 465, 466, 467, 468, 473, 475, 479, 482, 483, 484, 486, 492, 496, 497, 499, 503, 505, 506, 507, 510, 511, 512, 513, 514, 515, 523, 524, 525, 526, 531, 532, 533, 535, 537, 539, 540, 541, 542, 600, 602, 603, 604, 605, 606, 607, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 622, 624, 625, 626, 629, 630, 631, 632, 633, 635, 636, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 653, 654, 655, 656, 657, 658, 660, 661, 662, 663, 664, 665, 666, 667, 668) GROUP BY p.post_id, p.post_time ORDER BY p.post_time DESC
LIMIT 250;
Аватара пользователя
Пчелкин
phpBB 3.3.0
Сообщения: 11361
Стаж: 16 лет 8 месяцев
Благодарил (а): 1832 раза
Поблагодарили: 1358 раз

Re: Нагрузка на сервер от phpbb3

Сообщение Пчелкин »

Это ж вроде был вывод из запроса в поиске...система не справилась...
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
Аватара пользователя
HAMMER663
Former team member
Сообщения: 2032
Стаж: 16 лет 5 месяцев
Откуда: Зеленоград
Благодарил (а): 77 раз
Поблагодарили: 249 раз

Re: Нагрузка на сервер от phpbb3

Сообщение HAMMER663 »

Пчелкин вроде-то оно вроде, но блин че с этим делать? Сервак что ли мощнее покупать?
Аватара пользователя
Пчелкин
phpBB 3.3.0
Сообщения: 11361
Стаж: 16 лет 8 месяцев
Благодарил (а): 1832 раза
Поблагодарили: 1358 раз

Re: Нагрузка на сервер от phpbb3

Сообщение Пчелкин »

1. Время сессий увеличить
Длительность сессии:
Сессия будет завершена по прошествию указанного времени, в секундах.
2. Тайм аут с сервером добавить (не менее чем в двое)...но это к хостеру...
3. Время на флуд дать больше
Задержка флуда:
Количество секунд, которое должно пройти между двумя сообщениями пользователя. Чтобы разрешить пользователям игнорировать это ограничение, установите им соответствующие права.
Эт что в голову пришло...
А...еще ...отключить ограничения на нагрузку сервера...
Ограничить нагрузку на сервер:
Если средняя ежеминутная нагрузка на сервер превышает заданное значение, форум будет автоматически отключен. Значение, равное 1.0, означает ~100% использование ресурсов одного процессора. Эта возможность применима только для серверов на основе UNIX.
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
Аватара пользователя
nissin
phpBB 3.0.4
Сообщения: 2229
Стаж: 18 лет 9 месяцев
Откуда: Астана
Благодарил (а): 7 раз
Поблагодарили: 344 раза

Re: Нагрузка на сервер от phpbb3

Сообщение nissin »

HAMMER663 писал(а):С этим можно чего-нибудь сделать?
Попробовать перейти с Native на MySQL поисковый механизм.
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 19 лет 7 месяцев
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2756 раз

Re: Нагрузка на сервер от phpbb3

Сообщение Sheer »

Так вроде он сильнее грузит? База меньше, а нагрузка больше, разве нет?
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
Аватара пользователя
nissin
phpBB 3.0.4
Сообщения: 2229
Стаж: 18 лет 9 месяцев
Откуда: Астана
Благодарил (а): 7 раз
Поблагодарили: 344 раза

Re: Нагрузка на сервер от phpbb3

Сообщение nissin »

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

Если и это не поможет, то переползать на сфинкс.
Аватара пользователя
HAMMER663
Former team member
Сообщения: 2032
Стаж: 16 лет 5 месяцев
Откуда: Зеленоград
Благодарил (а): 77 раз
Поблагодарили: 249 раз

Re: Нагрузка на сервер от phpbb3

Сообщение HAMMER663 »

Этот запрос из-за мода корзины + аддон какой-то, чтоб можно было в админке удалять окончательно сообщения и темы
Аватара пользователя
nissin
phpBB 3.0.4
Сообщения: 2229
Стаж: 18 лет 9 месяцев
Откуда: Астана
Благодарил (а): 7 раз
Поблагодарили: 344 раза

Re: Нагрузка на сервер от phpbb3

Сообщение nissin »

Запрос специфический именно для поискового механизма Fulltext Native.
Я не думаю, что в моде корзины прописываются такие запросы.

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