2011-06-20 120 views
0

可能重複自動重新啓動ColdFusion服務:
How to restart Coldfusion Application Server when application is timeout?當它的股價下跌

目前,我有導致服務器問題的ColdFusion應用程序。在1-2天后,服務不會響應,直到手動重啓完成。 我知道我必須找出腳本中出現了什麼問題,並花了數週的時間和時間。 但是暫掛我會做一個腳本,自動重新啓動ColdFusion服務,如果它被竊聽。

我對批處理腳本等方面的知識還不多。但我想測試應該是對.cfm的請求,並且響應將會一直服務到超時。 ?

有沒有人遇到過這樣的腳本?

配置:贏2K8服務器R2 - ColdFusion的9(.0.0)

謝謝你在這裏

回答

1

兩件事情

  1. 真正的辦法是解決這個問題,你可以這樣做與Fusion Reactor - http://www.fusion-reactor.com/fr/它將幫助您監視並重新啓動並根據需要自行修復。

  2. 您可以創建一個批處理文件,並在Windows中創建一個運行它的計劃任務。 使用net start命令/ net stop命令

淨停止 「Macromedia公司的JRun CFusion服務器」

NET START 「Macromedia公司的JRun CFusion服務器」

思想這可能並不總是工作,所以我有一個批處理文件:

c:\ JRun4 \ uninstall \ KillJRun.exe

NET START 「Macromedia公司的JRun CFusion服務器」

這對我的作品。

+0

好的謝謝。我知道聚變反應堆,就像我說的,我目前正在尋找一個更好的解決方案,但我想睡得很好^^好吧,我已經看到了這些命令,但是,有沒有辦法只有在CF沒有響應時才啓動它? – LarZuK

0

沒有。當您的CF服務/服務器掛起時,它不能自動重啓。唯一的一種方法是通過Windows時間表重新啓動。

1

最好的辦法是使用Pingdom或其他服務器監控工具。當服務器關閉時(響應503錯誤,服務不可用),您可以讓Pingdom向調用批處理文件的服務器上的PHP腳本發送響應。我不確定Pingdom是否支持ping另一臺服務器,但您可以將Pingdom電子郵件發送到收件箱,PHP可以每隔幾分鐘檢查一次。

這可能最終會比找出你的腳本出了什麼問題更多的工作。

編輯:你可能想看看this question。這隻會在服務停止時起作用,而通常當腳本崩潰時,它將掛起。如果你運行的腳本崩潰了服務器,然後看服務,如果它說停止,那麼這可能適合你。

我要檢查的另一件事是JVM內存。通常情況下,崩潰是由於處理來自文件或數據庫的大量數據造成的,JVM沒有內存來執行此操作。

+0

確保你鎖定你從Pingdom調用的PHP腳本或某人可能導致你一些真正的問題。 –

+0

是的。爲此,您的選項是檢查Pingdom服務器列表中的IP請求,或讓Pingdom使用某種密碼執行POST請求。 –

0

當服務掛起時,您還可以使用Nagios +插件來啓動重啓腳本。但按照以前的建議&找出問題所在是你最好的選擇。