第01章 - RuoYi-Cloud概述与入门

第01章 - RuoYi-Cloud概述与入门

1.1 RuoYi-Cloud简介

1.1.1 项目背景

RuoYi-Cloud(若依微服务版)是一套基于Spring Boot、Spring Cloud & Alibaba的分布式微服务架构权限管理系统。该项目是在若依(RuoYi)单体架构的基础上进行微服务化改造,采用前后端分离的模式,前端使用Vue.js + Element UI,后端基于Spring Cloud Alibaba生态构建。

若依系列框架由若依团队开发维护,是国内最受欢迎的开源后台管理系统之一。项目完全开源,个人和企业均可免费使用,这使得它成为了众多企业进行快速开发的首选框架。

1.1.2 项目特点

技术架构先进

  • 采用Spring Boot 2.7.x + Spring Cloud 2021.x + Spring Cloud Alibaba 2021.x技术栈
  • 注册中心和配置中心选用阿里巴巴开源的Nacos
  • 流量控制框架选用阿里巴巴开源的Sentinel
  • 分布式事务选用阿里巴巴开源的Seata

功能完善齐全

  • 提供完整的RBAC权限管理体系
  • 支持多租户、多数据源配置
  • 内置代码生成器,快速CRUD开发
  • 提供定时任务调度功能
  • 支持分布式文件存储

文档资料丰富

  • 官方提供详细的使用文档
  • 活跃的技术社区支持
  • 大量的实战教程和案例

易于扩展和定制

  • 模块化设计,各服务独立部署
  • 提供丰富的扩展接口
  • 支持插件化开发

1.1.3 技术栈概览

技术 版本 说明
Spring Boot 2.7.18 基础框架
Spring Cloud 2021.0.9 微服务框架
Spring Cloud Alibaba 2021.0.6.1 阿里云微服务套件
Nacos 2.x 注册中心、配置中心
Sentinel 1.8.x 流量控制、熔断降级
Seata 1.6.x 分布式事务
Spring Boot Admin 2.7.16 服务监控
MyBatis 3.5.x ORM框架
Druid 1.2.27 数据库连接池
Redis 6.x+ 缓存数据库
MySQL 5.7+ 关系型数据库
Vue.js 2.x 前端框架
Element UI 2.x UI组件库
JWT 0.9.1 身份认证

1.1.4 版本说明

截至目前,RuoYi-Cloud最新版本为v3.6.7。主要更新包括:

  • 升级Spring Boot至2.7.18版本
  • 升级Spring Framework至5.3.39版本
  • 升级Logback至1.2.13版本
  • 升级Tomcat至9.0.112版本
  • 优化安全配置,修复已知漏洞
  • 增强系统稳定性和性能

1.2 系统功能介绍

1.2.1 核心功能模块

RuoYi-Cloud提供了企业级后台管理系统所需的全部核心功能:

用户管理

  • 用户是系统操作者,该功能主要完成系统用户配置
  • 支持用户的增删改查操作
  • 支持用户状态管理(正常/停用)
  • 支持用户密码重置
  • 支持批量导入导出

部门管理

  • 配置系统组织机构(公司、部门、小组)
  • 树结构展现支持数据权限
  • 支持部门的增删改查操作
  • 支持部门状态管理

岗位管理

  • 配置系统用户所属担任职务
  • 支持岗位的增删改查操作
  • 支持岗位排序和状态管理

菜单管理

  • 配置系统菜单,操作权限,按钮权限标识等
  • 支持目录、菜单、按钮三种类型
  • 支持菜单权限与角色关联
  • 支持菜单显示隐藏控制

角色管理

  • 角色菜单权限分配
  • 设置角色按机构进行数据范围权限划分
  • 支持角色的增删改查操作
  • 支持数据权限(全部数据权限/自定数据权限/本部门数据权限等)

字典管理

  • 对系统中经常使用的一些较为固定的数据进行维护
  • 支持字典类型和字典数据管理
  • 支持字典缓存刷新

参数管理

  • 对系统动态配置常用参数
  • 支持参数的增删改查操作
  • 支持参数缓存刷新

通知公告

  • 系统通知公告信息发布维护
  • 支持通知和公告两种类型
  • 支持发布状态管理

1.2.2 系统监控功能

操作日志

  • 系统正常操作日志记录和查询
  • 系统异常信息日志记录和查询
  • 支持日志导出

登录日志

  • 系统登录日志记录查询
  • 包含登录异常记录
  • 支持登录IP、地点、浏览器等信息记录

在线用户

  • 当前系统中活跃用户状态监控
  • 支持强制下线功能

服务监控

  • 监视当前系统CPU、内存、磁盘、堆栈等相关信息
  • 实时展示服务器运行状态

