web服务器的性能体现,Web应用服务器的性能问题分析
在開發(fā)web項目中,比較常見的web應(yīng)用服務(wù)器有Tomcat、Weblogic、WebSphere等。它們是互聯(lián)網(wǎng)應(yīng)用系統(tǒng)的基礎(chǔ)架構(gòu)軟件,也叫”中間件”,負(fù)責(zé)處理動態(tài)在頁面請求,并為應(yīng)用提供了名字、事務(wù)、安全、消息、數(shù)據(jù)訪問等。
當(dāng)我們對項目做性能測試時,我們?nèi)绾胃玫乇O(jiān)控這些web應(yīng)用服務(wù)器,并診斷出性能問題呢?下以提供了對Tomcat和Weblogic的一些性能監(jiān)控分析方法:
1.Tomcat性能監(jiān)控分析
Tomcat是一個免費(fèi)的開放源代碼的web應(yīng)用服務(wù)器軟件,主要用來支持運(yùn)行Java Servlet/JSP。Tomcat運(yùn)行時占用的系統(tǒng)資源小,擴(kuò)展性好,支持負(fù)載平衡和郵件服務(wù)等開發(fā)web應(yīng)用系統(tǒng)常用的功能,而且它還不斷的改進(jìn)和完善中,使用Tomcat作為web應(yīng)用服務(wù)器,在系統(tǒng)應(yīng)用性能上有很大幫助,以下介紹幾種監(jiān)控Tomcat性能的方法:
(1)Tomcat自帶的監(jiān)控功能
使用過Tomcat的人大概都知道,它附帶了一個監(jiān)控頁面,先修改配置文件/conf目錄下的tomcat-users.xml文件,為監(jiān)控的用戶添加權(quán)限,并且需要添加一個名為“manager-gui”的角色,如下:
(2)用LambdaProbe監(jiān)控Tomcat
網(wǎng)上下載probe壓縮文件(下載地址:http://www.lambdaprobe.org/),解壓后可以看到有個probe.war文件,接著需要修改兩個文件
a、修改tomcat下conf/ tomcat-users.xml文件,添加如下代碼:
b、修改tomcat下bin/Catalina.bat文件,添加如下代碼:
set CATALINA_OPTS=-Xms512m -Xmx1024m -Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.port=29001 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false
啟動tomcat后,訪問http://localhost:8088, 輸入用戶名:probe,密碼123456,登錄后,在頁面中“WAR file to deploy”點擊“瀏覽”將probe.war文件發(fā)布到tomcat應(yīng)用中
(3)LoadRunner編寫腳本實現(xiàn)Tomcat性能監(jiān)控
LR不支持直接監(jiān)控Tomcat,但是可以在VUGen中編寫腳本來獲取性能數(shù)據(jù),其實是編寫大量的關(guān)聯(lián)函數(shù)web_reg_sava_param()及l(fā)r_user_data_point函數(shù),例如:
double atof(const char *string);
extern char * strtok(char * token, const char * delimiter);
collectMetrics(){
int countP, counts, countF, countF, countR, countK;
int numValues;
static int loggedVersionInfo = FALSE;
lr_save_string(“127.0.0.1”,”ServerName”);
web_set max_html_param_len(65565);
web_set_user(“admin”,”admin”,”{ServerName}”);
lr_start_transaction(“monitor tomcat”);
web_reg_save_param(“JVMFreeMemory”,”LR=Free memory”,”RB=MB”,”O(jiān)rd=1”,LAST);
省略…………這里添加多個監(jiān)控指標(biāo)
Lr_end_transaction(“monitor tomcat”,LR_AUTO);
寫入Tomcat JVM度量數(shù)據(jù)
Lr_user_data_point(“Tomcat JVM Free memory”,atof(lr_eval_string(“{JVMFreeMemory}”)));
}
然后在Run-time中設(shè)置數(shù)據(jù)收集的間隔“pacing”,最好設(shè)置在5-10s,最后在Controller中設(shè)置腳本運(yùn)行,場景運(yùn)行完畢后,在Analysis分析結(jié)果圖標(biāo)中添加“User Defined Data Points”,查看收集到的Tomcat性能數(shù)據(jù)。
(4)JMX監(jiān)控Tomcat
使用JMX監(jiān)控Tomcat,需要編寫JMX提供接口的實現(xiàn)類,該接口是任何java程序都可以調(diào)用訪問的,編寫java程序來收集Tomcat性能數(shù)據(jù).
(5)優(yōu)化JVM提高Tomcat性能
a.修改Tomcat啟動/最大時的運(yùn)行內(nèi)存來監(jiān)控性能指標(biāo)的影響,即修改bin/Catalina.bat文件;
JAVA_OPTS=-Xms512m -Xmx1024m
b.修改conf目錄下server.xml文件maxThreads的值來調(diào)整Tomcat的最大連接線程數(shù);
c.同上,修改connectionTimeout的值來調(diào)整連接超時數(shù);
d.同上,修改acceptCount的值來調(diào)整最大排隊數(shù);
2.Weblogic中間件監(jiān)控性能分析
a.在weblogic控制臺頁面調(diào)整Session策略;
b.JDBC連接數(shù)監(jiān)控及參數(shù)的調(diào)整,如Initial Capacity、Maximum Capcity等;
c.JVM監(jiān)控分析,可設(shè)置JVM啟動時的參數(shù);
總結(jié)
以上是生活随笔為你收集整理的web服务器的性能体现,Web应用服务器的性能问题分析的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 所有计算机都可以安装win7,几种安装w
- 下一篇: 隐藏ajax的调用地址,c# – ASP