Spring cloud开发的微服务部署到Linux上内存过高的问题
【问题描述】
在使用spring cloud过程中一个很严重的资源问题就是内存占用过高,而实际上开发测试并没有很大的访问量,甚至却出现了服务无法正常访问的问题。
【原因分析】
主要是因为:spring cloud的单个微服务部署到Linux系统服务器上时,在8G内存的linux系统电脑上启动占用的内存就达到1G左右。只部署了5个左右的微服务,内存已经不够用了。
在网上也看了很多方法,很多人建议在eclipse或者idea上面进行jvm的参数设置:
但是,经过实际的部署验证发现,还是没有效果。
根本原因:是由于Spring-Boot工程的启动参数,spring boot生成的jar包就是一个普通的jar包;
这个jar包的jvm参数,还必须要从java -jar 的命令中,赋值设置内存占用最大最小和初始值才有作用。
【解决方案】
在Linux系统的服务器上面,启动各个spring cloud的微服务jar包的时候,需要在java -jar 的命令中间增加jvm的内存参数设置:-Xms64m -Xmx128m
nohup java -Xms64m -Xmx128m -jar xxx.xxxx-xxx-xxxxxx-0.0.1-SNAPSHOT.jar &
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具