关于在 1核1G 的服务器上部署 若依(RuoYi),结论如下:
✅ 可以部署,但需谨慎使用和优化。
一、若依系统简介
若依(RuoYi)是一个基于 Spring Boot + Vue 的前后端分离的快速开发框架,常见版本有:
- RuoYi-Vue(前端:Vue2 + Element UI)
- RuoYi-React
- RuoYi-SpringBoot(单体版)
这类系统通常包含:
- 后端 Java 应用(Spring Boot)
- 前端静态资源(Nginx 或内嵌)
- 数据库(MySQL)
- Redis(可选,用于缓存/权限)
二、1核1G服务器是否够用?
| 组件 | 占用情况 |
|---|---|
| Java(Spring Boot) | 至少 512MB~800MB 内存(JVM堆内存建议 -Xms256m -Xmx512m) |
| MySQL | 约 200~400MB(轻量使用) |
| Nginx(前端) | 约 10~30MB |
| 系统本身及其他进程 | 100~200MB |
👉 总内存需求接近或略超 1G,尤其在高负载时容易 OOM(内存溢出)。
三、能否运行?—— ✅ 可以,但有条件
✅ 适合场景:
- 学习、测试、演示环境
- 用户量极少(1~5人同时使用)
- 功能模块只启用核心(系统管理、用户、角色等)
- 不开启大量定时任务、消息队列等附加服务
❌ 不适合场景:
- 生产环境高并发访问
- 多模块启用(如代码生成、监控、日志等频繁操作)
- 数据量大或复杂查询
- 长期稳定运行要求高
四、优化建议(提升稳定性)
-
JVM 参数调优
-Xms256m -Xmx512m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=256m减少 Java 内存占用。
-
MySQL 调优
修改my.cnf,降低内存使用:key_buffer_size = 16M innodb_buffer_pool_size = 128M query_cache_size = 16M -
使用轻量级数据库替代方案(可选)
如 SQLite(不推荐生产),或使用外部免费数据库(如云服务商提供) -
前端部署分离
将前端打包后由 Nginx 托管,后端仅提供 API,减少耦合。 -
关闭不必要的服务
- 关闭若依的在线文档(Swagger)、Redis(如不用)、定时任务等。
-
开启 Swap 分区(重要!)
1G 内存容易爆,添加 1G~2G Swap 可防止崩溃:sudo fallocate -l 2G /swapfile sudo chmod 600 /swapfile sudo mkswap /swapfile sudo swapon /swapfile -
使用精简版操作系统
如 Alpine Linux、Ubuntu Server 最小安装,减少资源占用。
五、推荐配置(理想情况)
| 环境 | 推荐配置 |
|---|---|
| 开发/学习 | 1核1G(可接受) |
| 准生产/演示 | 2核2G(更稳妥) |
| 生产环境 | 2核4G 起步 |
六、总结
1核1G服务器可以部署若依,用于学习、测试或极低并发场景,但需进行内存优化并添加 Swap,避免频繁宕机。
🔧 建议:短期可用,长期建议升级到 2核2G 或更高配置。
如果你是用于学习或本地测试,完全可以跑起来;如果是上线项目,建议至少选择 2核2G 以上的服务器。
CLOUD云计算