On April 1st Redis team announced the release of Redis 3.0.0 stable. It is the firs stable version of Redis with native support for clustering. Team was working on this from long and many of the features were already back ported to Redis 2.8.
Other new things implemented in 3.0.0 that may be significative to
users not interested in Redis Cluster are:
- An improved LRU algorithm, ways more precise to evict the older keys.
- Redis 3.0.0 is generally sensibly faster under high (pipelined) load.
- AOF rewrite was reworked in order to reduce latency spikes with slow disks when the process undertakes the final “write” of the accumulated buffer.
Changes compared to Redis 2.8?
- Redis Cluster: a distributed implementation of a subset of Redis.
- New “embedded string” object encoding resulting in less cache misses. Big speed gain under certain work loads.
- AOF child -> parent final data transmission to minimise latency due to “last write” during AOF rewrites.
- Much improved LRU approximation algorithm for keys eviction.
- WAIT command to block waiting for a write to be transmitted to the specified number of slaves.
- MIGRATE connection caching. Much faster keys migraitons.
- MIGRATE new options COPY and REPLACE.
- CLIENT PAUSE command: stop processing client requests for a specified amount of time.
- BITCOUNT performance improvements. * CONFIG SET accepts memory values in different units (for example you can use “CONFIG SET maxmemory 1gb”).
- Redis log format slightly changed reporting in each line the role of the instance (master/slave) or if it’s a saving child log.
- INCR performance improvements.