|Object cache setting
|Introduced in version:||1.5.0|
|Removed in version:||still in use|
|Allowed values:||(One of the CACHE constants (see below), or a string indicating the cache type set as key in
|Other settings: Alphabetical | By function|
Allows to configure the object cache used.
Here are the keys available by default (defined as constants in Defines.php):
CACHE_NONE– Do not cache (default).
CACHE_ANYTHING– Use $wgMessageCacheType or $wgParserCacheType if they are set to something other than
CACHE_ANYTHING. Otherwise use
CACHE_ACCEL– Use APCu or WinCache or OPcache if available.
CACHE_MEMCACHED– Use memcached if available. Servers must additionally be specified in $wgMemCachedServers.
CACHE_DB– Use the database table objectcache.
- Warning: This could potentially be slower than no caching, i.e.
PHP works by compiling a PHP file into bytecode and then executing that bytecode. The process of compiling a large application such as MediaWiki takes considerable time. PHP accelerators work by storing the compiled bytecode and executing it directly reducing the time spent compiling code.
OPcache is included in PHP 5.5.0 and later and the recommended accelerator for MediaWiki. Other supported op code caches are: WinCache.
Opcode caches store the compiled output of PHP scripts, greatly reducing the amount of time needed to run a script multiple times. MediaWiki does not need to be configured to do PHP bytecode caching and will "just work" once installed and enabled them.
See $wgObjectCaches for an example of a custom cache backend (e.g. Redis).
- It was stated that
CACHE_MEMCACHEDdirective will provide the most significant performance improvements in the case where you have memcached and an opcode cache installed.
- This is just one of MediaWiki's caching settings. For best performance you may need to consider other caching settings. See performance tuning.
- Since MediaWiki 1.27, PHP sessions are stored in a cache, depending on the variable of this setting, unless overridden by $wgSessionCacheType. This may cause problems when
CACHE_ACCELis used if apcu is misconfigured (see task T147161).
CACHE_ACCELonly supports APCu or WinCache since MediaWiki 1.31.