Redis和Memcached的区别
相同点:
- Redis和Memcached都是将数据存放到内存中,都是内存数据库
不同点1:数据类型
- Redis支持的是k/v类型的数据,还提供list,set,hash等数据结构的存储
- Memcached一般用于缓存,图片,视频等,比如验证码图片
不同点2:内存
- Redis当物理内存用完时,可以将一些value交换磁盘,radis数据丢失后可以通过aof恢复,
- 也可以定期保存到磁盘(持久化)
- memcached存储数据不安全,当挂掉的时候,数据不可恢复
- Redis当物理内存用完时,可以将一些value交换磁盘,radis数据丢失后可以通过aof恢复,
不同点3:各自的好处
- Redis速度快,因为数据在内存中,支持丰富的数据类型
- 支持str,list,set,sorted set, hash
- 支持事务,操作都是原子性,原子性就是对数据的更改要么全部执行,要么全部不执行
- redis丰富一些,事务支持比较弱,最大内存可以达到1GB,而memcached只有1MB
- memcached可以修改最大可用内存,在并发场景下,用cas保持一致性
- 用于在动态系统减少数据库负载,提升性能,做缓存,提高性能
- Redis速度快,因为数据在内存中,支持丰富的数据类型
总结: