假設我在遠程服務器上的Tomcat上放置了一個Java應用程序,例如Amazon AWS。如果應用程序以不可恢復的方式失敗,你推薦什麼來重新啓動tomcat AUTOMATICALLY? 也許有辦法從應用程序本身做到這一點,所以如果我看到異常非常討厭,我可以重新啓動它?如果應用程序崩潰,如何在遠程服務器上重新啓動Tomcat?
3
A
回答
4
一種可能性是安裝監視器(例如,在端口上,一些自定義檢查等)應用程序,並且如果必要的話重新啓動整個服務器。這甚至可以是一個bash腳本,它在受控的子shell上執行catalina.sh run
。
體面的監測系統也允許這樣做。例如,Zabbix允許自定義監視檢查和操作,因此如果服務無法訪問,它可以主動重新啓動它。
另一種解決方案是使用Tomcat manager來停止/啓動現有的應用程序。您可以通過調用相關管理器URL的Apache Ant腳本執行此操作。但是,如果應用程序「硬」死並將整個服務器關閉,則此解決方案不適用。
1
我會建議看看monit實用程序。隨着monit的,你可以很容易地監控服務,資源使用,然後檢查網址 - 以確保服務響應的預期,並開始重新啓動時,一些錯誤http://mmonit.com/monit/documentation/monit.html#connection_testing_using_the_url_notation
4
沒有這裏的任何程序有趣的解決方案:http://aujava.wordpress.com/2006/08/16/watchdog-for-tomcat/
你只需要將isalive.html(帶有單個文本「YES」)添加到您的應用程序並使用以下腳本:
#!/bin/sh
HOST=127.0.0.1
PORT=8080
#infinite loop
while [ 1 ]
do
#try to access tomcat's page
RES=`wget -O - -o /dev/null --proxy=off http://${HOST}:${PORT}/isalive.html | awk '{ print $1 }'`
echo got ${RES}
#decide on reply
if [ "$RES" = "YES" ]
then
echo tomcat is responding on $HOST:$PORT
else
echo tomcat seems to be dead.
echo Killing...
for thepin in `ps -Af | grep -v grep | grep tomcat | grep catalina | awk '{ print $2 }'`
do
kill -9 ${thepin}
done
echo Starting...
sudo -u tomcat /usr/local/tomcat/bin/startup.sh
fi
sleep 60
done
相關問題
- 1. 如何重新啓動應用程序在tomcat服務器
- 2. Web應用程序apache tomcat服務由於tomcat JVM崩潰而重新啓動
- 3. 如何從.NET重新啓動遠程服務器上的COM +應用程序?
- 4. 如何在崩潰後重新啓動qt應用程序?
- 5. 啓動後啓動服務時,應用程序崩潰
- 6. 以編程方式重新啓動所有崩潰服務的服務程序
- 7. 應用程序在重新啓動活動時崩潰
- 8. 應用程序在手動kill後重新啓動時崩潰
- 9. 如果服務器宕機,TCPsending會崩潰應用程序
- 10. Tomcat服務器遠程重新部署
- 11. 重新啓動代理程序崩潰
- 12. 在Tomcat服務器上啓動JHipster生成的應用程序
- 13. 遠程服務器上啓動GUI應用程序
- 14. 如何在Android中崩潰時以編程方式重新啓動/重新啓動應用程序?
- 15. 如何在Windows上遠程啓動Tomcat
- 16. 以編程方式重新啓動應用程序崩潰
- 17. 如果ipad應用程序崩潰,向服務器發送崩潰報告?
- 18. 應用程序在服務啓動時崩潰
- 19. 如何在新應用程序啓動時啓動服務?
- 20. 我的應用程序崩潰後,意圖服務不會重新啓動
- 21. 應用程序在手機的重新啓動時崩潰
- 22. 在崩潰時重新啓動應用程序
- 23. Android應用程序在重新啓動前崩潰
- 24. 在Tomcat服務器上的Web應用程序中使用SVNKit時,JRE崩潰
- 25. 如何在遠程服務器上啓動NodeJS進程?
- 26. 如何遠程重新啓動的IIS7應用程序池
- 27. 如果Windows移動程序崩潰,如何重置該程序?
- 28. 應用程序在啓動後崩潰
- 29. 應用程序在啓動時崩潰。
- 30. 應用程序在啓動時崩潰
這不是一個好的做法....如果您打算使用HTML方法,最少使用crontab而不是睡眠。 – Panthro 2014-04-02 12:40:49