Redis从入门到高可用分布式实践0

Redis从入门到高可用分布式实践
一站式学习Redis 从入门到高可用分布式实践
一门内容非常丰富的Redis课程,基于原Redis课程进行升级。由阿里云Redis开发规范原作者为你深入讲解每个技术点。课程包含Redis基础,使用经验介绍、Java,Python客户端示范、Redis使用规范,由浅入深讲解并伴有企业中Redis开发的相关项目以及大规模Redis的实战经验,是开发和运维人员系统学习Redis的必备内容。

Redis从入门到高可用分布式实践0_第1张图片
Redis从入门到高可用分布式实践0_第2张图片

原理+场景 梳理和完善Redis知识体系
系统学习Redis必备,循序渐进的讲法让你对Redis不再一知半解。

基 础
Redis初始
八大特性
典型场景
常用配置

多种语言客户端示范
Java(Jedis)
Python(redis-py)
Golang(Redigo)

RedisAPI的使用和理解
通用命令
内外部数据结构
各种类型典型使用场景

进 阶
瑞士军刀般的Redis应用
慢查询日志
使用pipeline优化客户端性能
BitMaps
HyperLogLog
发布订阅
GEO

持久化的取舍和选择
持久化的作用
RDB: 触发机制、流程、文件处理、优缺点
AOF: 命令写入、文件同步、重写机制、重启加载
RDB还是AOF?
常见问题分析

复制的原理与优化
从基本概念入手
深入原理分析
展现响应式的多种实现方式
预处理工具的使用
在实战中讲解工作技巧

提 高
Redis高可用
Redis Sentinel安装部署
Sentinel API
客户端路由
Redis Sentinel实现原理
开发运维常见问题分析

Redis集群
官方集群Redis Cluster
数据分布
搭建集群:原生+官方
集群伸缩
客户端路由
故障演练

Redis内存优化
Redis内存使用统计
子进程内存消耗
内存回收策略
动态调整内存上限
合理选择优化数据结构

开发运维高频问题
Linux内核优化
TCP backlog
全球crackit攻击
Redis安全七法
热点Bigkey

一线生产环境经验 理解Redis行业使用规范
阿里云官方Redis开发规范原作者深入讲解,提升企业级Redis开发运维经验
1.键值设计
Key名设计
Value设计
拒绝Bigkey
选择合适的数据结构
设置键值生命周期
2.命令优化
复杂命令使用技巧
危险命令处理
多数据库使用
批量操作优化
事务与lua的选择
3.Java客户端优化
客户端规范
连接池参数说明
如何预估最大连接池
Jedis常见异常

开发运维结合 理论配合实践
多层面学习各种数据结构典型的使用场景和API用法
全面掌握单机+集群的安装、配置与搭建
迅速搞定持久化策略的配置和选择
精细化剖析Redis复制原理、常见问题和故障处理分析
掌握实际应用中Redis Sentinel和Cluster的安装配置、客户端路由、水平扩容、故障转移

第1章 Redis初识
带领听众进入Redis的世界,了解它的前世今生、众多特性、应用场景、安装配置、简单使用,可以让听众对Redis有一个全面的认识。
1-1 导学
1-2 Redis初识 试看
1-3 谁在使用Redis
1-4 redis特性目录
1-5 特性1-速度快
1-6 特性2-持久化
1-7 特性3-数据结构
1-8 特性4-多语言客户端
1-9 特性5-功能丰富
1-10 特性6-简单
1-11 特性7-复制
1-12 特性8-高可用分布式
1-13 redis典型使用场景
1-14 redis三种启动方式介绍
1-15 redis常用配置
1-16 redis安装启动演示

