阶段规划
- 分布式缓存中间件Redis
- 分布式会话与单点登录
- 分布式搜索引擎ES
- 分布式文件系统
- 分布式消息队列
- 分布式锁
- 数据库读写分离与分库分表
- 数据库表全局唯一主键id设计
- 分布式事务与数据一致性
- 接口幂等性设计与分布式限流
Redis快速入门
1.1 分布式架构概述
什么是分布式架构:
- 不同的业务(功能模块)分散部署在不同的服务器
- 每个子系统负责一个或多个不同的业务模块
- 服务之间可以相互交互与通信
- 分布式系统设计对用户透明
- 可以发展为集群分布式系统架构
优点:
- 业务解耦
- 系统模块化,可重用化
- 提高系统并发量
- 优化运维部署效率
缺点:
- 架构复杂
- 部署多个子系统复杂
- 系统之间通信耗时
- 新人融入团队缓慢
- 调试复杂
设计原则
- 异步解耦:效率远高于同步
- 幂等一致性:主要针对于增加和修改操作
- 拆分原则
- 融合分布式中间件
- 容错高可用
1.2 为何引入redis
经常查,很少修改的数据可以放在nosql中
1.3 什么是nosql
not only sql
1.4 什么是分布式缓存,什么是redis
- 提升读取速度性能
- 分布式计算领域
- 为数据库降低查询压力
- 跨服务器缓存
- 内存式缓存
1.5 分布式缓存方案与技术选型
Ehcache
优点:
- 基于java开发
- 基于jvm缓存
- 简单,轻巧,方便
缺点:
- 集群不支持
- 分布式不支持
Memcache
优点:
- 简单的key-value存储
- 内存使用率比较高
- 多核处理,多线程
缺点:
- 无法容灾
- 无法持久化
Redis
优点:
- 数据类型丰富
- 持久化
- 主从同步,故障转移
- 内存数据库,性能高
缺点:
- 单线程,处理大数据量时性能较低
- 单核
1.6 安装与配置redis
1.7 redis 命令行客户端基本使用
1.8 redis的数据类型
- string
- set
- zset
- hash
- list
SpringBoot整合Redis实战
2.1 多路复用,阻塞和非阻塞
2.2 springboot整合redis
2.3 redis操作工具类
2.4 基于redis优化首页轮播图查询
2.5 基于redis优化购物车
