【搞定Redis】之 Redis 面试题整理

本文深入探讨Redis的单线程模型、内部实现(采用epoll+简单事件框架)、线程安全问题以及主从复制机制。此外,还对比了Redis与memcached的优势,并分析了Redis的持久化方式(RDB和AOF)的优缺点。针对Redis的性能问题,提出了优化建议,包括避免主线程阻塞、合理配置数据淘汰策略等。
摘要由CSDN通过智能技术生成

博主秋招提前批已拿百度、字节跳动、拼多多、顺丰等公司的offer,可加微信:pcwl_Java 一起交流秋招面试经验,可获得博主的秋招简历和复习笔记。

redis单线程问题

单线程指的是网络请求模块使用了一个线程(所以不需考虑并发安全性),即一个线程处理所有网络请求,其他模块仍用了多个线程。


为什么说redis能够快速执行?

绝大部分请求是纯粹的内存操作(非常快速);

采用单线程,避免了不必要的上下文切换和竞争条件;

非阻塞IO - IO多路复用。


redis的内部实现?

内部实现采用 epoll,采用了 epoll+ 自己实现的简单的事件框架。epoll 中的读、写、关闭、连接都转化成了事件,然后利用 epoll 的多路复用特性,不在 io 上浪费一点时间 这3个条件不是相互独立的,特别是第一条,如果请求都是耗时的,采用单线程吞吐量及性能很差。redis 为特殊的场景选择了合适的技术方案。


redis关于线程安全问题

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值