於是,開始這段伺服器搶救的過程。
1. 因為 console.log 及 message.log 中都沒有紀錄錯誤訊息,所以為了看更多的資訊,必須打開 trace.log
需要再 server.xml 中加上下列資訊,就可以產生 trace.log 了!
<logging maxfiles="10" maxfilesize="20" tracefilename="trace.log" traceformat="BASIC" tracespecification="com.worklight.*=all:com.worklight.*=all:*=info"> </logging>中間經歷了很多次重開的過程,Server 就是無法順利啟動。
在沒辦法之下,我只好使用 MobileFirst 的 Configuration-Tool 試著用 update 的方式,中置一下 worklight admin 服務及 runtime environment 的三個 war 檔案。
突然,其中一部 Server 正常啟動了。
心想,應該修好了!
結果在啟動另一個 Server 時,卻卡住了!
這時候剛剛啟動的 Server 也無法正常運作。
觀察一下 tracelog,後來我發現每 30 秒會出現一次下列紀錄
com.worklight.core.clustering.ClusterSynchronizationTask解到這邊,我一直觀察資料庫內的資料跟伺服器運作的模式。
感覺,就是同步作業失敗,然後一直重做。
上網找了一下資料,看起來跟這個問題比較像的是:
IBM MobileFirst 7.1.0 Liberty Server Farm Unresponsive
但是,內文也是說重建 Server Instance 跟重新設定 Server Farm 就好了!
目前,重建後只能讓單一伺服器恢復運作。
只要想同時啟動 Server Farm 中的兩個伺服器,就會陷入同步失敗的問題。
現在還在等 IBM 原廠回覆此問題的正確解法。