RuoYi-Cloud-Plus 1.4.0 超重磅完成 skywalking prometheus

时间:2022-12-01 15:12:36

更新日志

重大更新

  • [重大更新] 新增 对接 skywalking 全功能(详细看下方新功能列表)

  • [重大更新] 重构 ruoyi-nacos 使用官方依赖整合 解决一些问题 并升级 2.1.2 版本

  • [重大更新] 新增 oss 私有库功能(数据库结构改动 需执行升级sql)

  • [重大更新] 优化 数据源连接池从 druid 切换到 hikari(原因看文档)

  • [重大更新] 新增 对接 prometheus + grafana 全功能(详细看下方新功能列表)

依赖升级

  • update springcloud 2021.0.4 => 2021.0.5

  • update springboot 2.7.4 => 2.7.6

  • update springboot-admin 2.7.5 => 2.7.7

  • update springdoc 1.6.11 => 1.6.13

  • update poi 5.2.2 => 5.2.3

  • update hutool 5.8.6 => 5.8.10

  • update aliyun-sms 2.0.18 => 2.0.22

  • update tencent-sms 3.1.591 => 3.1.611

  • update sa-token 1.30.0 => 1.33.0

  • update redisson 3.17.6 => 3.18.0

  • update easy-es 1.0.2 => 1.1.0

  • update easyexcel 3.1.1 => 3.1.3

  • update lock4j 2.2.2 => 2.2.3

  • update s3-adk 1.12.300 => 1.12.349

  • update sentinel 1.8.5 => 1.8.6

  • update nacos 2.1.1 => 2.1.2

  • update dubbo 3.1.0 => 3.1.3

  • update ELK 7.17.2 => 7.17.6 升级镜像版本

  • update nginx 1.21.6 => 1.22.1 修复漏洞

  • update mysql-docker 8.0.29 => 8.0.31

功能更新

  • update 优化 分页对象 PageQuery 支持多排序 适配 文件管理 页面支持多排序

  • update 优化 获取用户信息getInfo接口 使用缓存数据获取

  • update 优化 rpc文件上传 增加 ossId 数据返回

  • update 优化 nacos 集群模式搭建 关于 nacos.home 注释说明

  • update 优化 修改头像在小屏幕上页面布局错位的问题

  • update 优化 oss 云厂商增加 华为obs关键字

  • update 优化 重置时取消部门选中

  • update 优化 新增返回警告消息提示

  • update 优化 抽取 logback 通用配置 logback-common.xml 简化其他服务日志文件书写

  • update 更改 nacos 配置文件目录 从dev文件夹迁移到nacos文件夹与其他配置区分

  • update 优化 gateway 只缓存body

  • update 优化 Dockerfile 创建目录命令简化操作

  • update 优化 gateway filter顺序 与 代码工具封装

  • update 优化 将空 catch 块形参重命名为 ignored

  • update 优化 satoken 依赖传递

  • update 优化 重写字典查询 使用本地缓存优化网络开销 提升到上级实现减少rpc调用频率 使用流处理减少字符串操作

  • update 优化 减小腾讯短信引入jar包的体积

  • update 优化 简化一些方法的写法

  • update 优化 消除Vue3控制台出现的警告信息

  • update 优化 忽略不必要的属性数据返回

  • update 优化 重构 mysql-jdbc 依赖到 mybatis 包内 替换为最新坐标

新功能

  • add 新增 所有服务 docker 部署对接 skywalking

  • add 新增 三大 mq 整合 skywalking

  • add 新增 seata 整合 skywalking 手动编译 seata 插件包

  • add 新增 ruoyi-common-skylog 整合 skywalking 日志推送

  • add 增加 skywalking docker编排

  • add 增加 ruoyi-seata-server redis模式配置

  • add 新增 ruoyi-common-prometheus 模块 用于对接 prometheus 监控

  • add 新增 docker prometheus + grafana 容器编排

  • add 新增 ruoyi-monitor 监控服务 提供 prometheus http_sd 服务发现功能

  • add 新增 所有服务整合 ruoyi-common-prometheus 模块

  • add 新增 grafana 监控大屏配置文件(框架定制)

  • add 新增 使用 mica-metrics 为 undertow 提供健康检查

  • add 新增 字典数据映射翻译注解

  • add 增加 RedisUtils 获取缓存Map的key列表

问题修复

  • fix 修复 开启账号同端互斥登录 被顶掉后登出报null异常问题

  • fix 修复 设置NameMapper导致队列功能异常问题

  • fix 修复 EnvironmentPostProcessor 不生效问题

  • fix 修复 文件上传组件格式验证问题

  • fix 修复 ruoyi-xxl-job-admin 服务健康检查配置缺失问题

  • fix 修复 Excel导出字典值转换方法由于内部调用缓存不生效bug

  • fix 修复 SysOss 方法内部调用导致缓存不生效 bug

  • fix 修复 主题颜色在Drawer组件不会加载问题

  • fix 修复 修改用户信息 校验用户名未排除当前用户问题

  • fix 修复 升级 nginx 修复漏洞 https://www.oschina.net/news/214309

  • fix 修复 用户编辑时角色和部门存在无法修改情况

  • fix 修复 RemoteDictServiceImpl 代理对象获取异常bug

  • fix 修复 菜单激活无法填充颜色 去除某些svg图标的fill属性

  • fix 修复 使用透明底png图片时, 自动填充黑色背景

  • fix 修复 table中更多按钮切换主题色未生效修复问题

  • fix 修复 dubbo 使用 tri 协议 header 请求头变为小写导致无法获取参数问题

  • fix 修复 DubboRequestFilter 优先级过高导致的 skywalking tid 取不到问题

  • fix 修复 前端脚本乱码问题

  • fix 修复 WebFluxUtils 读取空 body 报 null 问题

  • fix 修复 Log注解GET请求记录不到参数问题

  • fix 修复 某些特性的环境生成代码变乱码TXT文件问题

  • fix 修复 开启TopNav没有子菜单隐藏侧边栏

  • fix 修复 回显数据字典数组异常问题

  • fix 修复 升级 satoken 导致白名单热更不生效问题

  • fix 修复 swagger 版本与 springdoc 版本不一致导致找不到class问题

  • fix 修复 grafana 监控模板绑定数据源ID 导致无法正常读取数据问题

