“大麦”企业级高并发实战项目亮点介绍

项目特点

项目中包括了 微服务、本地缓存/分布式缓存、消息队列、搜索引擎、并发编程、本地锁/分布式锁、设计模式、分库分表 等核心技术

项目技术

  • 使用了 SpringCloud+SpringCloudAlibaba 的微服务结构
  • 使用了 Nacos 作为注册中心
  • 使用 Redis 不仅仅作为缓存,还使用了Lua脚本/延迟队列/Stream消息队列 等高级特性
  • 引入了 Kafka 消息中间件,SpringBootAdmin 作为服务的监控通知
  • ELK 作为日志的记录,ElasticSearch提供搜索和展示功能,
  • Sentinel/Hystrix 作为熔断保护层
  • 使用 ShardingSphere 实现分库分表,来存储海量的数据

项目架构

  • 使用非对称/非对称算法对接口的数据进行加密签名,预防接口的伪装攻击
  • 使用JWT生成Token并实现用户可以在多个渠道平台进行登录
  • 分布式id生成,并且结合Redis+lua,解决MybatisPlus的雪花算法生成重复的问题
  • 定制全局异常处理、以及接口的结构规范
  • 自定义全服务链路id,能够快速查找业务问题
  • 对线程池进行定制优化,支持MDC和ThreadLocal范围的数据传递
  • 对Redis进行封装,实现对键的统一管理
  • 设计分布式锁组件,提供切面、命令式、方法级别三种方式的使用
  • 设计幂等性组件,并结合多种锁的类型来进一步提升高并发情况下的幂等效率
  • 设计服务初始化行为组件,能将初始化行为更好的集中式管理
  • 将数据库的分库分表功能统一管理,制定复合分片基因法的分片算法
  • 根据Ribbon/LoadBalance负载均衡的原理,实现服务部署时从灰度环境到生产环境的丝滑切换

项目地址

相关推荐
jackson凌7 分钟前
【Java学习笔记】【第一阶段项目实践】房屋出租系统(面向对象版本)
java·笔记·学习
带刺的坐椅11 分钟前
Solon Ai Flow 编排开发框架发布预告(效果预览)
java·ai·solon·dify·solon-flow
2302_8097983225 分钟前
【JavaWeb】JDBC
java·开发语言·servlet
ShineSpark41 分钟前
C++面试2——C与C++的关系
c语言·c++·面试
小刘不想改BUG1 小时前
LeetCode LCR 010 和为 K 的子数组 (Java)
java·算法·leetcode
MeyrlNotFound1 小时前
(二十一)Java集合框架源码深度解析
java·开发语言
正在走向自律1 小时前
2025年、2024年最新版IntelliJ IDEA下载安装过程(含Java环境搭建+Maven下载及配置)
java·jvm·jdk·maven·intellij-idea
不会就选C.1 小时前
【开源分享】健康饮食管理系统(双端+论文)
java·spring boot·开源·毕业设计
永远有多远.1 小时前
【高频面试题】LRU缓存
java·缓存·面试
Ten peaches1 小时前
Selenium-Java版(环境安装)
java·前端·selenium·自动化