Redis和Memcache的区别?Redis即远程字典服务,是一个开源的使用ANSI C语言编写的、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,提供多种语言的API;Memcache是一套分布式的高速缓存系统,被许多网站使用,接下来我们一起来看看更详细的内容介绍。
1. Redis和Memcache都是将数据存放在内存中,都是内存数据库,不过Memcache还可以用于缓存其他东西,比如图片、视频等;
2. Redis不仅仅支持简单的K/V类型的数据,同时还提供list、set、hash等数据结构的存储;
3. 虚拟内存-Redis当物流内存用完时,可以将一些很久的没用的Value交换到磁盘;
4. 过期策略-Memcache在set时就指定,比如set key 1008,即永不过期,Redis可以通过例如expire设定,例如expire name10;
5. 分布式-设定Memcache集群,利用magent做一主多从,redis可以做一主多从,都可以一主一从;
6. 存储数据安全-Memcache挂掉后,数据没了,redis可以定期保存到磁盘;
7. 灾难恢复-Memcache挂掉后,数据不可恢复,redis数据丢失后可以通过aof恢复;
8. Redis支持数据的备份,即master-slave模式的数据备份;
9. 应用场景不一样,Redis除了作为nosql数据库使用外,还能用做消息队列,数据堆栈和数据缓存等;Memcache适合于缓存sql语句,数据集,用户临时性数据,延迟查询数据和session等;
10. 如果有持久化方面的需求或者对数据类型和处理有要求的应该选择Redis;如果简单的key/value存储应该选择Memcache。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。