平台简介

RuoYi-Cloud-Plus 微服务通用权限管理系统 重写 RuoYi-Cloud 全方位升级(不兼容原框架)

项目代码、文档 均开源免费可商用 遵循开源协议在项目中保留开源协议文件即可
活到老写到老 为兴趣而开源 为学习而开源 为让大家真正可以学到技术而开源

功能介绍 使用技术 特性注意事项
微服务权限管理系统 RuoYi-Cloud-Plus 重写 RuoYi-Cloud 全方位升级(不兼容原框架)
分布式集群分支 RuoYi-Vue-Plus 重写 RuoYi-Vue (不兼容原框架)
前端开发框架 Vue、Element UI  
后端开发框架 SpringBoot  
微服务开发框架 SpringCloud  
微服务开发框架 SpringCloudAlibaba  
容器框架 Undertow 基于 XNIO 的高性能容器
权限认证框架 Sa-Token、Jwt 强解耦、强扩展
关系数据库 MySQL 适配 8.X 最低 5.7
关系数据库(未完成) Oracle 适配 12c
关系数据库(未完成) PostgreSQL 适配 14
关系数据库(未完成) SQLServer 适配 2019
缓存数据库 Redis 适配 6.X 最低 5.X
分布式注册中心 Alibaba Nacos 采用2.X 基于GRPC通信高性能
分布式配置中心 Alibaba Nacos 采用2.X 基于GRPC通信高性能
服务网关 SpringCloud Gateway 响应式高性能网关
负载均衡 SpringCloud Loadbalancer 负载均衡处理
RPC远程调用 Apache Dubbo 原生态使用体验、高性能
分布式限流熔断 Alibaba Sentinel 无侵入、高扩展
分布式事务 Alibaba Seata 无侵入、高扩展 支持 四种模式
分布式消息队列 SpringCloud Stream 门面框架兼容各种MQ集成
分布式消息队列 Apache Kafka 高性能高速度
分布式消息队列 Apache RocketMQ 高可用功能多样
分布式消息队列 RabbitMQ 支持各种扩展插件功能多样性
分布式搜索引擎 ElasticSearch、Easy-Es 以 Mybatis-Plus 方式操作 ElasticSearch
分布式数据同步(未完成) Alibaba Canal 采集数据同步各种数据库 ES Redis Mysql
分布式链路追踪 Apache SkyWalking 链路追踪、网格分析、度量聚合、可视化
分布式日志中心 ELK ELK业界成熟解决方案
分布式锁 Lock4j 注解锁、工具锁 多种多样
分布式幂等 Redisson 拦截重复提交
分布式任务调度 Xxl-Job 高性能 高可靠 易扩展
分布式文件存储 Minio 本地存储
分布式云存储 七牛、阿里、腾讯 云存储
短信模块 阿里、腾讯 短信发送
分布式监控 Prometheus、Grafana 全方位性能监控
服务监控 SpringBoot-Admin 全方位服务监控
数据库框架 Mybatis-Plus 快速 CRUD 增加开发效率
数据库框架 P6spy 更强劲的 SQL 分析
多数据源框架 Dynamic-Datasource 支持主从与多种类数据库异构
序列化框架 Jackson 统一使用 jackson 高效可靠
Redis客户端 Redisson 支持单机、集群配置
校验框架 Validation 增强接口安全性、严谨性 支持国际化
Excel框架 Alibaba EasyExcel 性能优异 扩展性强
文档框架 SpringDoc、javadoc 无注解零入侵基于java注释
工具类框架 Hutool、Lombok 减少代码冗余 增加安全性
代码生成器 适配MP、Knife4j规范化代码 一键生成前后端代码
部署方式 Docker 容器编排 一键部署业务集群
国际化 SpringMessage Spring标准国际化方案

业务功能

功能 介绍
用户管理 用户是系统操作者,该功能主要完成系统用户配置。
部门管理 配置系统组织机构(公司、部门、小组),树结构展现支持数据权限。
岗位管理 配置系统用户所属担任职务。
菜单管理 配置系统菜单,操作权限,按钮权限标识等。
角色管理 角色菜单权限分配、设置角色按机构进行数据范围权限划分。
字典管理 对系统中经常使用的一些较为固定的数据进行维护。
参数管理 对系统动态配置常用参数。
通知公告 系统通知公告信息发布维护。
操作日志 系统正常操作日志记录和查询;系统异常信息日志记录和查询。
登录日志 系统登录日志记录查询包含登录异常。
文件管理 系统文件上传、下载等管理。
定时任务 在线(添加、修改、删除)任务调度包含执行结果日志。
代码生成 前后端代码的生成(java、html、xml、sql)支持CRUD下载 。
系统接口 根据业务代码自动生成相关的api接口文档。
服务监控 监视集群系统CPU、内存、磁盘、堆栈、在线日志、Spring相关配置等。
缓存监控 对系统的缓存信息查询,命令统计等。
在线构建器 拖动表单元素生成相应的HTML代码。
连接池监视 监视当前系统数据库连接池状态,可进行分析SQL找出系统性能瓶颈。
使用案例 系统的一些功能案例