Springboot的多种部署方式-创新互联

前言

Springboot内置了tomcat,部署十分的方便,无需额外的应用服务器。但是在部署过程中,却有很多种方式
本文总结在工作中常见的linux部署方式

10年积累的做网站、成都网站建设经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计制作后付款的网站建设流程,更有珠山免费网站建设让你可以放心的选择与我们合作。一、通过nohup命令部署

linux可以通过nohup命令将项目部署在后台,即使终端退出,进程仍然在运行,并且会生成一个nohup.out 文件
但是…想要结束进程,只能先找到进程的pid,再kill掉

nohup java -jar xxx.jar  &

缺点:
1、项目升级不方便,需要先找到进程,再kill掉,再重新用nohup启动进程,步骤繁琐
2、项目升级过程中,经常需要一些额外的操作,例如备份配置文件,备份jar。单单通过nohup命令,无法完成附加的额外操作


二、通过ssh脚本+nohup方式部署

前面讲了nohup的部署方式和它的繁琐缺点,是否能够通过ssh脚本自动化nohup的部署呢
操作步骤:先通过端口找到进程,进程存在则kill掉,再启动项目,无需人工操作
还可以在启动前备份好jar包,一些其他额外操作

#!/bin/bash
port=9090
pid=$(netstat -lnp | grep :$port | awk '{print $7}' | awk -F"/" '{print $1 }');
if [ -n "$pid" ]; then
    kill -9 $pid;
fi
nohup java -jar xxx.jar & 
echo "project start completed."

缺点:
1、脚本有丢失的风险,需做好备份
2、脚本需要维护,换了端口,jar移动了位置或改名,都需要调整脚本
3、灵活性差,如果只想停止,不想重启怎么办?或者只想执行某个步骤,这时就显得很麻烦


三、linux的service服务(推荐)

linux的service功能可以很好的管理服务的启动、重启、停止,配置开机启动等信息
每次操作只需一个简单的命令,并且可以单独执行某个操作,解决了上面两种部署方案的不足
通过简单的文件配置,即可完成服务的管理,十分推荐

[Unit]
Description=example
After=syslog.target

[Service]
ExecStart=java -jar /xxx.jar

[Install]
WantedBy=multi-user.target

具体的service操作介绍可以百度哈,本文只介绍下这种部署方式的存在

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


网站栏目:Springboot的多种部署方式-创新互联
文章源于:http://myzitong.com/article/dgcdss.html