WAS JVM 初始堆大小設置錯誤產生的故障排除

今天,中午,在去吃飯的路上,突然收到客戶的緊急電話,說有一台was6.1 宕機,起不來了,是生產環境,並且,要求在中午一點鐘要將業務恢復,否則影晌很大,收到客戶電話,立即趕到客戶現場。

來到客戶現場,先了解客戶環境情況,通過溝通,了解客戶的WAS是WAS6.1,操作系統是32位的windows2003操作系統,情況就是,上午,客戶發現業務應用晌應很慢,就將WINDOWS2003系統重啟。系統重啟後,發現WAS6.1的Appserver應用服務器節點沒有啟來(客戶設置了讓節點隨系統啟動而啟動),去到現場,客戶讓我看了一些startserver.log的日誌,日誌顯示WAS節點啟動時初始化時,JVM空間不足。

讓客戶再次重啟系統,系統重啟後,進行CMD命令行,手動用命令啟動WAS服務。

startServer.bat server1

但遇到如下報錯:

詢問客戶,這段時間WAS有沒有作過變更,因為從報錯信息來看,是WAS啟動初始化就報錯,還沒到應用那一層,並且,我現場重新創建一個新profiles AppSrv02,並且這個profile 啟動成功,因而,確認這個WAS沒有問題,問題出在這個AppSrv01節點上,再次跟客戶溝通,了解到客戶兩個月前調整 WAS的JVM參數,但並沒有重啟系統,而今天上午,因為應用慢,客戶重啟操作系統,WAS就起不來, 再加上考慮到WINDOWS2003是32位,只支持2G內存,懷疑是調整過JVM的內存參數。

再讓客戶跟開發確認一下,確認是在兩個月前,在WAS 的WEB管理台,改過JVM的內存參數。好像是JVM的初始化堆參數。

如下圖:

而WINDOWS2003 32位,只支持2G內存,如果將初始堆大小,調到2048,那自然不能完成WAS初始化,那現在,WAS 不能起來,無法進入WAS的WEB管理台,改過來,那如何將這個參數改過來?。經過查證,原來可以在這個文件給於修改:

將相應參數值 改過來,再次啟動was  appsrv01

startServer.bat server1

就可以成功啟動起來啦。

以下文章點擊率最高

Loading…

     

如果這文章對你有幫助,請掃左上角微信支付-支付寶,給於打賞,以助博客運營