连接池监视

  • 监视当前系统数据库连接池状态
  • 可进行分析SQL找出系统性能瓶颈

1.2.3 开发工具

定时任务

  • 在线(添加、修改、删除)任务调度
  • 包含执行结果日志
  • 支持Cron表达式生成器

代码生成

  • 前后端代码的生成(Java、HTML、XML、SQL)
  • 支持CRUD下载
  • 支持单表、主子表、树表三种代码生成模式

系统接口

  • 根据业务代码自动生成相关的API接口文档
  • 基于Springdoc + OpenAPI 3.0实现

在线构建器

  • 拖动表单元素生成相应的HTML代码
  • 支持多种表单组件

1.3 系统架构概述

1.3.1 整体架构图

                                    ┌─────────────────────────────────────────────────────────────┐
                                    │                        外部访问层                            │
                                    │                    (HTTP/HTTPS请求)                         │
                                    └─────────────────────────────────────────────────────────────┘
                                                              │
                                                              ▼
                                    ┌─────────────────────────────────────────────────────────────┐
                                    │                     Nginx 反向代理                           │
                                    │                  (负载均衡、静态资源)                        │
                                    └─────────────────────────────────────────────────────────────┘
                                              │                                    │
                                              ▼                                    ▼
                            ┌──────────────────────────┐          ┌──────────────────────────┐
                            │      前端 Vue 应用        │          │    Gateway 网关服务       │
                            │       (ruoyi-ui)         │          │    (ruoyi-gateway)       │
                            │         [80]             │          │        [8080]            │
                            └──────────────────────────┘          └──────────────────────────┘
                                                                              │
                                                                              ▼
                                    ┌─────────────────────────────────────────────────────────────┐
                                    │                      Sentinel 流量控制                       │
                                    │                    (限流、熔断、降级)                        │
                                    └─────────────────────────────────────────────────────────────┘
                                                              │
                    ┌─────────────────────────────────────────┼─────────────────────────────────────────┐
                    │                                         │                                         │
                    ▼                                         ▼                                         ▼
    ┌──────────────────────────┐          ┌──────────────────────────┐          ┌──────────────────────────┐
    │      认证中心 Auth        │          │     系统模块 System       │          │     其他业务模块          │
    │     (ruoyi-auth)         │          │   (ruoyi-modules-system) │          │   (ruoyi-modules-*)      │
    │        [9200]            │          │        [9201]            │          │     [920x/930x]          │
    └──────────────────────────┘          └──────────────────────────┘          └──────────────────────────┘
                    │                                         │                                         │
                    └─────────────────────────────────────────┼─────────────────────────────────────────┘
                                                              │
                    ┌─────────────────────────────────────────┼─────────────────────────────────────────┐
                    │                                         │                                         │
                    ▼                                         ▼                                         ▼
    ┌──────────────────────────┐          ┌──────────────────────────┐          ┌──────────────────────────┐
    │       Nacos              │          │         Redis            │          │         MySQL            │
    │  (注册中心/配置中心)       │          │       (缓存服务)          │          │      (数据库服务)         │
    │     [8848/9848/9849]     │          │        [6379]            │          │        [3306]            │
    └──────────────────────────┘          └──────────────────────────┘          └──────────────────────────┘

1.3.2 模块结构

com.ruoyi     
├── ruoyi-ui              // 前端框架 [80]
├── ruoyi-gateway         // 网关模块 [8080]
├── ruoyi-auth            // 认证中心 [9200]
├── ruoyi-api             // 接口模块
│       └── ruoyi-api-system                          // 系统接口
├── ruoyi-common          // 通用模块
│       └── ruoyi-common-core                         // 核心模块
│       └── ruoyi-common-datascope                    // 权限范围
│       └── ruoyi-common-datasource                   // 多数据源
│       └── ruoyi-common-log                          // 日志记录
│       └── ruoyi-common-redis                        // 缓存服务
│       └── ruoyi-common-seata                        // 分布式事务
│       └── ruoyi-common-security                     // 安全模块
│       └── ruoyi-common-sensitive                    // 数据脱敏
│       └── ruoyi-common-swagger                      // 系统接口
├── ruoyi-modules         // 业务模块
│       └── ruoyi-system                              // 系统模块 [9201]
│       └── ruoyi-gen                                 // 代码生成 [9202]
│       └── ruoyi-job                                 // 定时任务 [9203]
│       └── ruoyi-file                                // 文件服务 [9300]
├── ruoyi-visual          // 图形化管理模块
│       └── ruoyi-visual-monitor                      // 监控中心 [9100]
├── pom.xml               // 公共依赖

1.3.3 服务端口规划

