轉載于:http://hi.baidu.com/xjch666/blog/item/fc0a47d17102bade562c8483.html
4. 必要參數的調整
在生產環境中安裝WAS完畢并創建了一個可用的概要文件之后,必須根據實際情況進行必要參數的調整,以便提高WAS性能、方便錯誤診斷。這些參數通常要結合運行環境的實際情況、實際的并發量和服務器的資源利用情況進行調整。完整的調優涉及操作系統、應用、應用服務器和數據庫的綜合調整,具體要調整的參數、含義,請參見WAS資源中提到的資源監控和性能調優章節,例如,紅皮書sg246392的17.5章節中明確談到了性能調優通常涉及的參數以及調整原則。本文提出的只是針對應用服務器本身一些重要的參數調整的指導原則和經驗之談,以便讀者能夠快速起步:
- Java虛擬機堆大小(JVM Heap Size): 控制JVM代碼可使用的堆大小,單位M。該參數在服務器->應用程序服務器>進程定義>Java虛擬機中進行設置。JVM最大堆大小默認是256M,在生產環境中通常要根據機器物理內存情況、應用運行特性來設置,且多數情況下都要把此參數調大。根據經驗,內存充足時,通常的調整在500M到1024M之間。需要注意的是,建議JVM Heap的最大值不要超過1024M,如果JVM Heap Size過大,可能會引起內存分頁,或者造成JVM垃圾回收時間過長,反而影響應用服務器性能。有關Java虛擬機調優的具體信息,請參考調整JVM參數。
- Web容器線程池:該參數在“服務器 > 應用程序服務器 > server1 > 線程池”的“WebContainer”中進行設置(如圖6),默認值是10到50。如果硬件資源允許,通常會把線程池的最大大小調到100。
圖 6. 調整線程池
- 數據源連接池:該參數在資源->JDBC->數據源->數據源名稱,選擇“連接池設置”中設置,默認大小為1到10。根據資源設置的隊列(Queue)原則,從Web容器線程池,到數據源連接池的參數設置,應該是從大到小的管道。前面我們列舉了Web容器線程池的最大值設置100,對于數據源連接池,設置的最大值通常不超過50。多數情況下調整為30。實際運行中可以修改此參數值,觀察調整對性能是否有正面影響。注意,如果把數據庫連接池最大大小調得過大,JVM有限的資源都耗費在維護連接池、處理與數據庫連接上,可能反而造成WAS性能的下降。
- WAS 進程日志參數:WAS進程日志常用的有SystemOut.log和SystemErr.log。這兩份日志默認大小為1M,歷史日志文件數為1份。在生產環境中,這樣的設置通常不足以充分保存發生問題時的錯誤信息。我們可以通過修改日志默認大小、歷史日志文件數來保存更多的信息。注意,不要把單份日志文件大小設置過大(例如,超過10M以上),否則可能影響WAS性能。另外,我們建議把應用日志與WAS日志分離開。如果應用中大量以System.out.print或者System.err.print來保存應用狀態日志,也可能會影響服務器性能。
圖 7. 修改WAS日志屬性
- Heapdump文件:前面我們提到,Heapdump文件對磁盤空間占用很快,因此,可以設置IBM_HEAPDUMP參數把Heapdump文件存放到指定目錄下。
- Web服務器的訪問日志access.log:IBM Http Server的訪問日志access.log默認是打開的,其中記錄了經過Http服務器的請求信息。在高并發的系統中,這一日志增長非常過,當日志過大時,可能占用過多磁盤空間或引起性能下降,如果您的系統不需要這份日志,或者有其他技術手段保存用戶訪問信息,可以關閉該日志。具體做法為:打開IBM Http Server安裝目錄/conf目錄下的httpd.conf文件,搜索CustomLog,把CustomLog所在行用#注釋掉即可。

 |

