如何解決springboot自動重啟問題
springboot自動重啟
主要原因
如果應(yīng)用使用 spring-boot-devtools ,則只要classpath下的文件有變動,它就會自動重啟。這在使用IDE時非常有用,因為可以很快得到代碼改變的反饋。
默認(rèn)情況下,classpath下任何指向文件夾的實體都會被監(jiān)控,注意一些資源的修改比如靜態(tài)assets,視圖模板不需要重啟應(yīng)用。
在項目工程中,如果你的日志是輸出在classpath下,而且是RollingFile,那么你的idea肯定會不斷重啟,我的就是這種情況。
spring-boot-devtools為springboot熱部署模塊
主要作用:監(jiān)控是否修改代碼,直接進(jìn)行編譯,快速得到項目響應(yīng)
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <scope>true</scope> </dependency>
解決辦法
1.在項目pom.xml文件中將相應(yīng)熱部署模塊刪除,重新加載項目依賴
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <scope>true</scope> </dependency>
2.在配置文件中更改devtools狀態(tài)
將devtools工具狀態(tài)更改為false
注意:如果每次修改后臺代碼需要重新啟動項目,進(jìn)行編譯,僅修改前端代碼無需重啟項目,可以直接在瀏覽器端看到修改后的內(nèi)容
自動重啟springboot jar程序,讓程序用不宕機(jī)
有時候我們已經(jīng)會遇到服務(wù)突然掉線的問題,但是我們一直不知道,一直等到有人通知,或者自檢的時間才發(fā)現(xiàn)。
現(xiàn)在我為了確保服務(wù)在停止后,能夠自動重啟,做一個自動檢測腳本xxx.sh,放到系統(tǒng)定時任務(wù)里面,幾分鐘檢測一次查看服務(wù)在不在線,如果不在就重啟服務(wù)。
sh腳本的寫法:
#!/bin/bash ? ? num=`ps -ef|grep jar包名|grep -v grep|wc -l` ? ? if [ $num -lt 1 ];then ?? ? ? ?source /etc/profile? ?? ? ? ?nohup java -jar /xxx/xxx/xxx.jar >> /xxx/xxx/log-server-$(date +%Y-%m-%d).log 2>&1 ? ? else ?? ??? ?echo $(date '+%Y-%m-%d %H:%M:%S') $@ >> /xxx/xxx/log.log ? ? fi
crontab -e 查看定時任務(wù),
點擊 insert 按鍵編寫定時任務(wù),
# 注釋 */3 * * * * /xxx/xxx/start.sh
定時任務(wù)編寫完成后,點擊 Esc 按鍵,輸入“:wq” 在點擊回車,退出
最后給sh腳本文件設(shè)置權(quán)限
chmod 777 start.sh
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java如何使用multipartFile對象解析Execl
本文介紹了如何使用Spring的MultipartFile類解析Excel文件(.xls和.xlsx),包括文件上傳、數(shù)據(jù)校驗、輸入流獲取、文件解析、數(shù)據(jù)保存和異常處理的詳細(xì)步驟2025-02-02詳解如何為SpringBoot Web應(yīng)用的日志方便追蹤
在Web應(yīng)用程序領(lǐng)域,有效的請求監(jiān)控和可追溯性對于維護(hù)系統(tǒng)完整性和診斷問題至關(guān)重要,SpringBoot是一種用于構(gòu)建Java應(yīng)用程序的流行框架,在本文中,我們探討了在SpringBoot中向日志添加唯一ID的重要性,需要的朋友可以參考下2023-11-11Springboot項目使用html5的video標(biāo)簽完成視頻播放功能
這篇文章主要介紹了Springboot項目使用html5的video標(biāo)簽完成視頻播放功能,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-12-12如何對?Excel?表格中提取的數(shù)據(jù)進(jìn)行批量更新
這篇文章主要介紹了如何對Excel表格中提取的數(shù)據(jù)進(jìn)行批量更新操作,本文通過示例代碼介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧2024-06-06java?HttpURLConnection類的disconnect方法與http長連接詳解
這篇文章主要介紹了java?HttpURLConnection類的disconnect方法與http長連接,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-04-04