У меня есть веб-сайт, настроенный для проверки того, являются ли определенные каналы на ustream.com и livestream.com живыми или нет.
Как он работает в настоящее время, он запрашивает таблицу базы данных каналов, а затем для каждого канала использует API для ustream.com или livestream.com, чтобы проверить, жив ли он или нет, и делает это каждый раз, когда кто-то посещает сайт.
Проблема в том, что всего за первую половину дня, когда сайт стал жить, он получил более 350 посещений, и люди продолжают обновлять страницу, чтобы у нее было 15 000 хитов. Это замечательно, за исключением того, что он перегружает базу данных.
Я думаю, мне нужно использовать задание cron и создать кэшированную страницу, которая обновляется каждые несколько минут, так что она запрашивает базу данных и API намного меньше раз в час.
Может ли кто-нибудь дать мне несколько указаний о том, как это сделать? Я знаю, как настроить работу cron, но как создать постоянно обновляемую кешированную страницу?
Или, если у вас есть лучшее решение, я бы хотел его услышать.
Это не оплачиваемая работа, я построил ее как бесплатный сервис, чтобы помочь людям узнать, какие живые существа живут в данный момент.
Вот ссылка на сайт,
http://freedomfighterstreams.com/
Я использую структуру Codeigniter MVC.
Я бы рекомендовал вам эту библиотеку кэширования для Codeigniter, поскольку она более настраиваема, чем CI buit one:
https://github.com/philsturgeon/codeigniter-cache/blob/master/README.md
Здесь вы найдете полезные примеры. Ваши результаты будут кэшироваться как файлы.
(публикация этого ответа, а не комментария, из-за пристрастий)