I am soliciting feedback for caching options in our Drupal 7 environment. Any feedback would be helpful.
A little bit about our environment. We have 3 nodes that all all the same Drupal code. They are load balanced via a round robin protocol, all talking to a mysql server on the back end. Most, of the traffic (80%+) is authenticated. We probably get 750k - 1 million hits a day on across all 3 of these nodes.
We have APC running running, but are looking for other caching options as our DBA's are not happy with the amount of cache data that we are sending to the DB. The cache_form table is one of our major offenders that is really thrashing the DB. We are looking at the next level of cache options, including memory cache and file cache.
A lot of people are using memcached, with good results. It seems most people when using memcached, don't cache the cache_form table. Another option, Redis, is similar to memcached, can supposedly handle the cache_form.
Another option we are looking at is File Caching (http://drupal.org/project/filecache). This seems like it would have less moving parts, only a file share between all three nodes to share the cache information. I'm unfamiliar with how well this would work and any possible downsides.
I'd be happy to hear suggestions and thoughts
Thanks!
Comments
File Cache
cache_formis not shared between sessions. If your load balancing can guarantee that each session is handled always by same node, you can set up File Cache to handlecache_formlocally and it should be the fastest possible solution.File Cache is designed to work with network file system but noone reported such set up. In theory, if NFSv4 delegations (local cache) are used, it may perform much better than any other centralised caching.