冰河技术
导读
♻学习路线
  • 面试必问系列

    • 面试必问
  • 架构与模式

    • Java极简设计模式
    • 实战高并发设计模式
  • Java核心技术

    • Java8新特性
    • IOC核心技术
    • JVM调优技术
  • 容器化核心技术

    • Dockek核心技术
  • 分布式存储

    • Mycat核心技术
  • 数据库核心技术

    • MySQL基础篇
  • 服务器核心技术

    • Nginx核心技术
  • 渗透核心技术

    • 渗透实战技术
  • 底层技术
  • 源码分析
  • 基础案例
  • 实战案例
  • 面试
  • 系统架构
  • Spring6核心技术
  • 分布式事务

    • 分布式事务系列视频
  • SpringBoot
  • SpringCloudAlibaba
  • 🔥AI大模型项目

    • 一站式AI智能平台
    • AI智能客服系统
    • AI智能问答系统
    • 实战AI大模型
  • 中间件项目

    • 手写高性能Redis组件
    • 手写高性能脱敏组件
    • 手写线程池项目
    • 手写高性能SQL引擎
    • 手写高性能Polaris网关
    • 手写高性能RPC项目
  • 高并发项目

    • 分布式IM即时通讯系统(新)
    • 分布式Seckill秒杀系统
    • 实战高并发设计模式
  • 微服务项目

    • 简易电商脚手架项目
  • 手撕源码

    • 手撕Spring6源码
🌍知识星球
  • 总览

    • 《书籍汇总》
  • 出版图书

    • 《深入理解高并发编程:核心原理与案例实战》
    • 《深入理解高并发编程:JDK核心技术》
    • 《深入高平行開發:深度原理&專案實戰》
    • 《深入理解分布式事务:原理与实战》
    • 《MySQL技术大全:开发、优化与运维实战》
    • 《海量数据处理与大数据技术实战》
  • 电子书籍

    • 《实战高并发设计模式》
    • 《深入理解高并发编程(第2版)》
    • 《深入理解高并发编程(第1版)》
    • 《从零开始手写RPC框架(基础篇)》
    • 《SpringCloud Alibaba实战》
    • 《冰河的渗透实战笔记》
    • 《MySQL核心知识手册》
    • 《Spring IOC核心技术》
  • 关于自己
  • 关于学习
  • 关于职场
B站
Github
导读
♻学习路线
  • 面试必问系列

    • 面试必问
  • 架构与模式

    • Java极简设计模式
    • 实战高并发设计模式
  • Java核心技术

    • Java8新特性
    • IOC核心技术
    • JVM调优技术
  • 容器化核心技术

    • Dockek核心技术
  • 分布式存储

    • Mycat核心技术
  • 数据库核心技术

    • MySQL基础篇
  • 服务器核心技术

    • Nginx核心技术
  • 渗透核心技术

    • 渗透实战技术
  • 底层技术
  • 源码分析
  • 基础案例
  • 实战案例
  • 面试
  • 系统架构
  • Spring6核心技术
  • 分布式事务

    • 分布式事务系列视频
  • SpringBoot
  • SpringCloudAlibaba
  • 🔥AI大模型项目

    • 一站式AI智能平台
    • AI智能客服系统
    • AI智能问答系统
    • 实战AI大模型
  • 中间件项目

    • 手写高性能Redis组件
    • 手写高性能脱敏组件
    • 手写线程池项目
    • 手写高性能SQL引擎
    • 手写高性能Polaris网关
    • 手写高性能RPC项目
  • 高并发项目

    • 分布式IM即时通讯系统(新)
    • 分布式Seckill秒杀系统
    • 实战高并发设计模式
  • 微服务项目

    • 简易电商脚手架项目
  • 手撕源码

    • 手撕Spring6源码
🌍知识星球
  • 总览

    • 《书籍汇总》
  • 出版图书

    • 《深入理解高并发编程:核心原理与案例实战》
    • 《深入理解高并发编程:JDK核心技术》
    • 《深入高平行開發:深度原理&專案實戰》
    • 《深入理解分布式事务:原理与实战》
    • 《MySQL技术大全:开发、优化与运维实战》
    • 《海量数据处理与大数据技术实战》
  • 电子书籍

    • 《实战高并发设计模式》
    • 《深入理解高并发编程(第2版)》
    • 《深入理解高并发编程(第1版)》
    • 《从零开始手写RPC框架(基础篇)》
    • 《SpringCloud Alibaba实战》
    • 《冰河的渗透实战笔记》
    • 《MySQL核心知识手册》
    • 《Spring IOC核心技术》
  • 关于自己
  • 关于学习
  • 关于职场
