Перейти к публикации

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

сайт prognozist.ru

Прекручиваю мод репутации. Автор мода участник этого форума. Спасибо ему огромное за написание модуля, но возник вопрос на счет оптимизации скрипта.

Нужно репутацию выводить за 30 последних дней и за 365 дней (за год)

Реализованно с помощью функции sum() - это большую нагрузку даст на сервер?

		  $monthRes = $db->super_query("SELECT sum(reputation) as result FROM " .PREFIX. "_reputation WHERE date > ADDDATE(now(),INTERVAL -30 DAY)");

		  $tpl->set('{month_reputation}', $monthRes['result']);


		  $yearRes = $db->super_query("SELECT sum(reputation) as result FROM " .PREFIX. "_reputation WHERE date > ADDDATE(now(),INTERVAL -365 DAY)");

		  $tpl->set('{year_reputation}', $yearRes['result']);

т. е. при каждом выводе тегов {year_reputation} и {month_reputation} скрипт делает запрос sum () к БД. Это большая нагрузка считается? Таблица состоит из 5 столбцов (id id_users id_teme date ну и само значение репутации). Таблица будет расти примерно по 5 - 20 строк в день.

На главной планируется выводить 12 новостей по одному запросу на новость получается. Может не выводить на главной?

В полной новости и в профиле пользователя. Тут то точно не повредит?

Изменено пользователем ua1907
Ссылка на сообщение
Поделиться на других сайтах

да фиг его знает. Не желательно конечно, обычно в таком случае используют отдельные таблицы статистики (или просто столбцы), которые раз в определённое время пересчитываются, например, при добавлении репутации.

Попробуй, а дальше видно будет)

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

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

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

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

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

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

×
×
  • Создать...