摘要:
redis学习(九) 缓存 缓存能够有效地加速应用的读写速度,同时也可以降低后端负载,对日常应用的开发至关重要。 缓存的优点: 加速读写;降低后端负载 缓存的缺点: 数据不一致性;代码维护成本;运维成本 使用场景: 开销大的复杂计算,如SQL的联表操作,分组计算;加速请求响应 缓存更新策略 缓存中的 阅读全文
posted @ 2021-02-26 17:38
lfcom
阅读(63)
评论(0)
推荐(0)
摘要:
字符串结构 struct sdshdr{ int len; int free; char buf[]; } 简单字符串结构中,buf存储的字符数组也是使用'\0'作为字符数组的结尾,但是在使用上对用户是透明的,这个设计能重用C的字符数组函数。 另一个好处是,redis使用了一个常数len记录字符串的 阅读全文
posted @ 2021-02-26 17:28
lfcom
阅读(70)
评论(0)
推荐(0)
摘要:
redis学习(八)集群 Redis Cluster是redis的分布式解决方案,采用cluster架构能打倒负载均衡的目的。 数据分布 数据分布理论 分布式数据库首先要解决把整个数据集按照分区规则映射到多个节点的问题,即把数据集划分到多个节点上,每个节点负责整体数据的一个子集。 重点是数据分区规则 阅读全文
posted @ 2021-02-26 16:23
lfcom
阅读(178)
评论(0)
推荐(0)
摘要:
redis学习(七)哨兵 哨兵 Redis的主从复制模式下,一旦主节点由于故障不能提供服务,需要人工将从节点晋升为主节点,同时还要通知应用方更新主节点地址,对于很多应用场景这种故障处理的方式是无法接受的。 高可用性 当主节点出现故障时,Redis Sentinel能自动完成故障发现和故障转移,并通知 阅读全文
posted @ 2021-02-26 15:45
lfcom
阅读(145)
评论(0)
推荐(0)
摘要:
redis学习(六) 阻塞和内存 阻塞 Redis是典型的单线程架构,所有的读写操作都是在一条主线程中完成的。当Redis用于高并发场景时,这条线程就变成了它的生命线。如果出现阻塞,哪怕是很短时间,对于我们的应用来说都是噩梦。 内在原因包括:不合理地使用API或数据结构、CPU饱和、持久化阻塞等。 阅读全文
posted @ 2021-02-26 14:51
lfcom
阅读(367)
评论(0)
推荐(0)
摘要:
redis学习(五) 使用redis记录日志 常见日志 使用一个列表来存储日志,并且使用ltrim限制日志的条数,使用pipe原子执行。 //name,log_rate组合成日志的列表名,log_rate是日志的级别 function (name,message string,log_rate in 阅读全文
posted @ 2021-02-26 14:14
lfcom
阅读(1290)
评论(0)
推荐(0)
摘要:
redis学习(四) 复制 Replication 复制可以让其他服务器拥有一个不断地更新的数据副本,从而使得拥有数据副本的服务器可以用于处理客户端发送的读请求。关系数据库通常会使用一个主服务器(master)向多个从服务器(slave)发送更新,并使用从服务器来处理所有读请求。Redis也采用了同 阅读全文
posted @ 2021-02-26 11:20
lfcom
阅读(154)
评论(0)
推荐(0)

浙公网安备 33010602011771号