Implement redis as cache backend
|Priority:||Could have||Due date:|
|Assignee:||Christian Kuhn||% Done:||
|Target version:||TYPO3 Flow Base Distribution - 1.0 alpha 13|
Redis  is a noSQL database with very good scaling characteristics in relation to the amount of entries and data size. This makes redis perfectly fit to our needs as a caching backend. It's a young, but very active project with currently very high development speed.
Performance measurements show that this backend easily outperforms every other existing backend in most use cases, especially when in comes to larger data sizes with tons of entries. All base operations scale O(1) with the number of cache entries (not with the number of affected entries).
There are different adapters for php, this backend implementation uses phpredis, which is a redis implementation as php module 
This backend is tested with:
- redis version >= 2.0.0-rc2, version 1.2.0 does not work
- phpredis, git version 0abb9e5ec07b8a8c20b5 from 2010-07-18, prior versions should work, but have a major performance issue with data sizes > 8kb.
This is my first real contribution to FLOW3, i hope code quality is high enough and unit tests have acceptable code coverage. Please give feedback if anything needs to be improved.
The v4 backport of this backend already exists and is in production for early adapters, it will hopefully make it to v4.5, as soon as FLOW3 accepted the implementation.
[+FEATURE] FLOW3 (Cache): Implement redis as cache backend
Redis is a noSQL database with very good scaling characteristics
in relation to the amount of entries and data size and fits perfectly
to our needs as a caching backend. This implementation uses the
phpredis PHP module.
[~TASK] FLOW3 (Cache): Rename Redis Cache Backend
This renames the cache backend formerly named "PhpredisRedisBackend"
If there should be, at some point in the future, a second implementation
of a Redis backend, or another way for accessing Redis should be supported,
then this should be solved with a configuration option for this RedisBackend.
Relates to: #9017
Updated by Karsten Dambekalns almost 3 years ago
- Priority changed from Should have to Could have
- Start date deleted (
Updated by Christian Kuhn over 2 years ago
- Status changed from New to Resolved
- % Done changed from 0 to 100
Applied in changeset 7f11528521db7d04845e652d948a429b93f2f2e9.