摘要: # 5.5 redis.conf 配置详解 我是 Redis, 当程序员用指令 `./redis-server /path/to/redis.conf` 把我启动的时候,第一个参数必须是`redis.conf` 文件的路径。 这个文件很重要,就好像是你们的 DNA,它能控制我的运行情况,不同的配置会 阅读全文
posted @ 2023-05-30 16:08 码哥字节 阅读(930) 评论(0) 推荐(1) 编辑
摘要: 通过 CONFIG SET maxmemory 100mb 或者在 redis.conf 配置文件设置 maxmemory 100mb Redis 内存占用限制。当达到内存最大值值,会触发内存淘汰策略删除数据。 除此之外,当 key 达到过期时间,Redis 会有以下两种删除过期数据的策略: 后台定 阅读全文
posted @ 2022-12-09 15:03 码哥字节 阅读(1101) 评论(1) 推荐(2) 编辑
摘要: Redis Cluster 原理说的头头是道,这些配置不懂就是纸上谈兵 Redis Cluster 集群相关配置,使用集群方式的你必须重视和知晓。别嘴上原理说的头头是道,而集群有哪些配置?如何配置让集群快到飞起,实现真正的高可用却一头雾水,通过下面这些配置详解也让你对集群原理更加深刻。 cluste 阅读全文
posted @ 2022-10-25 11:43 码哥字节 阅读(740) 评论(0) 推荐(1) 编辑
摘要: “65 哥,如果你交了个漂亮小姐姐做女朋友,你会通过什么方式将这个消息广而告之给你的微信好友?“ “那不得拍点女朋友的美照 + 亲密照弄一个九宫格图文消息在朋友圈发布大肆宣传,暴击单身狗。” 像这种 65 哥通过朋友圈发布消息,关注 65 哥的好友能收到通知的场景叫做「发布/订阅机制」。 今天不聊小 阅读全文
posted @ 2022-08-17 13:42 码哥字节 阅读(2824) 评论(0) 推荐(2) 编辑
摘要: 大家好,我是「码哥」,大家可以叫我靓仔。 这次码哥跟大家分享一些优化神技,当你面试或者工作中你遇到如下问题,那就使出今天学到的绝招,一招定乾坤! 如何用更少的内存保存更多的数据? 我们应该从 Redis 是如何保存数据的原理展开,分析键值对的存储结构和原理。 从而继续延展出每种数据类型底层的数据结构 阅读全文
posted @ 2022-07-13 10:21 码哥字节 阅读(1985) 评论(0) 推荐(9) 编辑
摘要: 使用缓存的目的就是提高性能,今天码哥带大家实践运用 spring-boot-starter-cache 抽象的缓存组件去集成本地缓存性能之王 Caffeine。 大家需要注意的是:in-memeory 缓存只适合在单体应用,不适合与分布式环境。 分布式环境的情况下需要将缓存修改同步到每个节点,需要一 阅读全文
posted @ 2022-06-21 13:56 码哥字节 阅读(1567) 评论(0) 推荐(2) 编辑
摘要: Redis 拥有高性能的数据读写功能,被我们广泛用在缓存场景,一是能提高业务系统的性能,二是为数据库抵挡了高并发的流量请求,点我 → 解密 Redis 为什么这么快的秘密。 把 Redis 作为缓存组件,需要防止出现以下的一些问题,否则可能会造成生产事故。 Redis 缓存满了怎么办? 缓存穿透、缓 阅读全文
posted @ 2022-06-17 16:10 码哥字节 阅读(1194) 评论(3) 推荐(6) 编辑
摘要: 码哥,当 key 达到过期时间,Redis 就会马上删除么? 先说结论,并不会立马删除,Redis 有两种删除过期数据的策略: 定期选取部分数据删除; 惰性删除; 该命令在 Redis 2.4 版本,过期时间并不是很精确,它可能在零到一秒之间。 从 Redis 2.6 开始,过期错误为 0 到 1 阅读全文
posted @ 2022-05-16 16:58 码哥字节 阅读(1269) 评论(3) 推荐(3) 编辑
摘要: 在《Redis 数据缓存满了怎么办?》我们知道 Redis 缓存满了之后能通过淘汰策略删除数据腾出空间给新数据。 淘汰策略如下所示: 设置过期时间的 key volatile-ttl、volatile-random、volatile-lru、volatile-lfu 这四种策略淘汰的数据范围是设置了 阅读全文
posted @ 2022-05-11 17:45 码哥字节 阅读(434) 评论(0) 推荐(0) 编辑
摘要: 上回在《Redis 数据过期了会被立马删除么?》说到如果过期的数据太多,定时删除无法删除完全(每次删除完过期的 key 还是超过 25%),同时这些 key 再也不会被客户端请求,就无法走惰性删除,内存被打满会怎样? 答案是走内存淘汰机制。 故事从一个叫 Redis 帝国的三公九卿官职说起…… 在 阅读全文
posted @ 2022-04-24 13:45 码哥字节 阅读(1668) 评论(1) 推荐(2) 编辑
摘要: 在移动互联网的业务场景中,数据量很大,我们需要保存这样的信息:一个 key 关联了一个数据集合,同时对这个数据集合做统计。 比如: 统计一个 APP 的日活、月活数; 统计一个页面的每天被多少个不同账户访问量(Unique Visitor,UV)); 统计用户每天搜索不同词条的个数; 统计注册 IP 阅读全文
posted @ 2022-04-13 11:40 码哥字节 阅读(511) 评论(1) 推荐(1) 编辑
摘要: 在Redis 缓存击穿(失效)、缓存穿透、缓存雪崩怎么解决?中我们说到可以使用布隆过滤器避免「缓存穿透」。 码哥,布隆过滤器还能在哪些场景使用呀? 比如我们使用「码哥跳动」开发的「明日头条」APP 看新闻,如何做到每次推荐给该用户的内容不会重复,过滤已经看过的内容呢? 你会说我们只要记录了每个用户看 阅读全文
posted @ 2022-04-11 14:22 码哥字节 阅读(1302) 评论(0) 推荐(1) 编辑
摘要: 原始数据存储在 DB 中(如 MySQL、Hbase 等),但 DB 的读写性能低、延迟高。 比如 MySQL 在 4 核 8G 上的 TPS = 5000,QPS = 10000 左右,读写平均耗时 10~100 ms。 用 Redis 作为缓存系统正好可以弥补 DB 的不足,「码哥」在自己的 M 阅读全文
posted @ 2022-04-07 14:35 码哥字节 阅读(1287) 评论(3) 推荐(5) 编辑
摘要: 上回说到使用 Redis 的 List 实现消息队列有很多局限性,比如: 没有良好的 ACK 机制; 没有 ConsumerGroup 消费组概念; 消息堆积。 List 是线性结构,想要查询指定数据需要遍历整个列表; Stream 是 Redis 5.0 引入的一种专门为消息队列设计的数据类型,S 阅读全文
posted @ 2022-03-03 14:30 码哥字节 阅读(1207) 评论(0) 推荐(0) 编辑
摘要: Redis 通常是我们业务系统中一个重要的组件,比如:缓存、账号登录信息、排行榜等。 一旦 Redis 请求延迟增加,可能就会导致业务系统“雪崩”。 我在单身红娘婚恋类型互联网公司工作,在双十一推出下单就送女朋友的活动。 谁曾想,凌晨 12 点之后,用户量暴增,出现了一个技术故障,用户无法下单,当时 阅读全文
posted @ 2022-02-23 10:52 码哥字节 阅读(1146) 评论(0) 推荐(2) 编辑
摘要: 2022-01 月,我的公众号关注人数 20000+。 虽然是个很小的数据,但对我而言已经是一个阶段性的里程碑。今天跟大家来聊下公众号写作给我带来的五味杂陈。 个人拙见,不喜勿喷。 如何下手写一篇文章? 写公众号挣了多少钱? 文章排版有什么技巧? 有什么写作技巧么? 文章配图这么好看怎么做到的? 关 阅读全文
posted @ 2022-02-18 16:31 码哥字节 阅读(902) 评论(6) 推荐(6) 编辑
摘要: 分布式系统中必备的一个中间件就是消息队列,通过消息队列我们能对服务间进行异步解耦、流量消峰、实现最终一致性。 目前市面上已经有 RabbitMQ、RochetMQ、ActiveMQ、Kafka等,有人会问:“Redis 适合做消息队列么?” 在回答这个问题之前,我们先从本质思考: 消息队列提供了什么 阅读全文
posted @ 2022-02-17 15:29 码哥字节 阅读(4870) 评论(15) 推荐(5) 编辑
摘要: 腾讯面试官:「数据库事务机制了解么?」 「内心独白:小意思,不就 ACID 嘛,转眼一想,我面试的可是技术专家,不会这么简单的问题吧」 程许远:「balabala…… 极其自信且从容淡定的说了一通。」 腾讯面试官:「Redis 的事务了解么?它的事务机制能实现 ACID 属性么?」 程许远:「挠头, 阅读全文
posted @ 2022-01-14 18:54 码哥字节 阅读(344) 评论(0) 推荐(0) 编辑
摘要: 码哥,String 还能优化啥?你是不是框我? 莫慌,今天给大家见识一下不一样的 String,从根上拿捏直达 G 点。 并且码哥分享一个例子:通过性能调优我们能实现百兆内存轻松存储几十 G 数据。 String对象是我们每天都「摸」的对象类型,但是她的性能问题我们却总是忽略。 爱她,不能只会简单一 阅读全文
posted @ 2022-01-07 16:47 码哥字节 阅读(498) 评论(0) 推荐(0) 编辑
摘要: 这可能是最中肯的 Redis 使用规范了 码哥,昨天我被公司 Leader 批评了。 我在单身红娘婚恋类型互联网公司工作,在双十一推出下单就送女朋友的活动。 谁曾想,凌晨 12 点之后,用户量暴增,出现了一个技术故障,用户无法下单,当时老大火冒三丈! 经过查找发现 Redis 报 Could not 阅读全文
posted @ 2021-12-02 16:52 码哥字节 阅读(251) 评论(0) 推荐(0) 编辑
摘要: 天下武功,无坚不摧,唯快不破!我的名字叫 Redis,全称是 Remote Dictionary Server。 有人说,组 CP,除了要了解她外,还要给机会让她了解你。 那么,作为开发工程师的你,是否愿意认真阅读此心法抓住机会来了解我,运用到你的系统中提升性能。 我遵守 BSD 协议,由意大利人 阅读全文
posted @ 2023-10-26 21:27 码哥字节 阅读(919) 评论(0) 推荐(2) 编辑