中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

spring boot 配置成 linux service

發布時間:2020-07-18 15:02:32 來源:網絡 閱讀:412 作者:沙漏半杯 欄目:編程語言

最近,要把公司以前的一個java application 同步程序修改一下,讓它變成一個容易部署而且運行穩健的服務。


網上找了一下資料,決定動手把它變成一個spring boot項目,理由有3:


(1)易維護;


(2)易部署;


(3)較穩健;




做了以下步驟:


1.把它從傳統項目變為maven項目,好處是大家都知的.


2.把它從一般的java application 變為spring boot application.


3.把它部署成Linux的系統服務.


聽起來是容易的,實際也是容易,只要不做錯就行,呵呵。在這里,重點說一下第三步.


以下為ubuntu環境:


(1)先生成spring boot 項目的jar包,往pom.xml里加點料,不然做不了的.


<build>

<plug×××>

? <plugin>

? <groupId>org.apache.maven.plug×××</groupId>

? <artifactId>maven-surefire-plugin</artifactId>

? <version>2.19.1</version>

</plugin>

<plugin>

? ? ? ? ? ? <groupId>org.springframework.boot</groupId>

? ? ? ? ? ? <artifactId>spring-boot-maven-plugin</artifactId>

? ? ? ? ? ? <version>1.5.9.RELEASE</version>

? ? ? ? ? ? <executions>

? ? ? ? ? ? ? ? <execution>

? ? ? ? ? ? ? ? ? ? <goals>

? ? ? ? ? ? ? ? ? ? ? ? <goal>repackage</goal>

? ? ? ? ? ? ? ? ? ? </goals>

? ? ? ? ? ? ? ? </execution>

? ? ? ? ? ? </executions>

? ? ? ? </plugin>

? </plug×××>

? ? </build>

然后用

mvn clean compile //重新編譯


mvn package skipTests //生成包啦


(2)把生成的jar包 oee-sync-tool-0.1.jar copy 到/home/page/soft目錄下


(3)在/etc/systemd/system下創建文件oee-sync-tool.service如下內容:


[Unit]

Description=oee-sync-tool Service

After=syslog.target

?

[Service]

ExecStart=/opt/java/jdk1.8.0_131/bin/java -jar /home/page/soft/oee-sync-tool-0.1.jar --spring.profiles.active=dev

SuccessExitStatus=143

?

[Install]

WantedBy=multi-user.target


然后輸入啟動服務 :? ?service oee-sync-tool restart

查看服務:service oee-sync-tool status


停止服務:service oee-sync-tool stop


日志嘛,是放在/logs下面的sync-error.log,sync-info.log


(4)大功告成




以下是Centos環境:


(1)在/etc/init.d下新建一個oee-sync-tool文件,內容如下:




#!/bin/bash

#

# chkconfig: - 57 75

# description: test service

?

ROOT_PATH=/opt/oee/

OEE_SYNC_PID=/opt/oee/oee-sync-tool.pid

start() {

?

? ? ?if [ -f /opt/oee/oee-sync-tool.pid ];then

? ? ? ? ? ? ? ? ? ? SPID=`cat /opt/oee/oee-sync-tool.pid`

? ? ? ? ? ? ? ? ? ? ? if [ "$SPID" != "" ];then

? ? ? ? ? ? ? ? ? ? ? ? ?echo "oee-sync-tool is running.....please check again!"

? ? ? ? ? ? ? ? ? ? ? ? ?echo? $OEE_SYNC_PID

? ? ? ? ? ? ? ? ? ? ? else

? ? ? ? ? ? ? ? ? ? ? ? echo -n $"Starting $prog: "

? ? ? ? ? ? ? ? ? ? ? ? nohup java -jar /opt/oee/oee-sync-tool-0.1.jar >/dev/null 2>&1 & new_agent_pid=$!

? ? ? ? ? ? ? ? ? ? ? ? echo "$new_agent_pid" > $OEE_SYNC_PID

?

? ? ? ? ? ? ? ? ? ? ? fi

? ? ?else

? ? ? ? ?echo -n $"Starting $prog: "

? ? ? ? ?nohup java -jar /opt/oee/oee-sync-tool-0.1.jar >/dev/null 2>&1 & new_agent_pid=$!

? ? ? ? ?echo "$new_agent_pid" > $OEE_SYNC_PID

? ? ?fi

?

?

?

?

}

?

