springcloud项目占用内存好几个G导致服务器崩溃的问题
问题描述
springcloud项目部署或调试时,占用的内存特别多。当部署到服务器上去后,有可能导致服务器内存占用过多而崩溃。
解决方案
1.本地调试时,IDEA中添加参数以减少本地内存使用
按照下图点击,添加参数 -Xms64m -Xmx128m


2.远程上线时,命令行添加参数 2.1单个服务直接部署
例如使用nohup执行时,在java与-jar之间添加参数-Xms64m -Xmx128m
nohup java -Xms64m -Xmx128m -jar x.xx-xx.jar &
2.2对每个服务使用dockerFile编排
FROM java:8 COPY *.jar /security.jar CMD ["--server.port=8080"] EXPOSE 8080 ENTRYPOINT ["java","-Xms64m","-Xmx256m","-jar","security.jar"]
这是一个完整的dockerfile文件,最后一行中添加的两个参数用于控制内存大小
参数详解
设置JVM内存的参数有四个:
-Xmx: Java Heap最大值,默认值为物理内存的1/4,最佳设值应该视物理内存大小及计算机内其他内存开销而定;
-Xms: Java Heap初始值,Server端JVM最好将-Xms和-Xmx设为相同值,开发测试机JVM可以保留默认值;
-Xmn: Java Heap Young区大小,不熟悉最好保留默认值;
-Xss: 每个线程的Stack大小,不熟悉最好保留默认值;
到此这篇关于springcloud项目占用内存好几个G导致服务器崩溃的问题的文章就介绍到这了,更多相关springcloud占用内存过高内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Spring Security OAuth2 授权码模式的实现
这篇文章主要介绍了Spring Security OAuth2 授权码模式的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-08-08
Idea跑的项目没问题将程序install成jar包运行报错空指针的问题
这篇文章主要介绍了Idea跑的项目没问题,将程序install成jar包运行报错空指针的问题,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2020-06-06


最新评论