Skip to content

架构概览 ​

Guava 后端微服务架构 — 基于 Spring Boot 3.5.14 + Spring Cloud Alibaba 的统一后台管理 API。

整体架构 ​

                           ┌──────────────┐
                           │  前端 / App   │
                           └──────┬───────┘
                                  │ HTTP
                                  ▼
                    ┌─────────────────────────────┐
                    │        guava-gateway         │
                    │       网关 (7001)      │
                    └──┬──────┬──────┬──────┬──────┘
                       │      │      │      │
          ┌────────────┼──────┼──────┼──────┼────────────┐
          │            │      │      │      │            │
          ▼            ▼      ▼      ▼      ▼            ▼
   ┌────────────┐ ┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐
   │ guava-     │ │ guava  │ │ guava  │ │ guava  │ │ guava  │
   │ admin      │ │ login  │ │ redis  │ │file    │ │mq      │
   │ (7003)     │ │ (7002) │ │ (7005) │ │store   │ │provider│
   └─────┬──────┘ └───┬────┘ └───┬────┘ └───┬────┘ └───┬────┘
         │            │          │          │          │
         └────────────┴──────────┴──────────┴──────────┘
                              │
    ┌─────────────────────────┴───────────────────────────┐
    │                 注册 / 配置 / 发现                    │
    └─────────────────────────┬───────────────────────────┘
                              │
                              ▼
                 ┌─────────────────────────┐
                 │   Nacos (注册/配置中心)   │
                 └─────────────────────────┘

   ┌──────────────────────────────────────────────────────┐
   │                    基础设施 (共享)                     │
   │  ┌─────────┐    ┌─────────┐    ┌─────────┐           │
   │  │  MySQL  │    │  Redis  │    │RabbitMQ │           │
   │  └─────────┘    └─────────┘    └─────────┘           │
   └──────────────────────────────────────────────────────┘

所有微服务均注册到 Nacos,网关通过 Nacos 服务发现进行路由转发,服务间通过 Feign 同步调用或 RabbitMQ 异步消息通信。

框架基础服务 ​

服务端口说明文档
guava-gateway-starter7001统一网关,路由转发、Token 校验、跨域网关
guava-login-starter7002登录认证服务,Token 签发认证服务
guava-admin-starter7003后台管理服务(用户/角色/菜单/部门/字典等)系统管理
guava-redis-starter7005Redis 缓存封装服务(+ Caffeine 二级缓存)缓存
guava-filestore7004文件存储服务文件
guava-mq-provider-starter7006MQ 消息生产者消息
guava-mq-consumer-starter7007MQ 消息消费者消息

框架基础模块 ​

模块说明文档
guava-parent-starter父级 BOM,统一管理依赖版本Parent
guava-entity-starter实体模块(PO 基类、通用字段)Entity
guava-component-starter公共组件模块(字典、安全、Excel)Component
guava-platform-starter平台基础模块(异常、工具、上下文)Platform

通信方式 ​

方式协议场景
外部 → 网关HTTP / REST前端通过网关访问后端
服务间同步调用OpenFeign(HTTP)admin → redis 缓存同步
服务间异步消息RabbitMQ(AMQP)事件通知、数据同步
服务注册发现Nacos动态路由、负载均衡
配置中心Nacos远程配置、动态刷新

安全机制 ​

组件说明
认证自定义 JWT Token(TokenInterceptor)
鉴权@CheckToken / @NoCheckToken 注解
上下文ContextHolder ThreadLocal 传递用户/账号/部门/公司
网关统一 Token 校验、白名单、跨域

NOTE

项目未使用 Spring Security,采用轻量级自定义拦截器方案。

相关文档 ​