极客进化岛
技术自由路

【运维面试】面试官:reids和memcache的区别?

前言

redis和memcache的区别在面试中也经常会被提到,今天我们来看看redis与memcache的知识

概念

memcached: 一款开源的,高性能,分布式的内存系统
redis:一个开源的,key-value型的内存运行并支持持久化的NoSQL数据库。

他们俩共同点:从字面上看,有两个:
- 都是开源的
- 都是基于内存的

区别

他们在官网上提到的一些对比参数
|对比参数|redis|memcache|
|--|--|--|
类型|支持内存 ;是一个非关系型数据库|支持内存;key-value键值对形式
|数据存储类型| string;list;set;hash;zset| 文本型; 二进制型
|附加功能|发布订阅;主从分区;序列化支持|多线程服务支持|
网络IO模型|单进程模式|多线程,非阻塞模式
持久化|RDB;AOF|不支持

面试回答

范例:
redis和memcache 都是将数据库放入内存中,但memcache还可以缓存一些redis不能缓存的比如视频,图片。

redis相对来说,比memcache支持的数据类型更多,除了基础的key/value之外,还有list,set,hash等数据结构的存储。
还有个重要的区别就是,在存储数据的安全上,memcache挂掉后,数据就没了,但redis可以做持久化,通过AOF恢复。

总结

对于redis和memcache只要你简历上出现任何一个,大多都会问你他们俩的区别。所以在面试前一定要把这些基础的面试题准备好。

现在去大公司面试都流行刷题,刷算法, 所以我也常给大家说,面试分为两种,一种是准备过,一种是没有准备过,但后者通过的概率更大。

准备过,说明你对我们公司感兴趣。

赞(0)
未经允许不得转载:极客进化岛 » 【运维面试】面试官:reids和memcache的区别?