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

相关推荐
2401_8321319511 分钟前
Python单元测试(unittest)实战指南
jvm·数据库·python
秦老师Q40 分钟前
php入门教程(超详细,一篇就够了!!!)
开发语言·mysql·php·db
打工的小王1 小时前
redis(四)搭建哨兵模式:一主二从三哨兵
数据库·redis·缓存
Anarkh_Lee1 小时前
【小白也能实现智能问数智能体】使用开源的universal-db-mcp在coze中实现问数 AskDB智能体
数据库·人工智能·ai·开源·ai编程
橘子132 小时前
MySQL用户管理(十三)
数据库·mysql
Dxy12393102162 小时前
MySQL如何加唯一索引
android·数据库·mysql
我真的是大笨蛋2 小时前
深度解析InnoDB如何保障Buffer与磁盘数据一致性
java·数据库·sql·mysql·性能优化
怣502 小时前
MySQL数据检索入门:从零开始学SELECT查询
数据库·mysql
shengli7222 小时前
机器学习与人工智能
jvm·数据库·python
2301_765703142 小时前
Python迭代器(Iterator)揭秘:for循环背后的故事
jvm·数据库·python