Ruo-Yi基础篇(四):第四章. 系统监控:项目的健康仪表盘(非重要)
AI-摘要
Tianli GPT
AI初始化中...
介绍自己 🙈
生成本文简介 👋
推荐相关文章 📖
前往主页 🏠
前往爱发电购买
Ruo-Yi基础篇(四):第四章. 系统监控:项目的健康仪表盘(非重要)
Prorise第四章. 系统监控:项目的健康仪表盘(非重要)
摘要: 在本章中,我们将从开发者的角色,部分切换到运维工程师(SRE/DevOps)的视角,学习如何利用若依内置的强大监控工具集来保障应用的健康与稳定。我们将逐一探索 在线用户管理、服务监控、缓存监控 和 数据监控(Druid) 等核心模块。学完本章,您将具备诊断应用性能、监控系统资源和排查潜在问题的基本能力,为项目的稳定运行提供坚实保障。
4.1. 在线用户:实时会话管理与安全控制
是什么?
“在线用户”功能提供了一个实时的会话监控界面,它展示了当前所有通过验证并活跃在系统中的用户会话列表。
核心价值:
- 实时监控: 管理员可以清晰地看到每个在线用户的 登录账号、所属部门、登录 IP、登录地点、浏览器类型 以及 操作系统。
- 安全强制下线: 提供了“强退”功能。当发现异常或可疑会话时(例如,某员工已离职但其账号仍在异地登录),管理员可以一键强制该用户下线,使其 Token 失效,从而立即终止其访问权限。
实战场景:处理异常登录会话
- 模拟场景: 请您使用另一个浏览器(或浏览器的隐私模式),再次登录
admin账户。现在,您的admin账户就拥有了两个独立的在线会话。 - 导航与观察: 在第一个浏览器中,导航至 系统监控 -> 在线用户。您会在列表中看到两条
admin用户的登录记录,它们的“会话编号”不同,可能登录 IP 也不同(如果使用了代理)。 - 执行强退: 找到您在第二个浏览器中登录的那条会话记录,点击其右侧操作列的 强退 按钮。
- 验证结果: 回到第二个浏览器,尝试点击任意菜单或刷新页面。您会发现系统会立即提示“登录状态已过期,请重新登录”,并跳转到登录页。这证明该会话已被成功终止。

4.2. 服务监控:洞悉服务器与 JVM 状态
是什么?
服务监控是一个集成的服务器运行时信息展示面板,它利用了 oshi 这个库来实时获取服务器底层的硬件和 JVM 的各项性能指标。
核心指标解读:
- CPU: 展示服务器 CPU 的核心数、系统使用率、用户使用率和当前空闲率。CPU 使用率持续过高 是系统性能瓶颈最直接的信号。
- 内存: 显示总物理内存、已用内存和剩余内存。内存使用持续接近上限 可能预示着内存泄漏或需要增加硬件资源。
- 服务器信息: 包括服务器名称、操作系统、IP 地址等。
- Java 虚拟机信息: 这是排查 Java 应用问题的关键区域。
- 内存: 重点关注 “堆内存” 的使用情况(如
Max,Committed,Used)。如果Used内存持续增长而不回落,即使在应用空闲时也是如此,这通常是 内存泄漏(Memory Leak) 的典型特征。 - 线程: 显示当前 JVM 的总线程数、守护线程数等。过多的线程数会消耗大量内存和 CPU 资源。
- 内存: 重点关注 “堆内存” 的使用情况(如
如何使用:
该页面提供的信息主要用于性能监控和问题诊断。当用户反馈系统卡顿或响应缓慢时,服务监控页面是运维人员首先需要查看的地方,以快速判断问题是出在 CPU、内存还是应用本身。

4.3. 缓存监控:深入 Redis 的世界
是什么?
缓存监控提供了一个对若依所使用的 Redis 缓存实例的详细信息的图形化展示界面。
核心价值:
- 基本信息: 展示 Redis 的版本、运行模式(单机/集群)、端口、运行时间等。
- 命令统计: 以图表形式展示 Redis 自启动以来执行过的各种命令(如
GET,SET,KEYS)的次数。这有助于分析应用的缓存使用模式。 - 内存信息: 显示 Redis 已使用的内存、内存峰值、内存碎片率等关键指标。已用内存持续增长 可能意味着存在缓存键没有设置过期时间(TTL)的问题。
- 键值统计: 展示当前 Redis 实例中存储的键(Key)的总数量,以及每个数据库(db0, db1, …)的键数量和过期键数量。
实战场景:检查登录 Token 缓存
- 导航: 进入 系统监控 -> 缓存列表。
- 观察键值统计: 在“键值统计”部分,您会看到
db0中存在一定数量的keys。这些键主要就是若依用来存储用户登录信息(LoginUser)的缓存,键的格式通常是login_tokens:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx。 - 验证过期机制: 登录一个用户,然后观察
keys数量增加。等待超过 Token 的有效期(默认为 30 分钟)后再次观察,理论上对应的login_tokens:键应该会被 Redis 自动清除。
4.4. 数据监控:你的 SQL 性能优化利器
是什么?
数据监控实际上是阿里巴巴著名的数据库连接池项目 Druid 自带的监控后台。若依巧妙地将其内嵌到了自己的管理界面中。
核心功能:
- 数据源信息: 显示数据库连接池的详细状态,如活动连接数、空闲连接数、最大连接数等。如果 活动连接数持续接近最大值,说明数据库连接可能成为瓶颈。
- SQL 监控: 这是最有价值的功能。它会记录并分析应用执行过的每一条 SQL 语句的性能。
- 执行最长: 按执行耗时排序,可以快速定位到系统中性能最差的“慢 SQL”。
- 执行次数最多: 按执行次数排序,有助于找到最频繁被调用的 SQL,这些 SQL 即使单次执行不慢,高频调用也可能造成性能问题。
- 错误次数最多: 快速定位到执行出错的 SQL。
- URL 监控 / Spring 监控: 从不同维度分析应用的接口性能。
实战场景:定位慢查询
- 导航与登录: 进入 系统监控 -> 数据监控。首次访问需要登录,默认账号密码是
ruoyi/123456(可在application.yml中修改)。 - 访问 SQL 监控: 在 Druid 后台,点击左侧的 SQL 监控。
- 执行操作: 回到若依主界面,多次访问“课程管理”页面并执行几次查询操作。
- 分析 SQL: 刷新 Druid 的“SQL 监控”页面。您会在列表中看到类似
SELECT count(0) FROM tb_course WHERE ...和SELECT ... FROM tb_course WHERE ... LIMIT ...的 SQL 语句。点击任意一条 SQL,可以查看其详细的执行计划、耗时分布等信息。如果某条 SQL 执行时间过长,这里就是您开始进行数据库优化的起点。
评论
隐私政策
✅ 你无需删除空行,直接评论以获取最佳展示效果









