# hmdp **Repository Path**: qiaoweiye/hmdp ## Basic Information - **Project Name**: hmdp - **Description**: 本项目是一款用户点评和商户信息为主的生活服务平台,实现了短信登录、商户查询缓存、优惠券秒杀、商户查询、UV统计、用户签到、好友关注、达人探店等多个模块。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-03-31 - **Last Updated**: 2025-06-05 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 🚀 黑马点评系统实战项目 > **基于 SpringBoot + Redis 的分布式高并发解决方案** 模拟 **大众点评核心场景**,实现前后端分离架构,集成 Redis、Nginx、MySQL 三大集群,覆盖 **8 大高并发业务场景**,专注解决分布式环境下的 **性能瓶颈** 与 **数据一致性问题**。 --- ## 📖 项目概览 - 🌐 **架构模式**:前后端分离 - 🚀 **业务目标**:应对高并发、大流量访问场景 - 🧩 **技术难点**:缓存穿透 / 雪崩 / 击穿、防超卖、分布式会话等 --- ## 🛠️ 技术栈总览 | 类别 | 技术组件 | |--------------|--------------------------------------------------| | 🧱 后端框架 | SpringBoot 2.7.3、MyBatis-Plus 3.5.3 | | 🧩 中间件 | Redis 6.2(Cluster 模式)、Nginx(反向代理) | | 🗄️ 数据库 | MySQL 5.7(主从集群) | | 🔧 工具类库 | Lombok、Hutool | | 🔐 安全认证 | JWT + 双拦截器(登录校验 & Token 自动续期) | --- ## ⚡ 核心功能与高并发优化亮点 ### 🔃 缓存体系优化 - **缓存穿透**:缓存空对象 + 布隆过滤器预检 - **缓存雪崩**:设置随机过期时间,避免同一时间大量缓存失效 - **缓存击穿**:互斥锁 + 逻辑过期,后台异步重建缓存(RedisLock) --- ### ⏱️ 秒杀系统设计 | 功能点 | 技术方案 | |--------------|---------------------------------------------------| | 资格预检 | Redis + Lua 脚本,原子校验库存和限购 | | 异步下单 | Stream 消息队列 + 乐观锁,防止库存超卖 | | 分布式锁 | Redisson 保证“一人一单”,线程安全 | --- ### 🌐 分布式架构优化 - **会话管理**:Redis 存储 Token,实现分布式登录态共享 - **Nginx 负载均衡**:采用 IP 哈希策略,实现请求粘性,避免 Session 丢失 --- ## 💬 社交功能模块 | 功能 | 技术方案 | |----------------|------------------------------------------------------------| | 点赞 / 关注 | Redis ZSet(按时间排序)+ Set(关系存储) | | 附近商户检索 | GeoHash + GEO API 实现 1km 半径精准搜索 | | 共同关注计算 | Redis `SINTER` 命令快速求交集 | --- ## 📌 项目亮点 - 💡 **极致缓存优化策略**,应对真实高并发问题 - 🧵 **线程安全保障机制**,防止秒杀超卖 - 🧠 **分布式一致性处理**,聚焦高并发系统中的关键痛点 - 📍 **多业务场景覆盖**:用户登录、点赞关注、店铺推荐、秒杀下单、商户定位…… --- ## 📚 适合人群 - 想系统掌握 **高并发处理方案** - 有 Redis 基础,想深入理解 **缓存架构设计** - 准备面试大厂,提升实战能力与系统设计能力的开发者 --- 欢迎 ⭐Star 和 Fork 项目!快来体验真实的高并发系统构建之旅吧!