Redis开发运维实践指南 - (EPUB全文下载)
文件大小:1.72 mb。
文件格式:epub 格式。
书籍内容:
目錄
介紹
简述
数据操作
key操作
列出key
测试指定key是否存在
删除给定key
返回给定key的value类型
返回从当前数据库中随机选择的一个key
原子的重命名一个key
Key的超时设置处理
字符串操作
设置key对应的值为string类型的value
获取key对应的string值
增减操作
追加字符串
截取字符串
改写字符串
返回子字符串
中文字符串处理
取指定key的value值的长度
位操作
列表操作
添加元素
查看列表长度
查看列表元素
查看一端列表
截取列表
删除元素
设置list中指定下标的元素值
阻塞队列
集合操作
添加元素
移除元素
删除并返回元素
随机返回一个元素
集合间移动元素
查看集合大小
判断member是否在set中
集合交集
集合并集
集合差集
获取所有元素
有序集合操作
添加元素
删除元素
增加score
获取排名
获取排行榜
返回给定分数区间的元素
返回集合中score在给定区间的数量
返回集合中元素个数
返回给定元素对应的score
评分的聚合
专题功能
排序
事务
流水线
发布订阅
开发设计规范
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开发运维实践指南
本手册是我在一家中国大陆的中型商业银行做大数据系统工程师中进行的总结归纳,包含开发和运维的各方面的使用、应用场景和最佳实践,以及各个高可用架构的搭建和测试。
下载和线上阅读最新版请访问:
https://www.gitbook.com/book/gnuhpc/redis-all-about/details
我会定期持续更新此指南,以供各位了解认识redis。
其中会有引用的各种文献和图片,我会尽可能的标注引用,如果您发现您的文字或者图片未标注引用,请fork本手册的github并pull request:
https://github.com/gnuhpc/All-About-Redis
本手册符合共同创作协议, 协议文本见
http://creativecommons.net.cn/licenses/meet-the-licenses/
有不正确的地方,请通过gnuhpc@weibo或者huangpengcheng#cmbc.com.cn (:s/#/@)联系我。 — Pengcheng Huang
1. 简述
Redis为一个运行在内存中的数据结构服务器(data structures server)。Redis使用的是单进程(除持久化时),所以在配置时,一个实例只会用到一个CPU。本手册分为三部分,第一部分从开发角度介绍了redis开发中使用API、场景和生产设计规范最佳实践,第二部分从运维角度介绍了如何运维redis,其间的常见操作和最佳实践等,第三部分是从高可用和集群方面介绍了redis相关的集群架构、搭建和测试。
2. 数据操作
熟悉每个数据操作前一定要明白每个操作都是代价,以时间复杂度和对应查询集或者结果集大小为衡量。时间复杂度收敛状况如下:
2.1. key操作
redis 的key操作是涉及范围最广的操作 。
2.1.1 列出key
keys *user*
keys *
有3个通配符 *, ? ,[]
*: 通配任意多个字符
?: 通配单个字符
[]: 通配括号内的某1个字符
注:生产已经禁止。更安全的做法是采用scan,原理和操作如下:
针对Keys的改进,支持分页查询Key。在迭代过程中,Keys有增删时不会要锁定写操作,数据集完整度不做任何保证,同一条key可能会被返回多次.
对于其他危险的命令,新版本也进行了替代:
redis-cli下的扫描:
redis-cli --scan --pattern 'chenqun_*'
这是用scan命令扫描redis中的key,--pattern选项指定扫描的key的pattern。相比keys
pattern
模式,不会长时间阻塞redis而导致其他客户端的命令请求一直处于阻塞状态。
本页中采用了小象学院的两张片子,版权归
http://www.chinahadoop.cn/
所有
2.1.2 测试指定key是否存在
exits key
返回1表示存在,0不存在
2.1.3 删除给定key
del key1 key2 ....keyN
返回1表示存在,0不存在
2.1.4 返回给定key的value类型
type key
返回 none 表示不存在key。string字符类型,list 链表类型 set 无序 ............
书籍插图:
以上为书籍内容预览,如需阅读全文内容请下载EPUB源文件,祝您阅读愉快。
书云 Open E-Library » Redis开发运维实践指南 - (EPUB全文下载)