易君召
发布于 2026-05-03 / 0 阅读
0
0

面向分布式集群与多租户场景的开源企业级后台管理系统Ruoyi-Vue-Plus

一、项目概述

Dromara RuoYi-Vue-Plus是 Dromara 开源组织旗下一款面向分布式集群与多租户场景的企业级后台管理系统,由疯狂的狮子 Li 主导开发,是对经典开源项目 RuoYi-Vue 的全方位重写与升级(不兼容原框架)。项目代码与文档完全开源免费可商用,遵循MIT 协议,仅需在项目中保留开源协议文件即可。

截至 2026 年 5 月,项目在 Gitee 上已获得16.2k+ Star,GitHub 上15.7k+ Star,成为国内最受欢迎的 Java 开源后台管理系统之一。它定期同步 RuoYi-Vue 的通用功能,同时提供更现代化的技术栈、更完善的企业级特性和更严谨的代码规范。

二、核心技术栈

1. 后端技术栈(JDK 17+)

技术组件

选型说明

核心优势

基础框架

Spring Boot 3.x

轻量级微服务基础,自动配置,开发效率高

权限认证

Sa-Token + JWT

低耦合、高扩展,支持多种复杂权限校验表达式

ORM 框架

MyBatis-Plus

基于对象几乎无需写 SQL,内置多租户、分页等强大插件

缓存客户端

Redisson

Redis 官方推荐,支持 90%+ 命令,底层优化规避常见问题

数据库连接池

HikariCP

Spring 官方内置,性能与稳定性优异

多数据源

dynamic-datasource

支持异构数据库,动态管理,多数据源事务回滚

分布式任务

SnailJob

天生支持分布式,统一管理中心,支持分片、重试、DAG 任务流

文件存储

Minio + AWS S3 协议

分布式文件存储,支持多机多副本,兼容主流云存储厂商

工作流

WarmFlow/Flowable 6.8+

支持复杂审批流程,转办、委派、加减签等功能

API 文档

SpringDoc

无注解零入侵,基于 Java 注释自动生成

监控框架

SpringBoot-Admin

基于 Actuator,实时监控服务状态,支持在线日志查看

工具类

Hutool + Lombok

上百种工具覆盖 90% 使用需求,简化代码编写

2. 前端技术栈

  • 核心框架:Vue3 + TypeScript + ElementPlus(完全重写,区别于 RuoYi 的 Vue2/3+JS)

  • 构建工具:Vite(替代 Webpack,构建速度提升显著)

  • 路由管理:Vue Router 4

  • 状态管理:Pinia(替代 Vuex,更轻量、更易用)

  • HTTP 客户端:Axios(封装统一请求拦截与响应处理)

三、核心功能与增强特性

1. 基础功能(与 RuoYi 一致)

用户管理、部门管理、岗位管理、菜单管理、角色管理、字典管理、参数管理、通知公告、操作日志、登录日志、在线用户管理、定时任务、代码生成、系统接口、缓存监控等基础后台功能。

2. 企业级增强功能(RuoYi 所无)

(1)多租户体系(核心亮点)

  • 完整的租户管理模块:支持租户套餐、过期时间、用户数量、企业信息等配置

  • 租户数据隔离:融合动态数据源路由、ThreadLocal 租户上下文透传、SQL 自动拼接租户 ID、租户级缓存隔离、Sa-Token 多租户会话管理等一整套解决方案

  • 支持多种隔离模式:库隔离、Schema 隔离、表隔离,可灵活配置

(2)安全增强

  • 数据脱敏:基于注解 + Jackson,支持身份证、手机号、地址等多种脱敏策略

  • 数据加解密:基于注解 + MyBatis 拦截器,支持 AES、RSA、SM2/SM4 等国密算法

  • 接口传输加密:动态 AES+RSA 加密请求 body,每次请求密钥不同,安全性更高

  • 分布式幂等:参考美团 GTIS 防重系统简化实现,防止重复提交

  • 分布式锁:基于 Redisson 的 Lock4j,解决分布式环境下的并发问题

(3)扩展能力

  • 多数据源管理:支持异构数据库,可通过前端页面动态添加数据源,支持 spel 表达式切换

  • 第三方登录:集成 JustAuth,支持微信、钉钉等数十种三方认证

  • 短信服务:集成 sms4j,支持数十种短信厂家,可多厂家共用

  • 邮件服务:基于 mail-api,支持大部分邮件厂商

  • WebSocket 与 SSE:扩展 Token 鉴权与分布式会话同步,支持实时消息推送

  • 数据翻译:基于注解 + Jackson,支持映射翻译、直接翻译等多种模式

(4)开发效率提升

  • 代码生成器:一键生成多数据源前后端 CRUD 代码与页面,降低 80% 开发量

  • 接口文档:零注解自动生成,只需编写 Java 注释

  • Excel 处理:基于 FastExcel(原 EasyExcel),支持自动合并相同内容、字典翻译等

  • 部署方式:支持 Docker 编排,一键搭建所有环境

