
八股文-Redis
文章平均质量分 91
Redis基础、面试题等
SumeriZhanYg
这个作者很懒,什么都没留下…
展开
-
缓存的设计
引子面试时可能会被问到缓存设计相关的问题,如:为什么你们系统需要用缓存?使用缓存需要考虑哪些问题?怎么保证数据库缓存一致性的?缓存穿透?缓存击穿?缓存雪崩?为什么你们系统需要用缓存?高性能、高并发。高性能如果有这么个场景,一份数据需要聚合数据库的几个表的数据,并且需要还需要在代码中进行计算,可能获取这个数据的接口的性能就不会很高。每次获取都需要进行 Sql 查询和运算,是有很多重复计算的情况的,所以我们可以 空间换时间 ,将这个结果存起来,那么存到哪里呢,首选就是缓存了。之后如果是获原创 2022-01-27 10:20:55 · 1414 阅读 · 0 评论 -
Redis 实现消息队列
引子面试的时候你提到了,Redis 和 MQ,面试官可能会让你用 Redis 实现消息队列,一方面考察你 Redis 的掌握,又考察了你对 MQ 的理解。可谓 一箭双雕。消息队列消息队列在分布式系统中用途非常广泛。它具有 低耦合、可靠投递、广播、流量控制、最终一致性 等一系列功能。常见的 消息队列 有 RabbitMQ、RocketMQ、ActiveMQ、Kafka消息队列 是指利用 高效可靠 的 消息传递机制 进行与平台无关的 数据交流,并基于数据通信来进行分布式系统的集成。通过提供 消息原创 2022-01-24 17:21:40 · 2367 阅读 · 0 评论 -
Redis 实现分布式锁
引子面试官常会问,你在项目中使用了哪些技术,Mysql、Redis、MQ 等等。看到你说了 Redis,一开始可能会简单的考察你一下 Redis 的特性和一些相关基础知识,之后可能会问你你还用过 Redis 做过什么技术实现吗?这时候你可以讲讲用 Redis 实现分布式锁。分布式锁需要考虑哪些问题?分布式的概念相信大家都有自己的理解。锁,Java 中很多锁,synchronized 、ReentrantLock…为什么需要分布式锁呢,当服务集群部署下,Java 的锁只是锁了本机器下服务,但对于具体原创 2022-01-24 15:42:12 · 876 阅读 · 0 评论 -
Redis 基础
简要概述RedisRedis使用的是C语言开发,不同于传统数据库,Redis 的数据是在内存中的,可以叫它内存数据库。基于内存,所以读写非常快,一般用作服务中做缓存。Redis 还可以实现分布式锁: (后续文章会具体实现)单节点借用 setex 和 lua 表达式实现集群下使用官方的 RedLock成熟的组件 RedissonRedis还可以实现队列,使用 list 数据结构, lpush lpop 等 api。Redis 还支持事务 、持久化、Lua 脚本、多种集群方案。为什么选型 R原创 2022-01-21 17:44:14 · 654 阅读 · 0 评论