Parser Cache: $wgParserCacheType
Parser cache setting
Introduced in version:1.5.0
Removed in version:still in use
Allowed values:(One of the cache constants) see below
Default value:CACHE_ANYTHING

Details edit

The cache type for storing page content HTML (e.g. parsed from wikitext).

Parsing wikitext is considered an expensive operation. It is recommended to give your parser cache plenty of storage space, such that long tail cache hits are possible.

The default parser cache backend (when MainCacheType is left to CACHE_NONE) is effectively CACHE_DB (SqlBagOStuff). If you set up a main cache type such as memcached, it is recommended to set this explicitly to CACHE_DB.

Here are the available cache constants, as defined in Defines.php

  • CACHE_ANYTHING - Use anything, as long as it works
  • CACHE_NONE - Do not cache
  • CACHE_DB - Store cache objects in the DB
  • CACHE_MEMCACHED - memcached, must specify servers in Manual:$wgMemCachedServers
  • CACHE_ACCEL - APC, or WinCache, whichever is available, in this order. Determined by the function "ObjectCache::newAccelerator".

Note edit

Advice for large wiki farms:

  • Consider allocating a dedicated database to ParserCache. Register it in $wgObjectCaches and point $wgParserCacheType to it.
  • Consider using MultiWriteBagOStuff to add a higher tier with Memcached in front of the lower database tier.
  • Consider setting 'purgePeriod' => 0 in the dedicated SqlBagOStuff entry in $wgObjectCaches. This disables the automatic purging of expired rows (which would normally happen in the background of write requests). You can then schedule the purgeParserCache.php script to e.g. once a day prune expired rows from the a dedicated maintenance server.

See also edit