相同点:

1.都是Key-Value的存储结构方式;

2.kv类操作上,两者的性能接近,Memcached的结构更加简单,理论上应该会略微快一些。

不同点:

1.Redis还支持ListSet HashesSorted Set等数据结构,从暴露给用户的数据结构来看,要比memcached丰富;

2.Redis支持事务管理,通过Multi / Watch /Exec等命令可以支持事务的概念;

3.Redis可以以master-slave的方式配置服务器,Slave节点对数据进行replica备份,Slave节点也可以充当Read only的节点分担数据读取的工作,Redis的数据备份持久化方案等,如果不需要,为了提高性能,也完全可以Disable

4.Memcached 最小值是 400 bytes, 最大值是 1M byte.

在一个键里,存储的值超过1M(megabyte),如果超过了这个值,set的操作会失败,如果这个键原来有值了,会仍然是以前的值。

如果要超過 1M 也可以, 只是需要重新 compile memcached, 並且去修改 POWER_BLOCK 的值 或 使用 inefficient malloc/free 當 backend.

5.Redis 最小值是 400 bytes, 最大值是 512M byte.

详细参照:

http://www.cnblogs.com/wangdaijun/p/6014928.html

https://redis.io/topics/data-types

http://blog.csdn.net/lein_wang/article/details/52756859

6.Memcached Windows安装说明:http://www.open-open.com/lib/view/open1427793431990.html

7.Memcached服务器Linux安装说明:http://blog.csdn.net/zhuoxiong/article/details/12097483

8.扩展库DLL下载地址:http://windows.php.net/downloads/pecl/releases/

9.针对多个memcached服务中。有的服务器挂掉的解决办法:

http://www.zixue.it/thread-15434-1-1.html

10. 目前流行的缓存队列服务:

最简单是使用【redis 队列+守护进程】就能够承载一定量的并发的了。

常用的消息队列模型有RabbitMQ, ZeroMQ, Kafka,activeMQ,redis等,当需要使用时 该如何选择呢?

11. Redis还可以作为位置定位计算使用: redis的geo

redis的geo使用经纬度【lon lat】范围、数量计算后返回距离单位,甚至可以精确到米。

12. Redis拥有过期处理机制,如:下单完成后,未支付的情况下超时自动取消订单处理。