We run a number of web applications written in PHP. Unfortunately there are some select queries within these with some pretty hefty joins which are causing MySQL to become less responsive.
Because of this we are looking into caching some of the regularly used joins. I have looked into Zend_Cache which looks promising, are there any other alternatives that may perform better?
Also what is the best back end for a cache? I believe Zend_Cache offers file based, Sqlite and Memcached.
When speed is important you should definitely go for memcached. But in most cases a filecache or sqlite cache serves your needs.
Zend_Cache is a very good Caching library, the fact that it support numerous caching mechanisms through it’s adapter system makes changing caching solutions lateron a breeze, so I would definitely go for Zend_Cache.