Русское сообщество fluxbb

Быстрый лёгкий надёжный форумный движок

Вы не вошли.

Объявление

Вы можете внести свой вклад в содержание сайта. Жертвователи попадут в почетную группу "Спонсоры". Поддержать сайт.

#1 2008-04-10 16:49:01

snapik
Гость

Тормозит форум

Такая проблема:
запрос к базе

SELECT p.id, p.posted, t.last_post, t.subject, t.forum_id
FROM forum_posts AS p
INNER JOIN forum_topics AS t
WHERE p.posted = t.last_post
AND t.forum_id <>12
ORDER BY p.posted DESC
LIMIT 5

- этот запрос выполняется на каждой странице форума

выполняется иногда за ~0.0011 сек (в 50% загрузок страниц), а иногда за ~5 сек (в других 50%),
долго мучал этим вопросом хостера, оказалось, что дело не в нем, а в самом скрипте punbb.
Из-за чего такое может?

Редактировался snapik (2008-04-10 16:56:31)

#2 2008-04-10 17:17:40

Visman
Гость

Re: Тормозит форум

Может так

SELECT p.id, p.posted, t.last_post, t.subject, t.forum_id
FROM forum_posts AS p, forum_topics AS t
WHERE p.posted = t.last_post
AND t.forum_id <>12
ORDER BY p.posted DESC
LIMIT 5

или так

SELECT p.id, p.posted, t.last_post, t.subject, t.forum_id
FROM forum_posts AS p, forum_topics AS t
WHERE p.id = t.last_post_id
AND t.forum_id <>12
ORDER BY p.posted DESC
LIMIT 5

сделать?

#3 2008-04-10 17:43:56

snapik
Гость

Re: Тормозит форум

Спасибо за идею.
Слушай а почему у тебя на форуме так мало запросов требуется?

#4 2008-04-10 17:45:58

Visman
Гость

Re: Тормозит форум

А можно и только запрос к таблице топиков построить:

SELECT last_post_id, last_post_id, last_post, subject, forum_id
FROM forum_topics
WHERE forum_id <>12
ORDER BY last_post_id DESC
LIMIT 5

правда у меня получилось два раза last_post_id smile
Может там нужен был постер который последнее сообщение написал?

Добавлено спустя     2 минуты   57 секунд:

snapik пишет:

Слушай а почему у тебя на форуме так мало запросов требуется?

На головной два запроса кэшируются для получения последнего юзера.
Для гостей нет запросов к личным сообщениям.
Поэтому и мало.

#5 2008-04-10 17:50:04

snapik
Гость

Re: Тормозит форум

Еще раз спасибо за совет, теперь проблем нету.

#6 2008-04-17 01:13:59

Dayset
Гость

Re: Тормозит форум

В доках к Punbb есть советы по оптимизации, говорится о "Use a PHP cache/accelerator tool such as eAccelerator or Alternative PHP Cache. " Эти кеши и акселераторы сильно помогают? Мне не критично вообще, просто решил узнать может кто пользуется? Когда начнутся тормоза (при какой загрузке) и помогут ли эти акселераторы...

#7 2008-04-17 03:16:22

Visman
Гость

Re: Тормозит форум

Dayset пишет:

Эти кеши и акселераторы сильно помогают? Мне не критично вообще, просто решил узнать может кто пользуется? Когда начнутся тормоза (при какой загрузке) и помогут ли эти акселераторы...

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

#8 2008-04-17 04:30:28

Dayset
Гость

Re: Тормозит форум

А я б такой чтобы дохрена на главной и в самом viewforum повырезать, потом....., руки до пилки доберутся...
Оно то понятно, что если у тебя на форуме 1000 человек, то ты уже можешь ставить машину вроде этих перцев http://forum.theabyss.ru/index.php?showtopic=82887&st=0
Просто интересно сколько даст еще вот эта припарка "eAccelerator or Alternative PHP Cache"

Подвал доски

Под управлением FluxBB. Хостинг Hostens