1. 程式人生 > >Supervisor管理springboot應用

Supervisor管理springboot應用

目錄

  • 概述
  • 環境準備
  • spring boot應用
  • supervisor配置
  • 啟動應用

概述

    前面博文介紹了Supervisor程序管理,實際應用可以對springboot應用進行管理,如果springboot應用掛掉,Supervisor還可以對它進行自動重啟.

    點選檢視程序管理利器Supervisor--入門簡介

    點選檢視程序管理利器Supervisor--centos7下安裝與解除安裝

環境準備

  • Supervisor3.3.4
  • 可執行的springboot應用

spring boot 應用

    這裡就不贅述了,自行百度建立一個,本文應用名叫做: springboot-test.jar,放置目錄在:/opt/apps

supervisor配置

需要結合博文程序管理利器Supervisor--centos7下安裝與解除安裝

#vim /etc/supervisor/conf.d/springboot-test.conf

配置內容如下:

[program:mohurd-search]
directory = /opt/apps ; 程式的啟動目錄
command = /opt/jdk1.8.0/bin/java -Xms2048m -Xmx4096m -Dspring.profiles.active=prd -Dserver.port=8081 -jar /opt/apps/springboot-test.jar ; 啟動命令,可以看出與手動在命令列啟動的命令是一樣的
autostart = true     ; 在 supervisord 啟動的時候也自動啟動
startsecs = 30        ; 啟動 30 秒後沒有異常退出,就當作已經正常啟動了
autorestart = true   ; 程式異常退出後自動重啟
startretries = 3     ; 啟動失敗自動重試次數,預設是 3
user = test          ; 用哪個使用者啟動
redirect_stderr = true  ; 把 stderr 重定向到 stdout,預設 false
stdout_logfile_maxbytes = 20MB  ; stdout 日誌檔案大小,預設 50MB
stdout_logfile_backups = 20     ; stdout 日誌檔案備份數
; stdout 日誌檔案,需要注意當指定目錄不存在時無法正常啟動,所以需要手動建立目錄(supervisord 會自動建立日誌檔案)
stdout_logfile = /var/log/springboot-test.log ;應用日誌目錄

啟動應用

    可以通過上一篇博文中的web控制檯或者命令列啟動, 命令列啟動如下:

# 讀取有更新(增加)的配置檔案,不會啟動新新增的程式
supervisorctl reread

# 重啟配置檔案修改過的程式
supervisorctl update

# 關閉程式
supervisorctl stop springboot-test

# 啟動程式
supervisorctl start springboot-test

# 重啟
supervisorctl restart springboot-test