Redis开发运维实践指南
Introduction
简述
数据操作
key操作
列出key
测试指定key是否存在
删除给定key
返回给定key的value类型
返回从当前数据库中随机选择的一个key
原子的重命名一个key
Key的超时设置处理
字符串操作
设置key对应的值为string类型的value
获取key对应的string值
增减操作
追加字符串
截取字符串
改写字符串
返回子字符串
中文字符串处理
取指定key的value值的长度
位操作
列表操作
添加元素
查看列表长度
查看列表元素
查看一段列表
截取列表
删除元素
设置list中指定下标的元素值
阻塞队列
集合操作
添加元素
移除元素
删除并返回元素
随机返回一个元素
集合间移动元素
查看集合大小
判断member是否在set中
集合交集
集合并集
集合差集
获取所有元素
有序集合操作
添加元素
删除元素
增加score
获取排名
获取排行榜
返回给定分数区间的元素
返回集合中score在给定区间的数量
返回集合中元素个数
返回给定元素对应的score
评分的聚合
哈希操作
设置hash值
获取hash值
递增某一个域的值
判断某一个域是否存在
删除域
获取域的数量
获取所有的域名
获取所有域的值
获取所有域名和值
HyperLogLog操作
将元素添加至 HyperLogLog
返回给定 HyperLogLog 的基数估算值
合并多个 HyperLogLog
专题功能
排序
事务
流水线
发布订阅
开发设计规范
Key设计
超时设置
数据异常处理
内存考虑
延迟考虑
典型使用场景参考
客户端推荐
上线部署规划
内存规划
网卡RPS设置
服务器部署位置
持久化设置
多实例配置
具体设置参数
其他好用的配置技巧
常见运维操作
启动
停止
查看和修改配置
批量执行操作
选择数据库
清空数据库
重命名命令
执行lua脚本
设置密码
验证密码
性能测试命令
Redis-cli命令行其他操作
持久化与备份恢复
RDB相关操作
AOF相关操作
备份
恢复
数据迁移
将key从当前数据库移动到指定数据库
问题处理
一般处理流程
探测服务是否可用
探测服务延迟
监控正在请求执行的命令
查看统计信息
获取慢查询
查看客户端
查看日志
延迟检查
检查CPU情况
检查网络情况
检查redis整体情况
检查连接数
检查持久化
检查命令执行情况
内存检查
系统内存查看
系统swap内存查看
info查看内存
dump.rdb文件成生内存报告(rdb-tool)
query在线分析
内存抽样分析
统计生产上比较大的key
查看key内部结构和编码等问题
Rss与内存碎片增加问题
测试方法
模拟oom
模拟宕机
模拟hang
快速产生测试数据
模拟RDB load情形
模拟AOF load情形
Redis安全问题
Shell提权问题
高可用和集群简述
高可用与分片的概念
高可用主要场景和对应思路
分片主要场景和对应思路
适用场景对比列表
高可用和集群架构与实践
主从复制-sentinel架构
高可用原理
发现原理
基本切换原理
环境搭建
部署架构
网络规划
用户规划
持久化规划
目录规划
部署步骤
配置文件
维护操作
完整启动
启停redis
手动启动
启停sentinel
查看sentinel状态
查看master地址和端口
查看master配置
重置该sentinel
动态修改sentinel配置
主动切换
主从是否完全一致
接收所有事件信息
高可用和异常测试
测试环境介绍
手动切换测试
主实例宕测试
单从实例宕测试
双从实例宕测试
单sentinel宕测试
双sentinel宕测试
master所在主机整体宕测试
slave所在主机整体宕测试
脑裂测试
quorum测试
Master hang死测试
附:sentinel.conf被修改后的含义
附:sentinel事件含义
其他问题
只读性
事件通知
虚拟IP切换
持久化动态修改
Sentinel最大连接数
Sharding架构(Redis 3.0 Cluster)
高可用与分片原理
集群数据分片
集群的主从复制模型
一致性保证
环境搭建
安装部署
集群配置参数
维护操作
连接集群
查看集群状态
查看集群节点状态
增加节点
删除节点
查看slot分配情况
查看key位于哪个slot
查看slot包含的键值对数量
返回 count 个 slot 槽中的键
重置节点
切换主从关系
Sharding架构(Twemproxy)
高可用原理
Powered by
GitBook
集合差集
2.4.10 集合差集
sdiff key1 key2...keyN
返回所有给定key的差集
sdiffstore dstkey key1...keyN
同sdiff,并同时保存差集到dstkey下
results matching "
"
No results matching "
"