linux服务器springboot或tomcat项目启动,进行jvm参数调优设置

简介

在实验环境或生产环境中,往往一台linux服务器需要添加启动n个项目,但是项目启动占用的jvm内存默认值基本上都是很大的,800m到2G都有,这样很容易将服务器的内存吃垮,从而导致系统强制oom(内存泄露),不留任何情面;

所以,我们在部署项目的时候需要进行jvm参数的调优设置,保证内存使用的稳定性;

  1. 首先执行命令:free -h,查询当前的内存占用情况,从下图可看出,内存已被撑爆;
  2. 开始进行优化,执行命令:top,查看各个应用的内存占用情况,选取内存占用过高的pid进程;
  3. 然后获取pid号5252,根据pid查询对应的进程以及项目路径,执行命令:ps -aux |grep -v grep|grep 5252
  4. 定位到项目跟路径之后,开始设置项目启动jvm内存占用,不同项目可分配不同的内存;
  • 如果是springboot项目jar启动,则在启动的时候指定jvm的内存分配:
  • nohup java -jar -Xms128M -Xmx256M -XX:PermSize=128M -XX:MaxPermSize=256M process-activiti-0.0.1-SNAPSHOT.jar > activiti.log 2>&1 &
  • 如果是tomcat项目启动,则在bin目录下,执行命令:vim catalina.sh,然后在顶部加上:
    JAVA_OPTS="-Xms128m -Xmx256m"
  1. 重新启动项目之后,执行命令查询修改情况:jps -v
  2. 将所有高消耗的项目都修改重启之后,重新查看内存占用情况:free -h,如下图,已经腾出了近4G空间,jvm参数调优设置完成;
相关推荐
能源革命26 分钟前
Ubuntu_24.04 安装OpenClaw教程
linux·ubuntu
laocui11 小时前
树莓派Ubuntu系统安装openclow(豆包+QQ机器人)
linux·运维·ubuntu
qq_24218863322 小时前
快速搭建跨环境检测服务的步骤
linux·开发语言·windows·python·macos
计算机毕设vx_bysj68692 小时前
计算机毕业设计必看必学~基于SpringBoot校园招聘系统的设计与实现,原创定制程序、单片机、java、PHP、Python、小程序、文案全套、毕设成品等!
java·spring boot·mysql·课程设计
月明长歌2 小时前
Java 网络编程套接字入门:从“发一段数据”到“写一个可并发的服务器”
java·服务器·网络
冗量2 小时前
《性能之巅》第七章:内存 读书笔记
服务器·性能优化·性能调优
Trouvaille ~2 小时前
【Linux】网络进阶:NAT技术与代理服务器详解
linux·运维·网络·nginx·ip·nat·代理服务器
Codefengfeng3 小时前
binwalk提取文件时无输出文件夹(kali-linux环境)
linux·运维·服务器
好好学习天天向上~~3 小时前
11_Linux学习总结_环境变量
linux·学习
Moshow郑锴3 小时前
Java SpringBoot 疑难 Bug 排查思路解析:从“语法正确”到“行为相符”
java·spring boot·bug