Chapter 11. Wiki Performance
This chapter takes a look at how to performance-tune MediaWiki sites. Because of Wikipedia's success, you could consider it to be a worst-case scenario in terms of performance management. It is fairly safe to say that most other installations will have much less traffic and be much less complex than the one in place for Wikipedia, but it's nice to know that there's no doubt that MediaWiki can scale.
When MediaWiki receives a request for a page, it performs a number of tasks—from ensuring that the user requesting the page is allowed to see it to converting wikitext to HTML, and then generating the page itself, delivering the appropriate layout based upon the preferences of the user. As programmers are wont to say: this is not a trivial task. Consider the fact that Wikipedia is reportedly the eighth most visited website in the world and one can see that for the developers of MediaWiki, performance is an important issue.
A website lives in a complex environment and numerous factors influence a site's performance characteristics. From a user's perspective, performance is simply a measure of how long it takes for a page to load after the user has clicked a link to that page. When a user clicks on a link, a request is sent to the host server in the form of an HTTP header, a simple string of text that looks like this:
GET /mysql/index.php/Main_Page HTTP/1.1 Host: 127.0.0.1 User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en-US; rv:184.108.40.206) Gecko/200707250 ...