Servlet性能測試之運行方式淺析
Servlet性能測試呢主要考慮的Servlet版運行方式有:
一:Servlet在Web容器中的運行機制
1、單獨一個無狀態(tài)的Servlet實例運行
即Web容器里的多個線程調(diào)用一個Servlet實例的運行方式
2、多個Servlet實例
在Web容器中有多個Servlet實例的對象池,并有多個Web容器線程來分別調(diào)用執(zhí)行
二:Servlet 連接數(shù)據(jù)庫的方式
1、一對一
即可每個Servlet實例都有直接的數(shù)據(jù)庫連接。
具體方式有:
◆在Servlet實例的每個處理方法中每次都調(diào)用數(shù)據(jù)庫連接,然后用此連接進行數(shù)據(jù)庫的查詢等操作,***關(guān)閉并釋放此連接。
◆在Servlet實例的初始化操作時就連接一個“長”的數(shù)據(jù)庫連接,直到Servlet實例在destroy時關(guān)閉并釋放此數(shù)據(jù)庫連接。
因為現(xiàn)在的數(shù)據(jù)庫操作主要是查詢,沒有對數(shù)據(jù)庫的增加、修改等操作,多用戶業(yè)務(wù)查詢、Web容器多線程同時對一個Servlet的同一個數(shù)據(jù)庫連接進行操作應(yīng)該會沒有數(shù)據(jù)操作同步等問題。
2、使用Web容器的數(shù)據(jù)源
這里主要是使用Web容器的數(shù)據(jù)源-數(shù)據(jù)庫連接池。
在理論上這種方式能提供***的性能。這是也是測試各種Web容器產(chǎn)品在數(shù)據(jù)庫連接池上實現(xiàn)的性能情況。
這里主要看Web容器的在各種應(yīng)用情況下的***化配置。
Servlet與數(shù)據(jù)源連接的實現(xiàn)方式:
Servlet直接從Web容器配置中取得數(shù)據(jù)源及其連接對象,然后通過此連接對象來操作數(shù)據(jù)庫。對于數(shù)據(jù)庫連接對象的管理由Web容器來管理。
三:Servlet性能測試要考慮的問題:
1、大數(shù)據(jù)量傳輸問題
大數(shù)據(jù)量通過Servlet實例從數(shù)據(jù)庫中取得并整理后,如何有效的傳輸?shù)娇蛻舳薎E,并且Servlet實例如何有效在Web容器中處理這些大數(shù)據(jù)量。
2、對各種JDBC版本的測試
即不同的數(shù)據(jù)庫使用其自己專用的JDBC來連接,在性能上應(yīng)該要好一些。
這里也可比較Weblogic Server中實現(xiàn)JDBC與各種數(shù)據(jù)庫(MSSQL、Oracle)專用的差別,從測試的結(jié)果看出Weblogic Server的技術(shù)實例以及是否真正做到了數(shù)據(jù)庫連接等處理的優(yōu)化了嗎。
3、Weblogic Server的優(yōu)化配置
3.1對象池配置
包括應(yīng)用邏輯處理對象的對象池化以及使用數(shù)據(jù)源時的數(shù)據(jù)庫連接對象池在各種具體應(yīng)用環(huán)境下的優(yōu)化配置。
3.2線程池配置
以上兩個方面涉及到對象池化和串行化處理的策略。
3.3Weblogic Server 的配置的各種參數(shù)的相應(yīng)情況下的配置
◆JAVA VM (JAVA 虛擬機)參數(shù)在各種應(yīng)用情況下的配置。
◆Weblogic Server 本身的各種參數(shù)配置
Servlet性能測試是一項步驟性強的工作,希望讀者在Servlet性能測試過程中要注意。
【編輯推薦】