Перейти к контенту

Создание архива сообщений


Рекомендуемые сообщения

Проблема состоит в том, что при разрастании форума, он становится неуклюжим и тормозным из-за того, что IPB хранит все сообщения в одной таблице.

 

В некоторых случаях убивать старые темы жалко. Полагаю, что оптимизировать работу форума можно было бы путем создание архива сообщений. При перемещении тем в архив, все сообщения переносятся в другую таблицу.

 

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

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

ну например вот неплохой вариант:

Подрезаем БД: сброс постов в файлы

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

Song, спасибо. Оригинальная, конечно, идея, но как-то все это... Извращение некоторое.

 

Честно говоря, не понимаю, почему необходимость архива не осознается разработчиком. Никому не надо? А как же большие форумы. Я видел и по миллиону, по два сообщений. И все в одной таблице хранить? Ужасть! Этого же даже колокэшн не выдержит. Главное неясно, зачем нужно дергать постоянно одну огромную таблицу :D

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

У меня была мысль разбить одну большую но маленькие.

Я задал вопрос на форуме mysql. Ответ был таков: разделение на маленькие таблички не увеличит производительности.

Если есть таблицы, и она индексирована, то обращение по индексу даёт лучшее решение.

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

У меня была мысль разбить одну большую но маленькие.

Я задал вопрос на форуме mysql. Ответ был таков: разделение на маленькие таблички не увеличит производительности.

Если есть таблицы, и она индексирована, то обращение по индексу даёт лучшее решение.

Song, я понимаю, но... На одном хостинг-форуме админы приводили пример, как один товарищ создал 1000 однородных таблиц. Это как у Карлсона - мама испекла торт с восемью свечами - лучше бы она испекла восемь тортов с одной свечой. 1000 таблиц - это дурь. Но деление на базу и архив, на мой взгляд, целесообразно.

 

Я, конечно, очень туманно представляю себе, как работает Mysql изнутри, но мне кажется, что маленькая таблица в любом варианте работает быстрее большой, даже при наличии индекса. Ведь по большому счету, архив используется довольно редко и обращения к этой таблице будут тоже нечастые - при пересчете постов пользователя, при поиске сообщений, возможно, при выводе профайла (не помню, вроде он должен перебирать посты для определения параметра "Наибольшая активность в таком-то форуме").

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

Архив, если это БД на том же сервере, это та же ж, вид сбоку.

Нужно тогда отдельный сервер, чтобы при просмотре архива нагрузка вообще не сказывалась.

Конечно здесь облегчение есть, прежде всего на запросах на всяческий рекаунт. Поищи может даже такой мод есть.

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

ребята, подскажите:

 

1. зачем на некоторых форумах после того, как тема доходит до 100 страниц, ее закрывают и открывают аналогичную?

2. темы с решенными вопросами надо закрывать? (это влияет на скорость работы самого форума?)

3. что еще посоветуете делать модерам, для уменьшения тормозов форума?

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

1. Потому что запросы с таким количеством постов становятся ресурсоёмкими.

 

2. Не играет роли закроете вы её или нет..

 

3. Не ставить бездумно модификаци..

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

  • 3 недели спустя...
1. зачем на некоторых форумах после того, как тема доходит до 100 страниц, ее закрывают и открывают аналогичную?

Затем, что если вдруг понадобится тему разделить, всю эту массу сообщений модератор получит на одной странице...

 

 

2. темы с решенными вопросами надо закрывать? (это влияет на скорость работы самого форума?)

Это уменьшает количество флуда, который со временем прирастает к любой незакрытой теме.

 

 

3. что еще посоветуете делать модерам, для уменьшения тормозов форума?

Отменять подписки на темы. Особенно если у тебя свой выделенный сервер, и SMTP по локалхосту. На днях тестировал; нарисовалась интересная картинка: при отправке сообщения в топик, в котором есть подписанные на обновления, в течение 2 секунд сервер даже входящие запросы не обрабатывает, бэд гатевей отдает, скотина такая.

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

Присоединиться к обсуждению

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

Гость
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

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

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.