1.内存分配
Memcached使用预分配的内存池的方式,使用slab和大小不同的chunk来管理内存,有一定的空间浪费,也可能剔除新数据。redis使用临时分配的方式,一定程度上存在内存碎片。
2.数据一致性
Memcached提供了cas命令,可以保证多个并发访问操作同一份数据的一致性问题。Redis提供了事务的功能,可以保证一串 命令的原子性,中间不会被任何操作打断。
3存储的数据结构
Memecached只支持key、value,redis还支持list,set等多种数据结构
4.持久性
Memecached可能会剔除新数据,redis可以将数据保存在磁盘中,实现持久化。