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不支持

相关推荐
JavaGuide7 小时前
公司来的新人用字符串存储日期,被组长怒怼了...
后端·mysql
怒放吧德德10 小时前
MySQL篇:MySQL主从集群同步延迟问题
后端·mysql·面试
数据智能老司机11 小时前
CockroachDB权威指南——CockroachDB SQL
数据库·分布式·架构
Eip不易也不e11 小时前
教程之同时安装两个版本的 mysql
mysql
数据智能老司机11 小时前
CockroachDB权威指南——开始使用
数据库·分布式·架构
松果猿12 小时前
空间数据库学习(二)—— PostgreSQL数据库的备份转储和导入恢复
数据库
Kagol12 小时前
macOS 和 Windows 操作系统下如何安装和启动 MySQL / Redis 数据库
redis·后端·mysql
无名之逆12 小时前
Rust 开发提效神器:lombok-macros 宏库
服务器·开发语言·前端·数据库·后端·python·rust
s91236010112 小时前
rust 同时处理多个异步任务
java·数据库·rust
数据智能老司机12 小时前
CockroachDB权威指南——CockroachDB 架构
数据库·分布式·架构