【SpringBoot】使SpringBoot运行jar包守护进程

11 篇文章 0 订阅

0、守护进程,即使人为kill掉程序,也可以瞬速自启

场景描述:守护进程,顾名思义,保证程序进程一直稳定运行,即使运行程序出现问题停止或者被人为kill掉,也可以自动拉起来。

1、Systemd

我们只需要新增一个配置文件即可,也就是使用 Systemd 来完成这些工作。
SpringBoot打包好的jar包,比如 pmrobot.jar下面我们来创建他的守护进程。

# 创建 pmrobot.service
sudo vi /etc/systemd/system/pmrobot.service
2、写入文件
[Unit]
Description=PMRobot Service
Documentation=https://pmr.com
After=network-online.target
Wants=network-online.target

[Service]
Type=simple
ExecStart=/usr/bin/java -server -Xms1024m -Xmx1024m -jar /home/www/pmrobot.jar --server.port=8090
ExecStop=/bin/kill -s QUIT $MAINPID
Restart=always
StandOutput=syslog

StandError=inherit

[Install]
WantedBy=multi-user.target
3、参数说明

参数:
-Xms1024m:为 JVM 启动时分配的内存,请按照服务器的内存做适当调整,512 M 内存的服务器推荐设置为 128,1G 内存的服务器推荐设置为 256,默认为 256。
-Xmx1024m:为 JVM 运行过程中分配的最大内存,配置同上。
YOUR_JAR_PATH:安装包的绝对路径,例如 /www/wwwroot/pmrobot.jar。
提示
如果你不是按照上面的方法安装的 JDK,请确保 /usr/bin/java 是正确无误的,或者换成自己的java环境路径。
systemd 中的所有路径均要写为绝对路径,另外,~ 在 systemd 中也是无法被识别的,所以你不能写成类似 ~/pmrobot.jar 这种路径。
如何检验是否修改正确:把 ExecStart 中的命令拿出来执行一遍。

4、执行命令
# 修改 service 文件之后需要刷新 Systemd
sudo systemctl daemon-reload
# 使 pmrobot 开机自启
sudo systemctl enable pmrobot
# 启动 pmrobot
sudo service pmrobot start
# 重启 pmrobot
sudo service pmrobot restart
# 停止 pmrobot
sudo service pmrobot stop
# 查看 pmrobot 的运行状态
sudo service pmrobot status
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值