重啟tomcatshell腳本
❶ linux下服務宕機自動重新啟動tomcat shell腳本放到哪裡
#!/bin/bash if[ chkconfig | grep tomcat | grep on ];then echo "OK!" else echo "Sorry!It is down!"
❷ Tomcat自動重啟腳本.vbs
解決tomcat內存泄漏方式之一
1.新建文檔文件.txt
例:新建restarttomcat.txt
把下面兩句復制進入.txt文件里,並修改內容:路徑為你的本地tomcat的絕對路徑。
解釋:0是立即執行,true是待此程序執行完,才會接著執行下一句的程序。
2.修改文件.txt後綴為.vbs
3.若可以實現tomcat的重啟
windows系統定時執行重啟Tomcat任務
創建計劃任務:
3.創建計劃任務:
(1)開始-搜索-任務計劃任務-創建基本任務-觸發器(選一次)下一步-操作(選擇剛才創建的vbs文檔c.vbs腳本)下一步-完成(選擇最下面對勾)
(2)選擇左側的任務程序計劃庫,找到剛才的計劃任務右擊屬性選觸發器標簽可以更改觸發的周期你可以把周期改為5分鍾觸發一次測試一下。具體什麼時候執行,看業務情況,我一般設置在夜裡2點重啟tomcat,解決tomcat內存泄漏問題。
❸ linux tomcat 為什麼每天都要重啟
linux Tomcat自動檢測、重啟 客戶的機器有時遇見宕機的情況,雖然我在linux伺服器上配置了Tomcat自啟動程序,可以在機器重啟的時候自動部署web應用。但是,當資料庫伺服器與Web應用伺服器不能同時啟動的時候,Tomcat啟動項目就失敗了。最後,寫了shell腳本,來自動判斷是否有tomcat進程,如果沒有的話,就重啟tomcat,否則,不執行任何操作,並將tomcat啟動日誌寫到文件里。腳本如下:java代碼 #/bin/bash ############################################# # author zhao yanan # date 2010/08/23 # update 2011/01/10 # Automatic detection and restart tomcat ############################################# #腳本可寫入到自動任務中,執行周期可根據tomcat起停時間長短來定,如下,每天0點到20點之間每隔10分鍾檢查一次 #echo */3 0-24 * * * root /root/script/tomcat_check.sh >> /root/script/tomcat_check.log 2>&1 >> /etc/crontab echo ======================================== date PROCESS_NUM=`ps -ef grep tomcat grep -v grep wc -l` if [ $PROCESS_NUM -lt 1 ]; then # 判斷是否有Tomcat進程,如果沒有,則執行接下來的任務,否則執行else後的任務。 # java Environment variables #設置jdk的環境變數,根據自已的實際情況設定 export JAVA_HOME=/usr/local/jdk1.6.0_25 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export CATALINA_HOME=/usr/local/tomcat echo restart tomcat. ${CATALINA_HOME}/bin/shutdown.sh #關閉tomcat sleep 5 #等待tomcat關閉,一般是1~150s不等 kill -9 `ps auxgrep /usr/local/tomcatgrep -v grepawk '{print $2}'` #等待時間結束後,償試強制結束tomcat進程 sleep 5 ${CATALINA_HOME}/bin/catalina.sh run sleep 5 else echo checked. #首頁下載成功,提示已檢查 fi
❹ linux環境下重啟Tomcat服務
廢話一波:俗話說,重啟能解決90%的bug,那麼我們怎麼樣在linux下重啟Tomcat呢?
首先,我們先看看該Tomcat是否在運行,輸入如下指令然後回車,
你可能會看到下面兩種情況的其中之一
情況一:
信息很多,不一一解釋,反正意思就是目前沒有Tomcat正在運行
情況二:
可以看出,當前有兩個Tomcat服務正在運行,綠色的框內的數字,表示運行該服務的進程id,黃色框的內容表示該Tomcat的的執行路徑,其他新增暫時不理。
如果當前Tomcat沒有在運行,則可以直接啟動,進入到Tomcat下的bin目錄,輸入 ./startup.sh
就可以啟動該Tomcat服務,啟動成功後重新輸入 ps -ef|grep java 就會出現類似圖二的畫面
如果當前的Tomcat正在運行,我們需要關掉該Tomcat服務後再執行 ./startup.sh ,即可重啟該Tomcat服務,關掉Tomcat的方式有兩種方法,
第一種:直接用Tomcat的腳本進行,進入到Tomcat的目錄下,輸入命令 ./shutdown.sh 執行Tomcat的關閉服務腳本,Tomcat即可正常關閉,但是Tomcat並不是完全關閉,一般使用第二種方式關閉
第二種:使用linux命令直接殺掉Tomcat的進程,輸入如下指令 kill -9 28003 這里的28003就是該Tomcat服務的進程,至於為什麼要在前面加上 -9 ,其實kill就是給某個進程id發送了一個信號。默認發送的信號是SIGTERM,而kill -9發送的信號是SIGKILL,即exit。exit信號不會被系統阻塞,所以kill -9能順利殺掉進程。當然你也可以使用kill發送其他信號給進程。
殺死Tomcat進程後,就可以按照前面啟動Tomcat的腳本進行啟動。
❺ windows如何自動重啟tomcat 2022-07-11
把項目打包成war包,放到tomcat中,但是經常過一段時間, tomcat就自動關閉了。
原因是這台伺服器還運行其他項目,內存有時候不夠用,導致windows殺死了較大的進程。
寫一個bat腳本,定時訪問網址,如果訪問失敗則重啟tomcat
參考
❻ linux重啟tomcat服務命令
重啟tomcat一般要進去tomcat的安裝目錄,裡面有stop.sh和start.sh 腳本,直接執行即可。
具體操作可以參考如下,
首先,進入Tomcat下的bin目錄
cd /usr/local/tomcat/bin
使用Tomcat關閉命令
./shutdown.sh
查看Tomcat是否可以關閉
ps -ef|grep java
如果顯示以下相似信息,說明Tomcat還沒有關閉
root 12976 1 0 Sep01 ? 00:10:22 /usr/java/jdk1.7.0_80/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.endorsed.dirs=/usr/local/tomcat/endorsed -classpath /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/tomcat -Dcatalina.home=/usr/local/tomcat -Djava.io.tmpdir=/usr/local/tomcat/temp org.apache.catalina.startup.Bootstrap start
*如果你想直接幹掉Tomcat,你可以使用kill命令,直接殺死Tomcat進程
kill -9 12976
然後繼續查看Tomcat是否關閉
ps -ef|grep java
如果出現以下信息,則表示Tomcat已經關閉
root 19955 19757 0 17:48 pts/0 00:00:00 grep java
啟動Tomcat
./startup.sh
查看tomcat日誌(記得切換路徑哦)tail -f catalina.out
❼ linux shell腳本Tomcat自啟動腳本
比較好的辦法是你把他分段執行一下,比如先執行ps -fwwu tomcat,看輸出什麼,然後執行ps -fwwu tomcat|grep apache-tomcat,依次類推
這邊大概看下來的作用分別是(以豎杠為分割)
查看進程tomcat
查找包含apache-tomcat關鍵字的進程
過濾grep本身這行
過濾PID這行
提取第二列
刪除當前id號的進程
❽ 如何用shell腳本定時啟動Tomcat服務
寫一個重啟tomcat的shell腳本,然後用crontab定時執行這個腳本即可。
❾ 如何用java程序控制Tomcat重啟
因為平時Tomcat在windows上的重啟一般都是用vbs或者是 .bat腳本來寫的.只要做能做到用JAVA調用這兩種 腳本就可以了. 在JAVA的API裡面.可以用代碼控制本地的可執行文件 而不能直接調用腳本.因此需要把腳本轉 換成可執行文件可以下載 visualVBS來把vbs腳本轉換成.exe .bat轉換的腳本更多.網上搜索一下就能找到了. 之後在線程裡面直接調用JAVA API裡面的執行代碼就可以 做到重啟TOMCAT了.DEMO: 首先是重啟腳本,寫成.vbs set WshShell=WScript.CreateObject("WScript.Shell") WshShell.Run("net stop tomcat5") WScript.Sleep(10000) WshShell.Run("net start tomcat5") 然後用visualVBS轉換成.exe文件 然後做一個類,重啟Tomcat專用 package com.uf.tool.util; public class TomcatReset { private String tomcat=""; public TomcatReset() {Configconfig=Config.getConfig(); tomcat=config.getProperties("tomcat");} public void tomcatRun(){try{ System.out.println("the command is:"+tomcat); Process child = Runtime.getRuntime().exec(tomcat); } catch
❿ Linux設置tomcat開機自動啟動
cd /etc/init.d 進入 /etc/init.d 目錄,執行命令 vi tomcat 新建腳本
添加內容:
按下esc輸入 :wq! 保存並退出
執行以下命令,啟動、停止和重啟tomcat
service tomcat start
service tomcat stop
service tomcat restart
為 tomcat 分配可執行許可權: chmod +x tomcat 或者 chmod 755 tomcat
添加tomcat為系統服務 : chkconfig --add tomcat
最後執行命令 chkconfig --list 查看是否添加成功
[圖片上傳失敗...(image-a6b99d-1655085135827)]
Shell分支語句case···esac語法
說明:case後為取值,值後為關鍵字 in,接下來是匹配的各種模式,每一模式最後必須以右括弧結束。
值可以為變數或常數。
模式支持正則表達式,可以用以下字元:
匹配發現取值符合某一模式後,其間所有命令開始執行直至 ;;。
;; 與其他語言中的 break 類似,意思是不執行接下來的語句而是跳到整個 case 語句的最後。
)與default相似,如果上面沒有匹配到的模式,則執行 )里的內容。