stop() {

?

? ? ?if [ -f /opt/oee/oee-sync-tool.pid ];then??

? ? ? ? ? ? ? ? ? ? SPID=`cat /opt/oee/oee-sync-tool.pid`??

? ? ? ? ? ? ? ? ? ? ? if [ "$SPID" != "" ];then??

? ? ? ? ? ? ? ? ? ? ? ? ?kill -9? $SPID??

??

? ? ? ? ? ? ? ? ? ? ? ? ?echo? > $OEE_SYNC_PID??

? ? ? ? ? ? ? ? ? ? ? ? ?echo "stop success"??

? ? ? ? ? ? ? ? ? ? ? fi??

? ? ?fi? ? ? ? ??

}

?

??

CheckProcessStata()??

{??

? ? CPS_PID=$1??

? ? if [ "$CPS_PID" != "" ] ;then??

? ? ? ? CPS_PIDLIST=`ps -ef|grep $CPS_PID|grep -v grep|awk -F" " '{print $2}'`??

? ? else??

? ? ? ? CPS_PIDLIST=`ps -ef|grep "$CPS_PNAME"|grep -v grep|awk -F" " '{print $2}'`??

? ? fi??

??

? ? for CPS_i in `echo $CPS_PIDLIST`??

? ? do??

? ? ? ? if [ "$CPS_PID" = "" ] ;then??

? ? ? ? ? ? CPS_i1="$CPS_PID"??

? ? ? ? else??

? ? ? ? ? ? CPS_i1="$CPS_i"??

? ? ? ? fi??

??

? ? ? ? if [ "$CPS_i1" = "$CPS_PID" ] ;then??

? ? ? ? ? ? #kill -s 0 $CPS_i??

? ? ? ? ? ? kill -0 $CPS_i >/dev/null 2>&1??

? ? ? ? ? ? if [ $? != 0 ] ;then??

? ? ? ? ? ? ? ? echo "[`date`] MC-10500: Process $i have Dead"? ?

? ? ? ? ? ? ? ? kill -9 $CPS_i >/dev/null 2>&1??

? ? ? ? ? ? ? ? ?

? ? ? ? ? ? ? ? return 1??

? ? ? ? ? ? else??

? ? ? ? ? ? ? ? #echo "[`date`] MC-10501: Process is alive"? ?

? ? ? ? ? ? ? ? return 0??

? ? ? ? ? ? fi??

? ? ? ? fi??

? ? done??

? ? echo "[`date`] MC-10502: Process $CPS_i is not exists"? ?

? ? return 1??

}??

??

status()??

{??

? SPID=`cat /opt/oee/oee-sync-tool.pid`? ?

? CheckProcessStata $SPID >/dev/null??

? ? ? ? ? ? ? ? ? ? ? ? ? ? ?if [ $? != 0 ];then??

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? echo "oee-sync-tool:{$SPID}? Stopped ...."??

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? else??

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? echo "oee-sync-tool:{$SPID} Running Normal."??

? ? ? ? ? ? ? ? ? ? ? ? ? ? ?fi??

??

}??

? ?

restart()??

{??

? ? echo "stoping ... "??

? ? stop??

? ? echo "staring ..."??

? ? start??

}??

? ?

case "$1" in??

? ? start)??

? ? ? ? start??

? ? ? ? ;;??

? ? stop)??

? ? ? ? stop??

? ? ? ? ;;??

? ? status)??

? ? ? ? ?status??

? ? ? ? ;;??

? ? restart)??

? ? ? ? restart??

? ? ? ? ;;??

? ? *)??

? ? ? ? echo $"Usage: $0 {start|stop|restart}"??

? ? ? ? RETVAL=1??

?

echo $"Usage: $0 {start|stop|restart|force-reload}"

exit 2

esac

?

(2)使用命令chkconfig設置開機啟動

? ? ? ??

? ? ? ? chkconfig --add oee-sync-tool


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

大方县| 东方市| 高清| 阳城县| 凉山| 北川| 平湖市| 庆城县| 西畴县| 黑河市| 营山县| 和硕县| 阿城市| 临清市| 镇安县| 太白县| 中超| 广宗县| 蓬莱市| 株洲市| 红河县| 丰都县| 东平县| 嘉禾县| 无为县| 宜黄县| 靖宇县| 长阳| 花莲市| 隆林| 新乡县| 肥西县| 长宁县| 玛曲县| 澎湖县| 荔波县| 东平县| 梓潼县| 清徐县| 乐亭县| 东源县|