第2章 API的理解和使用
全面介绍了Redis提供的5种数据结构字符串(string)、哈希(hash)、列表(list)、集合(set)、有序集合(zset)的数据模型、常用命令、典型应用场景。同时本章还会对Redis的单线程处理机制、键值管理做一个全面介绍,通过对这些原理的理解,听众可以在合适的应用场景选择合适的数据结构。 …
2-1 -课程目录
2-2 -通用命令
2-3 数据结构和内部编码
2-4 单线程
2-5 字符串
2-6 hash (1)
2-7 hash (2)
2-8 list(1)
2-9 list(2)
2-10 set
2-11 zset

第3章 Redis客户端的使用
本章重点关注Redis客户端的开发,介绍了详细讲解了Java客户端Jedis,简单介绍下Python和Go语言的Redis客户端的选择和使用。
3-1 课程目录
3-2 Java客户端:Jedis
3-3 Python客户端:redis-py
3-4 Go客户端:redigo简介
3-5 Jedis配置优化(上)
3-6 Jedis配置优化(下)

第4章 瑞士军刀Redis其他功能
除了5种数据结构外,Redis还提供了诸如慢查询、Pipeline、Bitmap、HyperLogLog、发布订阅、GEO等附加功能,在这些功能的帮助下,Redis的应用场景更加丰富。
4-1 课程目录
4-2 慢查询
4-3 pipeline
4-4 发布订阅
4-5 bitmap
4-6 hyperloglog
4-7 geo

第5章 Redis持久化的取舍和选择
Redis的持久化功能有效避免因进程退出造成的数据丢失问题,本章将介绍介绍RDB和AOF两种持久化配置和运行流程,以及选择策略
5-1 目录
5-2 持久化的作用
5-3 RDB(1)
5-4 RDB(2)
5-5 RDB(3)
5-6 AOF(1)
5-7 AOF(2)
5-8 AOF实验
5-9 RDB和AOF抉择

第6章 常见的持久化开发运维问题
本章探讨了常见的持久化问题进行定位和优化,最后结合Redis常见的单机多实例部署场景进行优化
6-1 常见问题目录
6-2 fork
6-3 子进程开销和优化
6-4 AOF阻塞

第7章 Redis复制的原理与优化
复制是实现高可用的基石,但复制同样是运维的痛点,本部分详细分析复制的原理,讲解运维过程中可能遇到的问题。
7-1 目录
7-2 什么是主从复制
7-3 主从复制配置-介绍
7-4 主从复制配置-操作
7-5 runid和复制偏移量
7-6 全量复制
7-7 全量复制开销 + 部分复制
7-8 故障处理
7-9 主从复制常见问题

第8章 Redis Sentinel
本章将一步步解析Redis Sentinel的相关概念、安装部署、配置、客户端路由、原理解析,最后分析了Redis Sentinel运维中的一些问题。
8-1 sentinel-目录
8-2 主从复制高可用?
8-3 redis sentinel架构
8-4 redis sentinel安装与配置
8-5 redis sentinel安装演示-1
8-6 redis sentinel安装演示-2
8-7 java客户端
8-8 python客户端
8-9 实现原理-1-故障转移演练
8-10 实现原理-2.故障转移演练(客户端)
8-11 实现原理-3.故障演练(日志分析)
8-12 三个定时任务
8-13 主观下线和客观下线
8-14 领导者选举
8-15 故障转移
8-16 常见开发运维问题-目录
8-17 节点运维
8-18 高可用读写分离
8-19 本章总结

第9章 初识Redis Cluster
Redis Cluster是Redis 3提供的分布式解决方案,有效解决了Redis分布式方面的需求,同时它也是学习分布式存储的绝佳案例。本章将针对Redis Cluster的数据分布,搭建集群进行分析说明。
9-1 本章目录
9-2 呼唤集群
9-3 数据分布概论
9-4 节点取余分区
9-5 一致性哈希分区
9-6 虚拟槽哈希分布
9-7 基本架构
9-8 原生安装
9-9 原生安装-1.准备节点
9-10 原生安装-2.节点握手
9-11 原生安装-3.分配槽
9-12 原生安装-4.分配主从
9-13 ruby环境准备-说明
9-14 ruby环境准备-操作
9-15 redis-trib构建集群
9-16 原生命令和redis-trib.rb对比

