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

项目特点

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

项目技术

  • 使用了 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负载均衡的原理,实现服务部署时从灰度环境到生产环境的丝滑切换

项目地址

相关推荐
lhrimperial6 分钟前
企业智能知识库助手落地实践:从RAG到Multi-Agent
java·spring cloud·微服务·系统架构·知识图谱
3***688411 分钟前
Spring Boot中使用Server-Sent Events (SSE) 实现实时数据推送教程
java·spring boot·后端
C***u17614 分钟前
Spring Boot问题总结
java·spring boot·后端
上进小菜猪15 分钟前
基于 YOLOv8 的人体与行人检测智能识别实战 [目标检测完整源码]
后端
Elieal29 分钟前
5 种方式快速创建 SpringBoot 项目
java·spring boot·后端
c***693031 分钟前
Spring Boot实时推送技术详解:三个经典案例
spring boot·后端·状态模式
better_liang37 分钟前
每日Java面试场景题知识点之-Java修饰符
java·访问控制·static·abstract·final·修饰符·企业级开发
努力学算法的蒟蒻42 分钟前
day58(1.9)——leetcode面试经典150
算法·leetcode·面试
rgeshfgreh1 小时前
Spring事务传播机制深度解析
java·前端·数据库
无名-CODING1 小时前
Java Spring 事务管理深度指南
java·数据库·spring