文章分类 -  Redis学习

摘要:#第11章:缓存设计与优化 ##缓存的收益与成本 ###收益 加速读写 降低后端负载:后端服务器通过前端缓存降低负载,比如业务端使用Redis降低后端MySQL负载 ###成本 数据不一致:缓存层和数据层有时间窗口不一致,和更新策略有关 代码维护成本:多了一层缓存逻辑 运维成本:比如使用了Redis 阅读全文
posted @ 2020-05-27 12:59 scnb 阅读(177) 评论(0) 推荐(0)
摘要:#第八章:Redis Sentinel ##主从复制高可用存在的问题 手动故障转移 需要手动挑选一个slave成为新的master,然后分别执行slaveof no one和slaveof new master的操作 写能力和存储能力受到限制 ##Redis Sentinel的架构 Redis Se 阅读全文
posted @ 2020-05-27 12:58 scnb 阅读(75) 评论(0) 推荐(0)
摘要:五、Redis持久化 1.Redis持久化的作用 什么是持久化 Redis所有数据保持在 内存 中,防止因Redis程序崩溃导致数据丢失,将数据的更新异步地保存到 磁盘 上。 持久化方式 快照:某时某点的数据的完整备份。比如:MySql Dump和Redis RDB 写日志:将每次的操作都记录到日志 阅读全文
posted @ 2020-05-23 22:24 scnb 阅读(66) 评论(0) 推荐(0)
摘要:七、Redis复制的原理与优化 什么是主从复制 首先先看看单机可能会出现什么问题? 机器故障 容量瓶颈 QPS瓶颈 主从复制概念图 一主多从结构 主从复制作用 数据副本 扩展读性能——读写分离 简单总结 一个master可以有多个slave 一个slave只能有一个master 数据流是单向的,只能 阅读全文
posted @ 2020-05-23 22:23 scnb 阅读(111) 评论(0) 推荐(0)
摘要:六、Redis常见的持久化开发运维问题 1.fork操作(fork一个子进程这个操作本身,不包括后续的操作) fork是一个同步操作 fork操作的耗时与内存量息息相关:内存越大,耗时越长。同时也与机器类型有关 info:latest_fork_usec 记录上一次fork操作消耗的微秒数 如何改善 阅读全文
posted @ 2020-05-23 22:22 scnb 阅读(87) 评论(0) 推荐(0)
摘要:四、瑞士军刀Redis的其他功能 1.慢查询 客户端请求的一个完整生命周期 慢查询发生在第三阶段 客户端超时不一定慢查询(因为有4个阶段),但慢查询是客户端超时的一个可能原因 两个配置: 1. slowlog max len 1. 先进先出队列 1. 队列固定长度:通过slowlog max len 阅读全文
posted @ 2020-05-23 22:20 scnb 阅读(126) 评论(0) 推荐(0)
摘要:三、Redis客户端的使用 1.Java客户端:jedis Jedis直连: 1.生成一个Jedis对象,这个对象负责和指定Redis节点进行通信 Jedis jedis = new Jedis("IP地址", 端口号); 2.jedis执行set操作 jedis.set("hello","worl 阅读全文
posted @ 2020-05-23 22:19 scnb 阅读(177) 评论(0) 推荐(0)
摘要:二、Redis API的使用和理解 通用命令 字符串类型 哈希类型 列表类型 集合类型 有序集合类型 1.通用命令 通用命令: keys:列出redis中所有的键 例如:keys keys [pattern] pattern是通配符或者说是正则表达式的形式 注意:keys一般不在生产环境中使用(意义 阅读全文
posted @ 2020-05-23 22:18 scnb 阅读(150) 评论(0) 推荐(0)
摘要:一、Redis初始 谁在使用Redis? GitHub、Twitter、新浪微博、StackOverflow、阿里巴巴、阿里云、百度、美团、搜狐 Redis的特性: 速度快 持久化 多种数据结构: 支持多种编程语言 功能丰富 简单 主从复制 高可用、分布式 1.速度快: 每秒10万ops 为什么这么 阅读全文
posted @ 2020-05-23 21:46 scnb 阅读(78) 评论(0) 推荐(0)