Задержка запроса MySQL и затем массовый запуск - PullRequest
0 голосов
/ 30 июля 2011

У меня есть виджет, который отображает несколько статей.Для каждой статьи есть около 2 выборок и 1 вставка / обновление.

Наихудший сценарий включает в себя виджет, отображающий 300 статей, и включает 900 запросов плюс другие запросы на установку виджета, и это действительно замедляет виджетвниз.Теперь представьте, что вместе с виджетом, который иногда загружают одновременно 5 пользователей.

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

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

Что используют такие сайты, как youtube и т. Д. Для кэширования просмотров видео на YouTube.

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

1 Ответ

0 голосов
/ 30 июля 2011

Использование задания cron для выполнения такой тяжелой работы - неплохая идея: просто попросите cronjob сгенерировать вывод HTML и использовать этот HTML из своего кода PHP при отображении страницы.

Этопуть:

  • Страница будет быстро отображаться: только один статический HTML-файл / файл для включения / чтения
  • Никогда не будет более одного пользователя (cronjob), выполняющего всетяжелые запросы.


А если серьезно, 900 запросов на виджет?3 запроса для одной статьи?
Здесь действительно нужно что-то улучшать!

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