在之前的一篇文章中《SpringBoot(九)定时任务Schedule》,已经详细介绍了关于schedule框架的配置和使用,有收到一些朋友关于部署的私信,所以抽时间整理一个linux部署的schedule的教程。
v准备脚本
关于shell脚本不多介绍,部署jar包的网上一搜一堆,直接贴脚本了。
#!/bin/sh
#使用方法
# 1:执行运行 ./test.task.sh 输入 1、2、3
# 2:执行运行 ./test.task.sh start|stop|restart
BIZ_NAME="test_demo_task" # 业务名称(英文、数字、下划线)
JAR_NAME="demo-0.0.1-SNAPSHOT.jar" # exec jar 文件路径
JAR_ARGS="export" # jar包启动参数
PID_PATH="/var/srv/test/" # PID 路径
start(){
if [ ! -d $PID_PATH ]
then
mkdir -p $PID_PATH
chmod 777 -R $PID_PATH
fi
JAVA_OPTS="-Xmx512M -Xms64M -Xmn32M -Xss256K "
echo "ˇstart service ..."
nohup java -jar "$(cd `dirname $0`; pwd)/$JAR_NAME" $JAR_ARGS $JAVA_OPTS &
echo $!>"${PID_PATH}_${BIZ_NAME}.pid"
echo "ˇstart service success ..."
}
stop(){
echo "stop service ..."
kill `cat "${PID_PATH}_${BIZ_NAME}.pid"`
rm -rf "${PID_PATH}_${BIZ_NAME}.pid"
echo "stop service end ..."
}
restart(){
stop
sleep 3
start
}
if [ -n "$1" ]
then
case "$1" in
"start")
start
;;
"stop")
stop
;;
"restart")
restart
;;
*)
echo 'You do not input a run param'
;;
esac
else
if read -n 1 -t 10 -p "User Command: {start:1|stop:2|restart:3}" input
then
case $input in
1)
start
;;
2)
stop
;;
3)
restart
stop
;;
*)
echo 'You do not select a number between 1 to 3'
;;
esac
else
echo "timeout ,please retry ..."
fi
fi
exit 0
v部署Schedule
1.0 打包
2.0 上传包和脚本文件
rz -y或者sudo rz -y选择文件
3.0 脚本添加可执行属性
chmod +x *.sh
4.0 执行脚本
查看输出less nohup.out
日志一直输出快捷键Shift+F
查看进程ps -ef | grep name
v源码地址
作 者:请叫我头头哥
出 处:www.cnblogs.com/toutou/
关于作者:专注于基础平台的项目开发。如有问题或建议,请多多赐教!
版权声明:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接。
特此声明:所有评论和私信都会在第一时间回复。也欢迎园子的大大们指正错误,共同进步。或者直接私信我
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角 【推荐】 一下。您的鼓励是作者坚持原创和持续写作的最大动力!\