redis做为一个非关系型内存键值数据库,能够存储键值和五种不一样类型的值类型。redis
键值只能为String型,值类型能够为String、List、Hash、Set、Sorted Set五种类型。数据库
由于redis是将数据保存在内存中,所以读写效率很是高,经常使用做缓存,另外也能够用于分布式锁。除此以外,redis还支持事务(假事务)、持久化缓存
LUA脚本,分布式集群等。网络
一、redis支持五种值类型,而memcache只支持String一种。多线程
二、redis支持数据的持久化,能够将内存中的数据保存到硬盘上,再次重启时,能够从新加载到内存中,而memcache保存的内存数据不能被持久化保存。分布式
三、集群模式:memcached没有原生的集群模式,须要依靠客户端来实现往集群中分片写入数据;可是 redis 目前是原生支持 cluster 模式的.memcached
四、Memcached是多线程,非阻塞IO复用的网络模型;Redis使用单线程的多路 IO 复用模型。spa