关于redis的一些面试题

一.使用redis有哪些好处?

1.速度快,因为数据是存在内存中的。

2.支持丰富的数据类型,string,list,set,sorted set,hash

3.支持事务,操作都有原子性,也就是对数组的更改要么不执行,要么全部执行。

4.丰富的特性:可用于缓存,消息,按key设置过期时间,过期后自动删除。

 

二.redis相比memcached有哪些优势

1.memcached所有的值均是简单的字符串,redis作为代替者支持更加丰富的特性

2.redis的速度比memcached的快得多

3.redis可以持久化数据

三.mysql里面有2000万条数据,redis中只存20w数据,如何保证redis中的数据都是热点数据。

redis内存数据集大小上升到了一定大小的时候,就会实行数据淘汰策略。

redis有六种数据淘汰策略:

1.volatile-lru:从已设置过期时间的数据集(sever.db[i].expires)中挑选最近最少使用的数据进行淘汰。

2.volatile-ttl:从已设置过期时间的数据集(sever.db[i].expires)中挑选将要过期的数据进行淘汰掉。

 

四.memcache和redis的区别?

1.存储方式,

memcache把数据全部存储在内存之中,断电后会挂掉,数据不能超过内存的大小

redis有部分存储在硬盘中,这样能保证数据的持久性。

2.数据的支持类型

memcache对数据类型的支持非常简单,只是string

redis支持的数据类型非常丰富,string,list,set,sorted set,hash.

3.使用底层模式不一样

使用到通信模式不一样,redis直接构建了vm机制,因为一般的系统调用系统函数的话,会浪费一定的时间去移动和请求。

4.value的大小不一样

redis最大可以达到1G,而memcache只有1M

 

posted @ 2017-05-29 22:18  bigvase  阅读(1761)  评论(0编辑  收藏  举报