面试八股文-redis

导图下载链接:刘卡卡 | ProcessOn

 

 为什么Redis快

从高并发上来说:直接操作缓存能够承受的请求是远远大于直接访问数据库的,所以我们可以考虑把数据库中的部分数据转移到缓存中去,这样用户的一部分请求会直接到缓存这里而不用经过数据库。

从高性能上来说:用户第一次访问数据库中的某些数据。 因为是从硬盘上读取的所以这个过程会比较慢。将该用户访问的数据存在缓存中,下一次再访问这些数据的时候就可以直接从缓存中获取了。操作缓存就是直接操作内存,所以速度相当快。如果数据库中的对应数据改变的之后,同步改变缓存中相应的数据。

为什么用epoll

由于 Redis 是单线程程序,如果使用基本的 Socket 编程模型的话,只能对一个监听套接字或一个已连接套接字进行监听。而当 Redis 实例面临很多并发的客户端时,这种处理方式的效率就会很低。所以,和基本的 Socket 通信相比,使用 IO 多路复用机制,就可以一次性获得就绪的多个套接字,从而避免了逐个检测套接字的开销。这节课,我是以最常用的 Linux 操作系统为例,给你具体介绍了 Linux 系统提供的三种 IO 多路复用机制,分别是 select、poll 和 epoll。这三种机制在能监听的描述符数量和查找就绪描述符的方法上是不一样的,你可以重点参考下图,来掌握它们的不同之处。这些差异,其实也决定了 epoll 相比于 select 和 poll 来说,效率更高,也应用更广泛。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Redis面试八股文主要包括以下几个方面: 1. Redis的特点和优势:Redis是一个高性能的非关系型键值对数据库,其数据存储在内存中,读写速度非常快。它支持多种数据类型,包括String、Hash、List、Set、ZSet等,还支持持久化和事务操作。此外,Redis还支持主从复制和单线程的命令处理,具有较好的性能和可扩展性。 2. Redis的数据结构和常用命令:Redis提供了多种数据结构,如字符串、哈希表、列表、集合和有序集合,并提供了相应的命令进行操作。例如,使用SET命令可以设置字符串值,使用HSET命令可以设置哈希表字段值,使用LPUSH命令可以将元素插入列表的头部等。 3. Redis的持久化机制:Redis支持RDB和AOF两种持久化机制。RDB是将当前数据集的快照保存到磁盘上,而AOF则是通过追加方式记录每个写操作到日志文件中。这两种机制可以保证数据的安全性和可恢复性。 4. Redis的主从复制:Redis通过主从复制实现数据的备份和读写分离。主节点将数据同步到从节点,从节点可以处理读操作,从而提高系统的并发处理能力和可靠性。 5. Redis的高可用性和集群模式:为了提高Redis的可用性,可以通过搭建Redis集群来实现数据的分布和负载均衡。Redis集群使用分片的方式将数据分散到多个节点上,并通过Gossip协议实现节点间的通信和数据同步。 6. Redis的性能优化和调优:为了提升Redis的性能,可以通过配置合适的缓存大小、使用合理的数据结构、优化命令使用方式等手段进行性能优化和调优。 7. Redis的高可靠性和数据一致性:为了保证Redis的高可靠性和数据一致性,可以通过配置合理的主从复制和持久化方式,并使用合适的监控和告警系统进行监控和故障处理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值