服务名称 端口 说明
ruoyi-ui 80 前端Vue项目
ruoyi-gateway 8080 网关服务
ruoyi-auth 9200 认证中心
ruoyi-system 9201 系统模块
ruoyi-gen 9202 代码生成
ruoyi-job 9203 定时任务
ruoyi-file 9300 文件服务
ruoyi-monitor 9100 监控中心
Nacos 8848 注册配置中心
Redis 6379 缓存服务
MySQL 3306 数据库服务

1.4 快速体验

1.4.1 在线演示

若依官方提供了在线演示环境,可以快速体验系统功能:

演示地址: http://ruoyi.vip

测试账号:

  • 管理员账号:admin
  • 管理员密码:admin123

注意事项:

  • 演示环境仅供体验,请勿进行破坏性操作
  • 部分敏感操作可能受限
  • 数据会定期清理

1.4.2 文档资源

官方文档: http://doc.ruoyi.vip

官方文档包含:

  • 项目介绍
  • 环境部署
  • 项目扩展
  • 其它扩展
  • 常见问题

1.4.3 源码仓库

Gitee仓库(推荐):

GitHub仓库:

1.5 相关项目

RuoYi系列框架包含多个版本,可根据实际需求选择:

项目名称 说明 技术栈
RuoYi 单体架构版本 Spring Boot + Thymeleaf
RuoYi-Vue 前后端分离版本 Spring Boot + Vue
RuoYi-Cloud 微服务版本 Spring Cloud Alibaba + Vue
RuoYi-Cloud-Vue3 微服务Vue3版本 Spring Cloud Alibaba + Vue3 + Vite
RuoYi-App 移动端版本 uni-app

选型建议:

  • 小型项目、快速开发:选择RuoYi(单体版本)
  • 中型项目、前后端分离:选择RuoYi-Vue
  • 大型项目、微服务架构:选择RuoYi-Cloud
  • 需要Vue3技术栈:选择RuoYi-Cloud-Vue3
  • 需要移动端:选择RuoYi-App配合后端使用

1.6 学习路线

1.6.1 基础知识准备

学习RuoYi-Cloud之前,建议具备以下基础知识:

后端技术:

  • Java基础及面向对象编程
  • Spring Boot基础
  • Spring Cloud基础概念
  • MyBatis或MyBatis-Plus
  • Maven项目管理

前端技术:

  • HTML/CSS/JavaScript基础
  • Vue.js 2.x基础
  • Element UI组件库
  • Axios HTTP客户端

数据库:

  • MySQL基础
  • Redis基础

开发工具:

  • Git版本控制
  • IDEA或Eclipse等IDE

1.6.2 推荐学习顺序

  1. 第一阶段:环境搭建与项目运行

    • 安装开发环境
    • 下载项目源码
    • 本地运行项目
    • 熟悉项目结构
  2. 第二阶段:核心功能学习

    • 用户、角色、菜单管理
    • 权限控制原理
    • 数据库设计
  3. 第三阶段:微服务架构深入

    • Nacos注册中心与配置中心
    • Gateway网关
    • 服务间调用
    • 分布式事务
  4. 第四阶段:二次开发实践

    • 代码生成器使用
    • 新增业务模块
    • 自定义权限控制
    • 接口安全加固
  5. 第五阶段:部署与运维

    • Docker容器化部署
    • Kubernetes编排
    • 日志管理与监控
    • 性能优化

1.7 本教程结构

本教程将从入门到精通,全面讲解RuoYi-Cloud的各个方面:

章节 内容
第01章 RuoYi-Cloud概述与入门
第02章 系统架构详解
第03章 环境准备与安装部署
第04章 微服务模块详解
第05章 认证与授权中心
第06章 网关服务详解
第07章 系统管理模块
第08章 代码生成器使用
第09章 定时任务模块
第10章 文件服务与存储
第11章 前端Vue项目详解
第12章 数据库设计与管理
第13章 Docker容器化部署
第14章 二次开发指南
第15章 最佳实践与常见问题

1.8 小结

本章介绍了RuoYi-Cloud的基本概念、系统功能、技术架构以及学习路线。RuoYi-Cloud作为一款功能完善、文档齐全的开源微服务框架,非常适合作为企业级项目的基础框架使用。

通过学习本教程,您将能够:

  • 理解微服务架构设计思想
  • 掌握Spring Cloud Alibaba技术栈
  • 熟练使用RuoYi-Cloud进行二次开发
  • 具备独立搭建微服务项目的能力

下一章,我们将深入讲解RuoYi-Cloud的系统架构设计。


返回目录 | 下一章:系统架构详解

posted @ 2026-01-08 14:05  我才是银古  阅读(11)  评论(0)    收藏  举报