2009/6/26 Brion Vibber brion@wikimedia.org:
Tim Starling wrote:
It's quite a complex feature. If you have a server that deadlocks or is otherwise extremely slow, then it will block rendering for all other attempts, meaning that the article can not be viewed at all. That scenario could even lead to site-wide downtime, since threads waiting for the locks could consume all available apache threads, or all available DB connections.
It's a reasonable idea, but implementing it would require a careful design, and possibly some other concepts like per-article thread count limits.
*nod* We should definitely ponder the issue since it comes up intermittently but regularly with big news events like this. At the least if we can have some automatic threshold that temporarily disables or reduces hits on stampeded pages that'd be spiffy...
Of course, the fact that everyone's first port of call after hearing such news is to check the Wikipedia page is a fantastic thing, so it would be really unfortunate if we have to stop people doing that. Would it be possible, perhaps, to direct all requests for a certain page through one server so the rest can continue to serve the rest of the site unaffected? Or perhaps excessively popular pages could be rendered (for anons) as part of the editing process, rather than the viewing process, since that would mean each version of the article is rendered only once (for anons) and would just slow down editing slightly (presumably by a fraction of a second), which we can live with. There must be something we can do that allows people to continue viewing the page wherever possible.