1, memcached data storage type only Key-value mode storage, Redis support more, including linked list, hash table, set, ordered set, etc.;
2, memcached does not support persistent storage, when the memcached server restarts, the data are all lost; Redis support persistence, is the data stored on disk, restart Redis service can still load the data on the disk, data is not lost;
3, memcached is can support multi-threading, Redis is single-threaded, in a large amount of data, about 100k, memcached speed is faster than Redis, small amount of data redis faster than memcached;
4, memory utilization on the memcached is before the use of partition and memory, and then the memory into a number of small modules, the use of data based on the size of the allocation; Memory usage is high, but if Redis uses a hash structure to do key-value storage, due to its combined compression, Memory utilization will be higher;
5. Redis supports server-side data manipulation: Redis has more data structures and supports richer data operations than memcached, usually in memcached, you need to get the data to the client for similar modifications and set it back. This greatly increases the number of network IO and the volume of data. In Redis, these complex operations are often as efficient as the general get/set. Therefore, Redis is a good choice if you need caching to support more complex structures and operations.
A summary of some differences between memcached and Redis