Где данные редко меняются - кэшируйте страницы или блоки, из которых страницы формируются. Если часто меняются, тогда оптимизируйте базу данных, может, у вас не оптимальные выборки. Если читателей слишком много, тогда можно заранее готовить результаты выборки, чтобы не во время посещения сайта в базе искались данные, а в момент их добавления (или периодически) для каждого юзера/группы юзеров готовились результаты.