四、架构设计

1. 后端架构

采用插件化 + 扩展包形式,结构解耦,易于扩展,区别于 RuoYi 的模块相互注入耦合严重的设计。核心模块包括:

  • ruoyi-common:通用工具类、常量、异常处理等

  • ruoyi-framework:核心框架,包括权限、缓存、多租户等核心功能

  • ruoyi-system:系统管理模块,用户、角色、菜单等基础功能

  • ruoyi-module:业务模块,如租户管理、文件管理、工作流等

  • ruoyi-generator:代码生成器模块

  • ruoyi-monitor:监控模块,包括服务监控、缓存监控等

2. 前端架构

采用 Vue3+TS+ElementPlus 构建,遵循模块化、组件化设计思想,支持主题切换、国际化等功能。

3. 部署架构

支持单机部署、集群部署、Docker 容器化部署,适配云原生环境,提供完整的 Docker Compose 配置文件,一键部署所有服务(应用、数据库、Redis、Minio 等)。

五、社区与生态

1. 社区支持

  • 官方文档:https://plus-doc.dromara.org(国内加速:plus-doc.top)

  • 社区交流:提供 QQ 群、微信群等交流渠道,作者与社区成员积极解答问题

  • 贡献机制:完善的贡献指南,支持 PR 提交,社区协作活跃

2. 生态扩展

  • 成员项目:

    • ruoyi-plus-vben5:基于 vben5 的前端实现

    • ruoyi-plus-soybean:基于 soybean 的前端实现

    • RuoYi-Vue-Plus-Single:删除多租户与工作流的单体版本

    • Ruoyi-Plus-Uniapp:基于 RuoYi-Vue-Plus 的 uniapp 移动端实现

  • 第三方集成:支持与 MaxKey 单点登录、CCFlow 低代码流程、Mall4J 商城系统等集成

六、适用场景与选型建议

1. 适用场景

  • SaaS 多租户系统:需要为多个租户提供独立服务,数据隔离要求高的场景

  • 分布式集群应用:需要部署在多节点环境,要求高可用、高性能的系统

  • 企业级管理系统:需要完善的权限控制、数据安全、工作流等功能的后台系统

  • 快速开发项目:希望通过代码生成器快速搭建基础框架,专注业务开发的项目

2. 选型建议

项目特点

推荐选择

不推荐选择

新开发项目,无历史包袱

✓ Ruoyi-Vue-Plus

RuoYi(技术栈较旧)

需要多租户 / SaaS 能力

✓ Ruoyi-Vue-Plus

RuoYi(无原生多租户支持)

团队熟悉 MyBatis-Plus、Sa-Token

✓ Ruoyi-Vue-Plus

RuoYi(使用 MyBatis、Spring Security)

追求现代化技术栈(JDK17+、Vue3+TS)

✓ Ruoyi-Vue-Plus

RuoYi(JDK8+、Vue2/3+JS)

已有 RuoYi 项目,需要平滑升级

✗ Ruoyi-Vue-Plus(不兼容)

✓ RuoYi 官方版本

简单小型项目,追求极致轻量

✗ Ruoyi-Vue-Plus(功能较多)

✓ RuoYi 或其他轻量框架

七、优缺点分析

优点

  1. 技术栈现代化:全面拥抱 JDK17+、Spring Boot3、Vue3+TS 等主流技术,开发效率提升 50%

  2. 多租户能力强:提供完整的企业级多租户解决方案,支持多种隔离模式

  3. 功能完善:新增文件存储、短信服务、脱敏、Redis 增强、SSE 等企业级功能

  4. 代码规范:严格遵守 Alibaba 规范,模块划分清晰,易于维护和扩展

  5. 文档齐全:核心功能均有详细文档,降低学习成本

  6. 社区活跃:持续迭代优化,问题响应及时

缺点

  1. 不兼容原 RuoYi:无法直接从 RuoYi 项目迁移,需要重新开发

  2. 配置复杂:功能丰富导致配置项较多,新手入门有一定门槛

  3. 依赖较多:引入大量第三方组件,需要一定的学习成本

八、版本与更新情况

  • 当前稳定版本:5.5.x(2025 年底发布)

  • 迭代频率:持续更新,平均每月 1-2 个版本,修复问题并新增功能

  • 最新特性:支持 JDK21、Spring Boot3.4.6、MyBatis-Plus3.5.1 等最新依赖升级

Ruoyi-Vue-Plus 作为 RuoYi 的增强版,在技术栈、架构设计和功能特性上都有了质的飞跃,特别适合需要构建分布式多租户系统的企业级应用。如果你正在寻找一个现代化、功能完善、易于扩展的 Java 后台管理系统,Ruoyi-Vue-Plus 无疑是一个值得考虑的选择。


评论