前言
这两年接触过不少标榜"开源"的企业级项目,点进去一看,核心模块要么加密,要么文档付费,真正能跑起来的没几个。最近看到一套项目,口号挺直接——"打破假开源,做全网最优秀、最简单、最漂亮的开源 SAAS 多租户云平台架构"。
项目代码全部开源,从后端微服务到前端 UI 再到移动端,全套都有。抱着试试看的心态拉下来跑了一遍,确实能跑,功能也全。这篇文章就聊聊这套架构的设计思路和技术选型,供有类似需求的人参考。
项目介绍
一套基于 Spring Cloud Alibaba 的微服务多租户 SaaS 平台,提供完整的企业级解决方案。项目分为三个部分:后端服务、前端 UI 和移动端(基于 Uniapp)。
项目代码全部开源,非阉割版,有 Spring Cloud 使用经验的基本上不用买付费文档也能玩转。

相关地址
后端:https://gitee.com/battcn/wemirr-platform
前端:https://gitee.com/battcn/wemirr-platform-ui
在线文档:https://docs.battcn.com
演示地址:https://cloud.battcn.com
演示账号
版本说明
v4-dev:JDK21 + Spring Cloud 2024,推荐使用,后期重心在此版本
v3-dev:JDK17 + Spring Cloud 2024,审批流基于 Camunda
v2-dev:JDK17 + Spring Cloud 2023,仅 BUG 修复
项目功能
系统管理:用户管理、角色管理、菜单管理、部门管理、岗位管理、字典管理
平台管理:租户管理、产品套餐、数据源管理、租户配置(超管专属)
系统监控:操作日志、登录日志、在线用户、服务监控、缓存监控
开发工具:代码生成、系统接口、网关管理、限流规则
业务插件:审批流(Warm-Flow)、AI 智能助手(Langchain4j)、监控、仓储管理(WMS)、运输管理(TMS)

项目特点
多租户架构:支持字段隔离、Schema 隔离、数据源隔离三种模式,按需选择
RBAC + 数据权限:按钮级功能权限,配合全部/本级/本级及子级/仅本人/自定义五种数据范围
动态网关:支持 Redis 和 Nacos 两种配置推送方式,限流熔断、黑白名单可动态配置
分布式消息:WebSocket + Redis 集群消息推送
链路追踪:支持 SkyWalking、Zipkin、Pinpoint 等多种链路追踪工具无缝对接
AI 集成:Langchain4j 驱动,RAG / Tools / MCP 开箱即用
插拔设计:可选组件在 plugin 目录,按需引入零耦合
极简代码:注解驱动,告别模板代码
高性能:接口 P99 响应 10-150ms,2M 网络环境下接口最慢不超过 300ms
标准文档:SpringDoc(Swagger V3)自动生成,在线调试
项目技术
后端技术栈
前端技术栈
项目代码
项目整体采用微服务分层结构,核心模块包括网关、认证授权、系统管理、基础服务等。
服务治理方面,项目整合了 Nepxion Discovery 框架,可以快速实现蓝绿部署、灰度发布、流量治理等功能。网关层支持动态路由配置,可以通过页面操作或 Nacos 配置中心两种方式推送变更。
多租户实现方面,项目提供了三种隔离策略:字段隔离(租户 ID 字段)、Schema 隔离(独立数据库 Schema)和数据源隔离(独立数据源)。不同租户可以根据业务需求选择不同的隔离级别,也可以混合使用。
权限控制方面,基于 Sa-Token 框架实现了 RBAC 权限模型,支持按钮级权限控制和多种数据权限范围。数据权限支持全部数据、本部门及子部门、本部门、仅本人、自定义五种粒度。
代码生成器可以快速生成前后端 CRUD 代码,前端配合 Vben Admin 的封装,只需要几行模板代码就能完成一个单表的增删改查页面。
<template> <fs-crud ref="crudRef" v-bind="crudBinding"/></template>消息推送基于 WebSocket 和 Redis 集群实现,支持分布式环境下的实时消息广播。系统内置了登录日志、操作日志、在线用户等监控功能,日志数据可以接入 SkyWalking 等链路追踪系统。
项目效果




项目源码
环境要求
JDK 17 或 21(推荐 v4-dev 分支使用 JDK21)
Docker(可选,用于快速搭建中间件环境)
快速启动:
# 克隆后端代码git clone -b v4-dev https://gitee.com/battcn/wemirr-platform.git# 克隆前端代码git clone -b v4-dev https://gitee.com/battcn/wemirr-platform-ui.git必要中间件(Docker 一键安装):
Redis MySQL 8.x Nacos
项目根目录提供了 docker-compose.yml,可以快速拉起所有中间件。
构建注意:下载项目后需要先在本地执行 mvn install 安装依赖模块 wemirr-platform-dependencies 和 wemirr-platform-framework,然后再启动各微服务模块。
总结
Wemirr Platform 这套架构的技术选型比较主流——Spring Cloud Alibaba + Vue 3 + Vben Admin,都是当前企业级项目常用的组合。从代码组织来看,模块划分清晰,核心功能基本覆盖了 SaaS 平台的常见需求。
值得关注的是它的多租户设计,支持字段、Schema、数据源三种隔离模式灵活切换,这在开源项目里不多见。其他像动态网关、链路追踪、AI 集成这些能力也算跟上了当前的技术趋势。
当然,项目也有一些需要完善的地方。比如文档目前相对简略,对于没有 Spring Cloud 经验的人来说上手门槛不低。作者在 README 里也坦诚说"暂时没有保姆级文档",更依赖社区交流。
总的来说,对于想找一个能直接跑起来的 Spring Cloud Alibaba 多租户脚手架,或者想在已有项目基础上做二次开发的,这套架构值得看看。代码都在 Gitee 上,拉下来跑一跑再判断是不是适合自己,比看什么宣传都管用。
关键词
Spring Cloud Alibaba、#多租户、#SaaS、#微服务架构、#Nacos、Sentinel、#RBAC权限、#数据权限、#动态网关、#链路追踪、#代码生成、MyBatis-Plus、Vue3、Vben Admin、#企业级开源
作者:小码编匠
出处:gitee.com/smallcore/DotNetCore
声明:网络内容,仅供学习,尊重版权,侵权速删,歉意致谢!


方便大家交流、资源共享和共同成长
纯技术交流群、需要的小伙伴请扫码
有收获?不妨分享让更多人受益
关注「程序员开源栈」,共同提升技术实力




夜雨聆风