Tu motor de Base de datos (Mysql) puede hacer caché de consultas. Se ajusta u optimiza que tanto caché se hace por configuración de Mysql (mysql.ini o mysql.cfg)
Unos tutoriales al respecto:
http://blackshell.usebox.net/archivo/617.php http://www.databasejournal.com/featu...le.php/3110171
Por tu parte en programación PHP puedes cachear "paginas" (que a su vez si son consultas SQL a tus BD lo que estás contienen .. algo aliviará a su vez tus servidor de BBDD).
Algunos de estos sistemas de "Motores de gestión de plantillas" con opción de "caché" de paginas son:
Smarty, NokTemplate ..
(si usas google o el buscador veras mucha información al respecto).
Que tanto te beneficie usar "caché" (tanto en Mysql directo .. con el extra de consumo de recursos de memoria y algo de proceso como de PHP con algo más de proceso si ussa algún motor de gestión de plantillas) dependerá de que tan "iguales" sean siempre los resultados que se obtienen de tus consultas y con que frecuencia cambian tus datos origen.
Un saludo,