websphere應用伺服器效能調整建議,針對執行一段時間後當機

dennis_zane發表於2007-04-20
最近專案的websphere經常當機,執行一段時間後變慢然後當掉。查詢了下網上的資料,儘管不是我在負責伺服器,但是也是個學習的機會。

主要針對的症狀:  
        平臺:was5.1   base,http   server   1.3.28,oracle   8i,9i  
        症狀:使用者響應突然變慢,然後並連線不上80埠,重啟後正常,一段時間後反覆  
        解決方式:調整伺服器引數,增加伺服器的處理能力  
   
        1,更改http   server的配置檔案引數KeepAlive。  
      原因:這個值說明是否保持客戶與HTTP   SERVER的連線,如果設定為ON,則請求數到達MaxKeepAliveRequests設定值時請求將排隊,導致響應變慢。  
      方法:開啟ibm   http   server安裝目錄,開啟資料夾conf,開啟檔案httpd.conf,查詢KeepAlive值,改ON為OFF,其預設為ON  
   
  2,更改http   server的配置檔案引數ThreadsPerChild值到更大數目,預設為50  
      原因:伺服器響應執行緒的數量  
      方法:開啟ibm   http   server安裝目錄,開啟資料夾conf,開啟檔案httpd.conf,查詢ThreadsPerChild值,預設為50,改到更大數目,視使用者數 多少而定,一般改到客戶機數量的1.1倍,如200臺,則設為220  
   
  3,關閉http   server日誌紀錄  
          原因:http   server的日誌IO影響效能  
          方法:開啟ibm   http   server安裝目錄,開啟資料夾conf,開啟檔案httpd.conf,查詢CustomLog值,找到沒有註釋的那行(行的開頭沒有符號"#"), 將那行用符號"#"註釋掉,以關閉日誌紀錄,提高處理效能。  
   
  4,更改Websphere的伺服器處理執行緒數  
          原因:執行緒的數量影響同時併發的請求數量  
          方法:開啟管理控制檯,依次開啟目錄樹,伺服器->server1->web容器->執行緒池,修改"最大大小"的值,預設是50,改到 更大數目,具體視總使用者數量和機器的配置而定,一般設定其等於或小於http   server設定的MaxKeepAliveRequests的值。

    根據上面的建議,檢視了下我們的伺服器配置情況,倒是沒什麼不同,實際上導致服務相應變慢到停止,一般是由兩個原因導致的  
  1,資料庫操作時間過長(如查詢),導致佔用連結時間過長,然後後續請求無法及時取得連結響應請求  
  2,程式碼中一定要確保連結關閉,尤其在jsp中。後臺程式要在finally中關閉
    由此,我檢視了System.out的日誌,發現每次在當機前都有報“連線郵件伺服器失敗”類似的錯誤,我們的郵件伺服器是ibm的Lotus Domino,最近的網路狀況很有問題,個人懷疑是因為連線郵件伺服器時間過長,導致了這種情況的發生,有待證實。   
112174.html

dennis 2007-04-20 13:06 發表評論

相關文章