手记

【九月打卡】第14天 Redis入门

第一模块:

课程名称:Redis专项进阶课 解决Redis实际问题+掌握Redis6.x特性

章节名称:1-1 ~ 2-2

讲师姓名:InCowboy


第二模块:

内容概述:

1-1 ~ 2-2 小节对Redis做了一个全面的介绍,重点讲解了Redis为何能支撑的住10w+的QPS的。


第三模块:

学习心得:

1-1 课程简介

redis的最新版本是6.x;

集群的常见架构模式:

  • 集群(集群中的各个节点其地位都是平等的,没有主从的关系)

  • 哨兵(集群中的各个节点其地位不平等,存在主从关系,在主从关系之下就存在一个“哨兵”,这个哨兵的作用就是用来监督“主节点”,如果主节点宕机,就会发出警告,通过既定的策略重新推选出一个可用的“主节点”)(这种模式也叫“主从模式”)

  • 主备模式(本模式下,只有“主节点”对外提供服务,其他的备用节点只干一件事:和“主节点”进行数据同步,但并不对外提供服务)


补充:一个“集群”就是一个“逻辑整体”,这个整体一起对外提供服务,所以当一个服务是以“集群”为基础对外提供服务时,那这个服务名其实不是指某一个实例节点,而是一群实例节点!!!


分区\分片\分段,指的都是一个意思:整体中的某个部分。


使用redis的大厂们(BATJ,TMD):


redis的功能:

因为功能丰富,所以对应的使用场景也及其丰富:

  • 缓存

  • 分布式锁

  • 队列

  • 集合

  • GEO

  • BitMap

  • ......


项目驱动学习:

项目架构图:


redis实际使用时的常见问题:

  • 慢日志查询

  • Fork进程优化

  • 主从数据一致性

  • 数据脏读

  • 复制风暴


1-2 学习的过程

知行合一,亦步亦趋


2-1 第二章学习导读

Redis的单节点模式下的性能是:

  • 写每秒8.1万次

  • 读每秒11万次


当并发上来之后,单节点的性能无法满足是,就可以考虑使用【集群模式了】,即:主从模式下实现的读写分离(此模式下,是要求主节点高可用的,所以,redis对此提供了“哨兵”机制,来保证主节点的高可用性)


第二章的学习目标:


需要掌握的理论知识:


redis是一个nosql型数据库,所以,实际应用redis是都是 redis + 关系型数据组成的”组合拳“去使用的。


2-2 详细了解Redis

内存是没有IO的概念的,磁盘才有IO操作的概念。


redis的主从模式 + 哨兵机制(少数服从多数):


解决【节点存储】数据的压力(集群分片/分区):


redis是单线程的,而单线程天然就是”原子操作“!!!


redis的特点:


redis的优势:


缓存中间件的比较:

redis因其强大且自由的功能成为了”缓存中间件“的首选。


redis高并发(对高并发支持的很好),原因:


redis单线程的优劣思考:


IO多路复用:

IO的分类,粗粒度上分为3类:

  • BIO(阻塞式IO)

  • NIO(多路复用):多路复用并不是没有“阻塞”,只是通过“复用的机制”将这个“阻塞”变小了,小到一定层度,就可以认为是没有阻塞了,就好像:将一滴果汁用水不断的稀释,稀释到一定的层度,就可以认为这个些水中压根就不存在果汁!!!

  • AIO(异步IO)


图解:

多路复用:多个IO操作,共用一个IO通道!!!


第四模块:

学习截图:

0人推荐
随时随地看视频
慕课网APP