Redis常见面试题

Redis常见面试题

  1. 什么是redis

    redis是一种基于内存的数据库,对数据的读写操作都是在内存中完成的,因此读写速度非常快,常用于缓存,消息队列,分布式锁等场景

    redis提供了多种数据类型来支持不同的业务场景,比如String(字符串),Hash(哈希),List()列表,Set(集合)并且对数据类型的操作都是原子性的,因为执行命令由单线程负责,不存在并发竞争的问题

    Redis还支持事物,持久化,Lua脚本,多种集群方案(主从复制模式,哨兵模式,切片集群模式),发布订阅模式,内存淘汰模式,过期删除机制等等

  2. Redis和Memcached有什么区别?

    redis和Memcached共同点:

    1. 都是基于内存的数据库,一般都用来当作缓存使用

    2. 都有过期策略

    3. 两者性能都非常高

    redis和Memcached的区别:

    • redis支持的数据类型更丰富 Memcached只支持key value

    • redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用,而Memcached没有持久话功能,数据全部存在内存之中,重启或挂掉会导致数据丢失

    • redis原生支持集群模式,Memcached没有原生的集群模式,需要依靠客户端来实现往集群中分片写入数据

    • redis支持发布订阅模型,Lua脚本,事务等功能,而Memcached不支持

你可能感兴趣的:(redis,mysql,数据库)