springcloud项目占用内存好几个G导致服务器崩溃的问题

 更新时间:2020年10月26日 09:50:56   作者:LinKing06  
这篇文章主要介绍了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占用内存过高内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java每隔两个数删掉一个数问题详解

    Java每隔两个数删掉一个数问题详解

    这篇文章主要介绍了Java每隔两个数删掉一个数问题详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • Java封装统一的Result Model案例

    Java封装统一的Result Model案例

    这篇文章主要介绍了Java封装统一的Result Model案例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-08-08
  • springboot更新配置Swagger3的一些小技巧

    springboot更新配置Swagger3的一些小技巧

    今天给大家分享springboot更新配置Swagger3的方法,大家需要注意Swagger3版本需要引入依赖,具体示例代码参考下本文
    2021-07-07
  • Java中的随机数Random

    Java中的随机数Random

    这篇文章主要介绍了Java中的随机数Random,关于随机数的介绍不设置随机数种子,你每次随机抽样得到的数据都是不一样的。设置了随机数种子,能够确保每次抽样的结果一样,下面来了解具体的详细内容介绍吧
    2022-03-03
  • Redis中的事务和Redis乐观锁详解

    Redis中的事务和Redis乐观锁详解

    这篇文章主要介绍了Redis中的事务和Redis乐观锁详解,Redis事务是一个单独的隔离操作:事务中的所有命令都会序列化、按顺序地执行,事务在执行的过程中,不会被其他客户端发送来的命令请求所打断,需要的朋友可以参考下
    2023-12-12
  • Spring Security OAuth2 授权码模式的实现

    Spring Security OAuth2 授权码模式的实现

    这篇文章主要介绍了Spring Security OAuth2 授权码模式的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • idea使用war以及war exploded的区别说明

    idea使用war以及war exploded的区别说明

    本文详细解析了war与warexploded两种部署方式的差异及步骤,war方式是先打包成war包,再部署到服务器上;warexploded方式是直接把文件夹、class文件等移到Tomcat上部署,支持热部署,开发时常用,文章分别列出了warexploded模式和war包形式的具体操作步骤
    2024-10-10
  • mybatis映射文件mapper.xml的具体写法

    mybatis映射文件mapper.xml的具体写法

    在开发过程中,需要开发人员配置mapper映射文件,本文主要介绍了mybatis映射文件mapper.xml的具体写法,感兴趣的可以了解一下
    2021-09-09
  • Mybatis的SqlRunner执行流程实现

    Mybatis的SqlRunner执行流程实现

    MyBatis提供了一个用于操作数据库的SqlRunner工具类,对JDBC做了很好的封装,本文主要介绍了Mybatis的SqlRunner执行流程实现,具有一定的参考价值,感兴趣的可以了解一下
    2023-10-10
  • Idea跑的项目没问题将程序install成jar包运行报错空指针的问题

    Idea跑的项目没问题将程序install成jar包运行报错空指针的问题

    这篇文章主要介绍了Idea跑的项目没问题,将程序install成jar包运行报错空指针的问题,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-06-06

最新评论