全链路压测实战 30 讲
高楼
盾山科技 CEO,7DGroup 创始人
21053 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 38 讲
全链路压测实战 30 讲
15
15
1.0x
00:00/00:00
登录|注册

16 | 流量隔离:Redis 缓存隔离是怎么做的?

你好,我是高楼。
这节课,我们详细来讲讲如何基于微服务技术落地 Redis 缓存隔离。
在全链路压测的流量隔离中,有一个很重要的部分就是缓存隔离,即区分对应的 Cache。
说到缓存肯定离不开 Redis,因为高性能架构设计中都离不开它,在互联网和传统行业中呢,也都有它的身影。可以说,Redis 是性能项目中的必备知识点。
Redis 是一个 NoSQL 数据库,它使用的是内存存储的非关系型数据库,Redis 不使用表,使用 K-V 存储。
根据前面的经验我们知道,要改造什么就得知道它和其它组件的依赖关系,只有这样才能知道要对谁做改造。
所以,我又得祭出这个项目链路图了,脑中有策,心中有图,手中有码,改造才有路。
从链路图中我们可以看到,几乎所有业务系统(除了搜索)都和 Redis 组件有关系,所以,相关业务系统都得做缓存隔离改造,以保证正常流量与压测流量的缓存分离。
为了方便你更直观地理解,我给你画了个简要的思维导图。
好了,搞懂了组件间依赖关系后,我们就要进入相关技术预演了。

技术预演

在正式动工之前,我们先回顾一下数据库隔离的方式。上一讲我们提过, MySQL 数据库隔离通常有三种方式,分别是数据偏移、影子库、影子表,Redis 和 MySQL 数据结构不同,所以 Redis 的缓存隔离技术会有些区别。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

本文详细介绍了基于微服务技术落地 Redis 缓存隔离的方法,重点讨论了缓存隔离的主要解决方案和技术预演。文章首先介绍了 Redis 的重要性和基本特点,然后重点讲解了两种缓存隔离落地方案:影子缓存(多实例)和影子 key。对于影子缓存(多实例)方案,文章详细介绍了具体的操作步骤,包括添加依赖、全局配置文件、读取配置类和验证结果。而对于影子 key 方案,文章给出了相应的 demo 代码。此外,文章还介绍了如何通过 AOP 技术完成 Redis 数据源的切换,以及在真实系统中的改造验证过程。通过本文,读者可以快速了解如何基于微服务技术实现 Redis 缓存隔离,以及具体的操作步骤和实现逻辑。整体而言,本文内容丰富,技术性强,适合对 Redis 缓存隔离感兴趣的技术人员阅读。文章还提到了在全链路压测中缓存隔离的重要性,以及在真实系统中的改造验证过程。文章最后提出了两个思考题,引发读者思考和交流讨论。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《全链路压测实战 30 讲》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(2)

  • 最新
  • 精选
  • knife
    咨询老师下 多线程下 选择库的方法会不会有线程安全问题呢

    作者回复: 不会。

    2021-12-02
  • 小铁จุ๊บMia
    高老师,能不能加你微信或者帮忙拉进全链路压测群,可以一起讨论讨论学习和工作中遇到的问题

    作者回复: WeChat ID: Zee_7D

    2021-11-26
收起评论
显示
设置
留言
2
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部