- Compatible XF 1.x versions
- 1.4, 1.5
- Additional requirements
Redis (v3.0.0 or better)
phpredis (for performance)
apcu (for loading data from local slave)
- MIT Licence (add-on), New BSD (Redis Zend component)
- Visible branding
Please be aware that Redis is very sensitive to latency in a virtual environment. If repeated connection failures or protocol errors are experienced disable any Redis Persistence options.
With the $config['cache']['backendOptions']['load_from_slave'] option, reads can be deferred to a singular slave instance. This takes all the options of 'backendOptions' (except the slave config)
See the FAQ for configuration samples.
The Zend component support master/slave setups with Redis Sentinel support. It does not support Redis multi-master clustering.
- Additionally, this add-on implement caching of thread counts in a forum.
- Redis Sentinel support for high-availability (see FAQ for details).
- Optionally, pipelining or loading from a slave can be enabled in XenForo_Model_DataRegistry::getMulti by adding the following lines to config.php. Preferably after setting up the cache.
- Loading from a slave (limited opt-in support) is only enabled fro public (ie non-admin) pages.
- APCu is used to store the list of local IPs fetched via shell_exec for "hostname --all-ip-addresses". If someone knows of a better way of getting all machine IPs, please tell me.
By default the Zend Cache "tags" support is disabled as XenForo does not use it and it introduces additional operations to support it. To enable;
$config['cache']['backendOptions']['enable_tags'] = true;
Components licenced under; New BSD
- XenForo Add-on code
I recommend using Add-on install & upgrade to install this add-on.
Contributing features or bug fixes
Please create a GitHub Pull request via the "Find more info at github.com..." link.
If you appreciate this add-on, please consider a contribution via PayPal. Details will be provide via private conversation.
Please contact me if you wish for different licencing arrangements.