Caching Queries in CakePHP
Published on Apr 25, 2009
If you haven't noticed already, at times CakePHP can be a little slow loading! The reason for this is quite simple. Rapid Application Development. To allow for RAD, sometimes we must give up something, in this scenario it's a bit of speed when loading. Don't worry, CakePHP offers some excellent utilities to help with this.
The one I will focus on today is caching our CakePHP query results. The key to this is, we are caching the results, not the queries themselves. If you know databases well, you may be thinking, "why do I want to cache queries, doesn't my database server do this already?" The answer to the question is, yes it does. However, CakePHP still needs to call the database query and parse your results. What I'm proposing, will avoid both of those steps and allow you to just retrieve the results.
This process not only avoids excess load on the database, it also reduces PHP's processing time that CakePHP has to do to provide you with such useful arrays.