Thoughts? Feedback? Suggestions? Dries?
Dries and I did a bunch of cache tests a while ago, the conclusions were posted on the list. I think it was shortly after the 4.5 release. Various ideas for keeping the cache alive longer were posted as well. Ones I can remember: - Enforcing a minimum cache lifetime for pages is pretty easy with the timestamp/expiration parameter for cache. - It is important that a user sees his/her changes reflected immediately, otherwise they might think an error occured and post twice. Possible solution: disable caching for a user's session as soon as a they have posted something. For your case this would mean the spambot get fresh pages all the time, but the rest doesn't. - Clearing the cache selectively is difficult because sidebar blocks like "active forum topics" change easily. Still, clearing out the "main" page for a certain item (e.g. a node view) is doable. - The cache has a much higher miss rate than expected on drupal.org at least because the site is constantly being crawled by spiders. Pages that are visited often get re-cached quickly after a wipe, but this doesn't happen for the random access pattern that is common for spiders and also for posts reached through searching. - Any aggressive caching should be implemented as an optional feature as it is useless for small sites. Perhaps we could change the cache option into three states: "No caching" "Mild caching" "Aggressive caching". Still, it sounds to me like your problem could be fixed by imposing a throttle on submissions (we used to have this, but it got lost in one of the node system rewrites) or by trying to detect spammy behaviour and imposing a (temporary) ban. If you dig around the mailinglist archive some more, you might find some more things. Steven