• This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn more.

Zend Redis Cache 1.5.1

No permission to download
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)
License
MIT Licence (add-on), New BSD (Redis Zend component)
Visible branding
No
This add-on packages Cm_Cache_Backend_Redis and Credis with a little glue-code to provide a Zend Cache for Redis. For best performance, install the php extension: phpredis

Troubleshooting

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.

Read Scaling

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.

High availability

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.

    Code:
    require(XenForo_Application::getInstance()->getConfigDir().'/SV/RedisCache/Installer.php');
  • 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.
Zend Cache Tags Support

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;
```

Licencing


Components licenced under; New BSD
  • Cm_Cache_Backend_Redis
  • Credis
Components licenced under; MIT Licence
  • XenForo Add-on code
Installation

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.

Contributions

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.
Author
Xon
Downloads
345
First release
Last update
Rating
5.00 star(s) 3 ratings

More resources from Xon

Latest updates

  1. 1.5.1 - Maintenance update

    Track upstream components: Prevent option compress_threshold < 1 to avoid errors compressing...
  2. 1.5.0 - Maintenance update

    Major update to redis library fixing a number of inconsistencies between pure php &...
  3. 1.4.2 - Maintenance update

    Sync with latest upstream redis php bindings By default the Zend Cache "tags" support is...

Latest reviews

When its working, than it brings a better page load in feeling and benchmarks. Installation from Redis Server its a litle bit tricky, but when it works with this addon it works like a charm. Thanks Xon. :)
Used in combination with CentOS 7 and PHP7 as well as Debian 8.2 with PHP7 this addon is simply incredible. It should be included in the XF source since redis is a pretty much fool-proof method of caching non-important data.
Xon thanks for the excellent addon. It's working very nicely on my forums using CentOS 6.7, CentminMod LEMP stack and Redis 3.x server :)