第10章 深入Redis Cluster
本章将针对Redis Cluster的集群伸缩,请求路由,故障转移等方面进行分析说明。
10-1 集群伸缩目录
10-2 集群伸缩原理
10-3 扩展集群-1.加入节点
10-4 扩展集群-2.加入集群
10-5 扩展集群-3.迁移槽和数据
10-6 集群扩容演示-1
10-7 集群扩容演示-2
10-8 集群缩容-说明
10-9 集群缩容-操作
10-10 客户端路由-目录
10-11 moved异常说明和操作
10-12 ask重定向
10-13 smart客户端实现原理
10-14 JedisCluster执行源码分析
10-15 smart客户端JedisCluster-目录
10-16 JedisCluster基本使用
10-17 整合spring-1
10-18 整合spring-2
10-19 多节点操作命令
10-20 批量操作优化
10-21 故障转移-目录
10-22 故障发现
10-23 故障恢复
10-24 故障模拟
10-25 Redis Cluster常见开发运维问题-目录
10-26 集群完整性
10-27 带宽消耗
10-28 PubSub广播
10-29 集群倾斜-目录
10-30 数据倾斜
10-31 请求倾斜
10-32 读写分离
10-33 数据迁移
10-34 集群vs单机
10-35 本章总结

第11章 缓存设计与优化
讲解将缓存加入应用架构后带来的一些问题,这些问题常常会成为应用的致命点。
11-1 目录
11-2 缓存的受益和成本
11-3 缓存的更新策略
11-4 缓存粒度问题
11-5 缓存穿透问题
11-6 缓存雪崩优化 试看
11-7 无底洞问题
11-8 热点key的重建优化
11-9 本章总结

第12章 Redis云平台CacheCloud
本章结合前面的知识介绍redis规模化后使用云平台如何进行机器部署、应用接入、用户相关功能维护等问题
12-1 _目录
12-2 _Redis规模化困扰
12-3 _快速构建
12-4 机器部署
12-5 应用接入
12-6 用户功能
12-7 运维功能

第13章 课程总结
课程总结
13-1 _课程总结

第14章 增补:Redis布隆过滤器
现有50亿电话号码,如何快速判断10w个电话号码是否在其中?利用之前学习的bitmap和redis cluster构建分布式布隆过滤器
14-1 目录
14-2 引出布隆过滤器
14-3 布隆过滤器基本原理
14-4 布隆过滤器误差率
14-5 本地布隆过滤器
14-6 Redis布隆过器
14-7 Redis分布式布隆过滤器

第15章 Redis开发规范
本章介绍键值的设计、命令的优化、连接池优化、客户端使用规范及客户端常见问题,带领用户全面梳理Redis开发规范。
15-1 key设计
15-2 value设计
15-3 发现bigkey的方法
15-4 bigkey的删除
15-5 选择合理的数据结构
15-6 键值生命周期的管理
15-7 命令优化技巧
15-8 java客户端优化
15-9 连接池参数优化1
15-10 连接池参数优化2
15-11 连接池参数优化3

第16章 内存管理
本章主要讲解Redis内存消耗、组成分析、Redis内存管理设置及内存优化技巧。
16-1 Redis内存优化介绍
16-2 Redis内存消耗
16-3 客户端缓冲区
16-4 缓冲内存
16-5 对象内存
16-6 内存设置上限
16-7 内存回收策略
16-8 内存优化 试看
16-9 客户端缓冲区优化

第17章 开发运维常见坑
本章介绍Linux针对Redis的内核参数优化、Redis安全七个方法以及Redis热点key的发现方法。
17-1 redis开发运维那些坑
17-2 overcommit_memory参数讲解和演示
17-3 其它参数的讲解
17-4 安全的redis
17-5 安全七法则
17-6 热点key

你可能感兴趣的:(redis)