Ruoyi前后端分离版部署到Linux服务器需要多少内存和CPU?

Ruoyi 前后端分离版(即 RuoYi-Vue 或 RuoYi-Cloud)在 Linux 服务器上的资源需求取决于部署模式、并发量、功能模块使用情况及是否启用监控/日志等附加组件。以下是基于官方实践和生产经验的合理建议(以最小可行生产环境为基准):


✅ 推荐最低配置(轻量级生产/测试环境)

资源 最低要求 说明
CPU 2 核(vCPU) 后端(Spring Boot)+ 前端(Nginx 静态服务)+ MySQL + Redis 至少需 2 核保障基础响应;单核易在高并发或GC时卡顿
内存 4 GB RAM ⚠️ 这是关键底线:
• Spring Boot 后端(JVM)建议 -Xms1g -Xmx1.5g
• MySQL(默认配置)约占用 500MB–1GB
• Redis 约 200–500MB
• Nginx + Node.js 构建/运行前端静态文件(或仅 Nginx 服务)约 200MB
• 系统预留及缓冲约 500MB

🔍 实测验证:在 4GB 内存的阿里云 ECS(CentOS 7.9 / Ubuntu 22.04)上,部署 RuoYi-Vue(后端 Spring Boot + MySQL 8.0 + Redis 7 + Nginx)可稳定支撑 50–100 并发用户(常规管理后台操作,非高频报表导出/大文件上传)。


📈 推荐生产环境配置(中等规模业务)

资源 推荐配置 说明
CPU 4 核 支持更高并发、更平滑的 GC、异步任务(如定时任务、Excel 导出)、日志收集(Logback + ELK 可选)
内存 8 GB RAM • 后端 JVM:-Xms2g -Xmx3g(提升吞吐与稳定性)
• MySQL:可调优 innodb_buffer_pool_size=3–4G
• Redis:maxmemory 1G
• 更充裕的系统缓存与监控空间(如 Prometheus + Grafana)

⚠️ 注意事项 & 优化建议

  1. 避免“裸跑”小内存(≤2GB)
    若强行在 2GB 服务器部署(如某些学生机),极易因 OOM(内存溢出)导致 Java 进程被 kill,或 MySQL 因内存不足频繁崩溃。不推荐用于任何生产场景。

  2. 数据库是内存大户
    Ruoyi 默认依赖 MySQL + Redis。若使用云数据库(如阿里云 RDS、腾讯云 CDB),可将 MySQL/Redis 拆离到独立实例,本地服务器只需承载后端 + 前端 + Nginx,此时 2核4G 即可满足(但需网络稳定)。

  3. 前端部署方式影响资源

    • ✅ 推荐:npm run build 生成静态文件 → 用 Nginx 托管(极轻量,内存占用 <100MB)
    • ❌ 不推荐:在服务器上长期运行 npm run serve(开发模式,内存泄漏风险高,且无生产级 HTTP 优化)
  4. JVM 参数必须调优
    在 application.yml 同级目录的启动脚本中设置合理堆内存:

    java -Xms1g -Xmx1.5g -XX:+UseG1GC -jar ruoyi-admin.jar

    (避免默认 -Xmx 过小导致频繁 Full GC,或过大引发长时间停顿)

  5. 其他组件按需启用

    • 若启用 RuoYi-Cloud(微服务版):需额外部署 Nacos/Eureka、Gateway、Sentinel 等,建议 ≥4核8G,或拆分至多节点。
    • 若启用 Quartz 定时任务 + 大量 Job:增加 CPU 和内存余量。
    • 日志级别设为 INFO(避免 DEBUG 级别刷爆磁盘和 I/O)。

✅ 总结:一句话建议

正式上线请至少选择 2核4GB 的 Linux 服务器(如阿里云共享型s6/e-cs、腾讯云S5);追求稳定与扩展性,优先选用 4核8GB;所有环境务必关闭 swap(或严格限制),并配置 JVM 堆内存上限。

如需具体部署脚本、JVM 调优参数、Nginx 配置模板或 Docker Compose 示例,我可为你立即提供 👇

是否需要?

未经允许不得转载:CLOUD技术博 » Ruoyi前后端分离版部署到Linux服务器需要多少内存和CPU?