B站
Github
  • 开篇:专栏介绍

    • 开篇:我要带你从零开始手搓一个大厂必备的高性能Redis组件
  • 第01部分:需求设计

    • 第01节:为何要学习高性能Redis组件
    • 第02节:高性能Redis组件的目标与挑战
    • 第03节:高性能Redis组件需求与功能梳理
  • 第02部分:总体架构设计

    • 第01节:高性能Redis组件总体方案目标
  • 第03部分:落地实现

    • 第01节:高性能Redis组件基础功能设计与实现
    • 第02节:高性能Redis组件分布式锁设计与实现
    • 第03节:高性能Redis组件防缓存击穿、穿透和雪崩的核心设计与实现
  • 第04部分:测试验证

    • 第01节:高性能Redis组件单元测试场景验证
    • 第02节:高性能Redis组件基准性能测试
  • 专栏总结

    • 总结:高性能Redis组件整体专栏总结

《高性能Redis组件》总体架构-第01节:高性能Redis组件总体方案目标、技术选型与落地方案

作者:冰河
星球:http://m6z.cn/6aeFbs
博客:https://binghe.site
文章汇总:https://binghe.site/md/all/all.html
源码获取地址:https://t.zsxq.com/0dhvFs5oR

沉淀,成长,突破,帮助他人,成就自我。

  • 本章难度:★☆☆☆☆
  • 本章重点:梳理高性能Redis组件的总体方案目标、技术选型与落地方案,从总体上理解高性能Redis组件的方案目标、技术选型和落地方案,并从全局视角了解高性能Redis组件的设计和架构思想,并能够将其灵活应用到自身实际项目中。

大家好,我是冰河~~

截止到目前,我们已经明确了高性能Redis组件的需求和流程,接下来,就需要思考Redis组件要实现的总体目标是什么,如何对Redis组件进行技术选型,以及在明确总体目标和技术选型的前提下,如何将Redis组件进行整体落地。

一、前言

不知道小伙伴们有没有写过,或者见过这种代码:项目中引入Redis后,会通过RedisTemplate或者Redisson访问Redis。但是,在代码的实现上却没有对RedisTemplate或者Redisson进行封装,整个项目中,导出都是RedisTemplate和Redisson对象。如果想处理个缓存击穿问题,那更是牵一发动全身,到处都要调整修改,一不留神,还容易修改出错,简直让人头大。

二、本节诉求

梳理高性能Redis组件的总体方案目标、技术选型与落地方案,从总体上理解高性能Redis组件的方案目标、技术选型和落地方案,并从全局视角了解高性能Redis组件的设计和架构思想,并能够将其灵活应用到自身实际项目中。

三、方案目标

与其他项目一样,高性能Redis组件在进行技术选型与设计落地方案之前,同样需要明确一个事项:就是高性能Redis组件无论采用哪种方案,采用哪种架构设计都需要明确这种方案的业务目标、技术目标和架构目标,并在研发过程中不断评估高性能Redis组件的总体性能表现,发现系统瓶颈并不断进行优化。

总体上,我们自主设计和研发的高性能Redis组件,需要满足如下方案目标。

  • 业务目标:满足业务系统读写Redis的通用功能,引入相关的Redis库后,通过调用高性能Redis组件的接口方法即可高效的读写Redis,并能够彻底解决缓存击穿、穿透和雪崩问题。
  • 技术目标:在8c16g,千兆带宽机器下,QPS达百万级别,性能瓶颈主要为机器网卡和Redis,高性能Redis组件要达到非常高的性能。
  • 架构目标:高并发、高性能、高可用、可扩展、可监控、可预警、可伸缩。

四、技术选型

这次带着大家一起手写的高性能Redis组件在代码结构上非常精简,核心功能就是通过通用的数据模型读写Redis,彻底解决缓存击穿、穿透和雪崩问题。代码精简,意味着性能会非常高,同时,也意味着使用到的技术也会非常简单。主要的技术选型如下:

  • 缓存依赖:Redisson、RedisTemplate
  • 基础工具:Hutool
  • 单元测试:Junit
  • 基准性能测试:JMH
  • 压力测试:JMeter

没错,这次的高性能Redis组件项目所使用到的技术就是这么简单。

五、落地方案

对于高性能Redis组件的落地方案来说,最简单的方式就是将组件构建成Jar包,并嵌入到服务内部使用,如下所示。


查看完整文章

加入冰河技术知识星球,解锁完整技术文章、小册、视频与完整代码

在 GitHub 上编辑此页
上次更新: 2026/4/29 16:18
Contributors: binghe001
阅读全文
×

扫码或搜索:冰河技术
发送:290992
即可立即永久解锁本站全部文章

星球会员
跳转链接