FlowMind 是基于 RuoYi-Cloud 的企业级工作流管理系统,在保留RuoYi-Cloud原有功能的基础上,新增了审批中心和草稿箱功能,为企业提供更完善的流程管理解决方案。
| 目标 | 说明 |
|---|
| 企业级工作流管理 | 基于Flowable实现完整的BPMN工作流管理 |
| 审批中心 | 统一的流程审批管理界面,支持多种任务状态管理 |
| 草稿箱功能 | 支持流程草稿的保存、编辑和管理 |
| 微服务架构 | 基于Spring Cloud Alibaba实现分布式微服务 |
| 前后端分离 | 前端使用Vue3 + Element Plus + Vite |
注意:关于FlowMind的详细模块设计和功能实现,请参考模块设计文档
| 模块层次 | 技术选型 | 说明 |
|---|
| 架构风格 | 微服务架构(Spring Cloud Alibaba) | 各服务独立部署与扩展 |
| 工作流引擎 | Flowable | 轻量级开源 BPMN 工作流引擎 |
| 前后端分离 | Vue3 + Element Plus + Vite | 现代化前端框架 |
| 部署环境 | Docker + Kubernetes(可选) | 容器化部署 |
| 持续集成 | Maven | 依赖管理与构建工具 |
| 技术 | 版本 | 说明 |
|---|
| Java | 17 | 主体业务开发语言 |
| Maven | 3.6+ | Java 构建工具 |
| 模块 | 组件 | 版本 | 作用 |
|---|
| 服务注册与配置 | Nacos | 2023.0.1.2 | 注册中心 + 配置中心 |
| 网关层 | Spring Cloud Gateway | 2023.0.3 | 路由转发与统一认证入口 |
| 熔断与限流 | Sentinel | 2023.0.1.2 | 流量控制与保护机制 |
| 服务间通信 | OpenFeign + LoadBalancer | 2023.0.3 | 服务调用与负载均衡 |
| 分布式事务 | Seata | 2023.0.1.2 | 跨服务事务管理 |
| 权限认证 | Spring Security + JWT | 内置 | 用户认证与权限控制 |
| 缓存服务 | Redis | 6.0+ | 会话缓存与数据缓存 |
| 模块 | 技术栈 | 职责 |
|---|
| flowmind-gateway | Spring Cloud Gateway | API网关与流量控制 |
| flowmind-auth | Spring Security + JWT | 认证授权与用户管理 |
| flowmind-system | Spring Boot + MyBatis | 系统管理(用户、角色、菜单等) |
| flowmind-gen | Spring Boot + Velocity | 代码生成 |
| flowmind-job | Spring Boot + Quartz | 定时任务 |
| flowmind-file | Spring Boot + MinIO | 文件服务 |
| flowmind-flowable | Spring Boot + Flowable | 工作流引擎集成 |
| flowmind-visual-monitor | Spring Boot + Actuator | 监控中心 |
| 依赖库 | 版本 | 说明 |
|---|
| Spring Boot | 3.3.5 | 基础框架 |
| Spring Cloud | 2023.0.3 | 微服务框架 |
| Spring Cloud Alibaba | 2023.0.1.2 | 阿里微服务生态 |
| MyBatis Spring | 3.0.3 | MyBatis Spring集成 |
| PageHelper | 2.1.0 | 分页插件 |
| Druid | 1.2.23 | 数据库连接池 |
| Fastjson2 | 2.0.57 | JSON处理库 |
| MinIO | 8.2.2 | 对象存储 |
| Velocity | 2.3 | 模板引擎 |
| JWT | 0.9.1 | JWT认证 |
| 模块 | 技术 | 版本 | 功能 |
|---|
| 框架 | Vue3 | 3.5.16 | 现代化前端框架 |
| UI组件库 | Element Plus | 2.10.7 | 企业级UI组件库 |
| 构建工具 | Vite | 6.3.5 | 快速的前端构建工具 |
| 路由管理 | Vue Router | 4.5.1 | 前端路由管理 |
| 状态管理 | Pinia + Vuex | Pinia: 3.0.2 Vuex: 4.1.0 | 前端状态管理 |
| HTTP客户端 | Axios | 1.9.0 | 网络请求库 |
| 工作流建模 | bpmn-js | ^8.10.0 | BPMN流程建模 |
| 样式框架 | Tailwind CSS | ^3.4.18 | 原子化CSS框架 |
| 富文本编辑器 | @vueup/vue-quill | 1.2.0 | 富文本编辑 |
| 表单设计器 | vform3-builds | ^3.0.10 | 可视化表单设计 |
| 代码编辑器 | codemirror-editor-vue3 | ^2.8.0 | 代码编辑 |
| 图表库 | echarts | 5.6.0 | 数据可视化图表 |
| 技术栈 | 版本 | 优势说明 |
|---|
| MyBatis + PageHelper | MyBatis: 3.0.3 PageHelper: 2.1.0 | 轻量级ORM框架,灵活的SQL映射与分页支持 |
| Druid | 1.2.23 | 高性能数据库连接池,提供监控与防护功能 |
| 模块 | 技术 | 说明 |
|---|
| 主存储 | MySQL 8.0+ | 结构化业务数据 |
| 缓存 | Redis 6.0+ | 会话与高频查询缓存 |
| 文件存储 | MinIO | 审批附件与文件存储 |
| 技术 | 作用 |
|---|
| Spring Task | 定时任务执行 |
| WebSocket | 实时通知与消息推送 |
| 模块 | 技术 | 功能 |
|---|
| 鉴权框架 | Spring Security + JWT | 用户登录、角色权限 |
| 接口安全 | HTTPS + Gateway Filter | 请求加密与访问控制 |
| 数据脱敏 | AOP + 自定义注解 | 关键数据脱敏处理 |
| 日志审计 | Logback + TraceId | 操作日志记录与追溯 |
| 层级 | 方案 | 说明 |
|---|
| 应用层 | 多实例部署 + 负载均衡 | 提高应用可用性 |
| 数据层 | MySQL 主从复制 | 数据容灾备份 |
| 缓存层 | Redis 集群 | 高可用缓存 |
| 服务层 | Nacos 集群 | 服务注册中心高可用 |
| 工作流 | Flowable 持久化 | 流程实例持久化与高可用 |
- 连接池优化:使用 Druid 作为数据库连接池,配置合理的连接数与超时时间
- 索引优化:合理设计数据库索引,提高查询效率
- 分库分表:针对大数据量表进行分库分表处理
- 缓存策略:使用Redis缓存热点数据,减少数据库访问
- 合理使用 异步处理 提高系统响应速度
- 通过 Sentinel 实现流量控制与熔断
- 使用 JMeter 进行性能测试与优化
- 定期进行 代码审查 与 性能分析
FlowMind 的技术选型基于成熟的 RuoYi-Cloud 框架,结合 Flowable 工作流引擎,构建了一个功能完善、易于扩展的企业级工作流管理系统。
系统的技术栈兼顾了 稳定性、可扩展性与易用性,在企业级审批场景下可实现流程的自动化与规范化管理。
未来可根据业务需求,进一步集成更多现代化技术,如容器化部署、CI/CD流水线等,提升系统的运维效率与可靠性。