|
5. 常見的日常管理任務
由于生產環境訪問控制的需要,搭建WebSphere環境之后,通常可能會要求修改應用訪問端口,或者更改WAS管理員密碼,啟用/停用管理安全性等等。
5.1. 查看/更改應用服務器端口
應用服務器安裝完畢之后,為了避免生產環境中的端口沖突、端口訪問控制,有時我們需要查看或更改應用服務器的端口。
- 查看端口
- 更改應用訪問端口
默認情況下,WAS的管理控制臺和應用訪問是兩個不同的端口。訪問WAS的管理控制臺或者WAS上部署的應用,所使用的端口由應用服務器端口以及虛擬主機決定。假設我們要把應用訪問的端口從9080變成9082(實際工作中,如果沒有Web服務器,有的環境會希望把應用訪問端口變成80,方法類似),則按如下步驟進行:登陸WAS管理控制臺,選擇 左邊菜單 服務器 - 應用服務器,點擊 server1,選擇“端口”,點擊“WC_defaulthost”(如圖8),修改端口為自己想要的任意端口(注意避免端口沖突),例如,9082。然后點擊“確定”。然后“保存”。
圖 8. 修改應用訪問端口
然后,選擇 左邊菜單 環境 - 虛擬主機,點擊”default_host”,選擇“主機別名”(如圖9),把原有端口9080改成與前面應用服務器/端口/WC_defaulthost一致的端口,例如,9082。或者點擊“新建”,把在WC_defaulthost修改之后的端口號填入,點擊“確定”、“保存”。
圖 9. 修改虛擬主機
當然,如果你在前面應用服務器/端口/WC_defaulthost中設置的端口已經出現在虛擬主機/default_host/主機別名的列表中,則不需要做改動或者新增主機別名端口的工作。目的就是要讓 應用服務器/端口/WC_defaulthost的端口出現在 虛擬主機/default_host的主機別名列表中。更改在重啟WAS服務器之后生效。
- 更改WAS管理控制臺端口
登陸WAS管理控制臺,選擇 左邊菜單 服務器 - 應用服務器,點擊 server1選擇“端口”。然后更改WC_adminhost為自己希望的管理控制臺端口。然后點擊“確定”、“保存”。選擇 左邊菜單 環境 - 虛擬主機,點擊;然后選擇admin_host,選擇“主機別名”。把原有端口9060改成與前面應用服務器/端口/WC_adminhost一致的端口,例如,9063。或者點擊“新建”,創建一個主機別名 *, 9063。然后“確定”,“保存”。目的就是要讓 應用服務器/端口/WC_adminhost的端口出現在 虛擬主機/admin_host的主機別名列表中。
5.2. 管理安全性
針對生產環境要求的多變性,實際WAS環境搭建中可能涉及管理安全性的多種操作。
- 啟用管理安全性
啟用管理安全性將激活用于防止未經授權的用戶使用服務器的設置,簡單來說,進入管理控制臺、更改應用服務器配置、停止應用服務器進程這些管理任務,都需要輸入預先定義的用戶名和密碼才能完成。缺省情況下,創建概要文件時會啟用管理安全性(圖9)。如果在創建概要文件時沒有選擇“啟用管理安全性”,在隨后使用過程中又希望啟用,則可按如下步驟進行:
首先進入控制臺,例如:http://was_ip:9060/admin,注意這里登陸的用戶一定要是設置安全性的用戶。例如,admin。選擇“安全性”>“安全管理、應用程序和基礎結構”,然后點擊“安全配置向導”(圖10)。為了配置的簡便性,在“指定保護范圍”中,可以不選擇“使用 Java 2 安全性來限制應用程序訪問本地資源”;在“選擇用戶存儲庫”中接受默認選項,用戶存儲庫為“聯合存儲庫”,點擊“下一步”;在配置用戶存儲庫中填入用戶名、密碼。如果您是第一次啟用管理安全性,則輸入一個新的用戶名(您登陸管理控制臺的用戶名)和密碼。這個用戶名密碼是任意的,并不要求是操作系統用戶,因為聯合存儲庫默認的用戶條目來自于文件;如果以前曾經使用該存儲庫啟用過管理安全性,則使用存儲庫中持有管理員特權的用戶名和密碼。點擊“下一步”、“完成”。保存之后重啟應用服務器,這時登陸管理控制臺等就需要提供您預定義的用戶名/密碼了。
圖 10. 配置管理安全性
- 停用管理安全性
停用管理控制臺很簡單,在圖10所示頁面,不選擇“啟用管理安全性”,點擊“應用”,保存并重啟應用服務器即可。有一種特殊情況下,特如忘掉了管理員密碼,此時我們無法登陸管理控制臺,從而無法在管理控制臺中停用管理安全性。這時,可從$WAS_HOME/profiles/xxx概要文件名/bin目錄下,發出如下命令: wsadmin -conntype NONE 。當wsadmin的命令行窗口出現之后,發出下列命令: securityoff 。上述操作在應用服務器啟動或停止的狀態都能發出。再次啟用WAS時,就是停用管理安全性的狀態了。
- 更改管理員密碼
當我們需要更改管理員密碼時,可以選擇“用戶和組”>“管理用戶”,如圖11,在搜索內容為“*”時點擊“搜索”,會列出該存儲庫中的所有用戶。選中管理用戶標識,可更改該用戶的密碼。更改即時生效。
圖 11. 管理用戶
- 忘記管理員密碼
如果忘記管理員密碼,我們無法進入管理控制臺更改密碼。此時,需要先用“停用管理安全性”一節中wsadmin命令的方法,停用管理安全性,然后“更改管理員密碼”,再次“啟用管理安全性”即可。
- 創建更多的管理用戶
使用啟用管理安全性的WAS環境時,默認情況下只有一個管理員ID,這意味著同一時刻只有一個人能登陸管理控制臺。這對于多人開發小組在同一WAS環境發布測試時并不方便。您可先在存儲庫中創建一個用戶,然后為該用戶ID分配相應的管理角色。具體步驟如下:1)選擇“用戶和組”>“管理用戶”,如圖24,點擊“添加”,添加一個用戶ID,例如,admin1。保存。 2) 選擇“用戶和組”>“管理用戶角色”,如圖25,填入用戶名(必須是在存儲庫中已經存在的用戶名),選擇相應的管理角色,例如,“管理員”。點擊“確定”,保存。這樣,下次重啟WAS時,兩個用戶都能同時登陸管理控制臺。
圖 12. 管理用戶角色
5.3. 備份/恢復概要文件
生產環境、概要文件配置過于復雜或經常更改時,我們需要定期備份概要文件,以便必要時快速恢復。您可使用backupConfig 命令備份配置文件。例如,要備份概要文件AppSrv01的當前配置,可以從$WAS_HOME/profiles/AppSrv01/bin目錄下,發出命令 backupConfig,它會將AppSrv01當前概要文件默認生成一個壓縮包,您也可以指定該壓縮包的名稱,例如:backupConfig WebSphereConfig_2007_05_30.zip。恢復配置時,使用restoreConfig WebSphereConfig_2007_05_30.zip。
5.4. 正確卸載WAS
需要提醒的是,WAS的卸載過程不是直接刪除目錄,如果這樣做,下次你可能無法在同一臺機器上成功安裝WAS。在卸載WAS之前,先停止機器上的WAS進程,用ps –ef |grep java確保沒有was進程在運行。然后,執行WAS_HOME/uninstall/uninstall.sh命令卸載WAS。如果因為某些特殊原因卸載向導引導的卸載過程沒有成功(例如,您直接刪除了WAS安裝目錄),或者您希望在同一目錄再次安裝WAS,請參照信息中心“手工卸載”給出的建議。