1.安裝tomacate:
(1).下載地址https://tomcat.apache.org/download-80.cgi
(2).選擇tomacate9,zip方式安裝
進行安裝解壓,環境配置
對 CATALINA_HOME、Path 這 2 個系統變量分別設置
CATALINA_HOME=E:\Install\performance\apache-tomcat-9.0.62
Path=%CATALINA_HOME%\lib
%CATALINA_HOME%\lib\servlet-api.jar
%CATALINA_HOME%\lib\jsp-api.jar
(3)添加用戶,進入tomcat9的目錄的conf,我這里的路徑是E:\Install\performance\apache-tomcat-9.0.62\conf,
選擇“tomcat-users.xml”文件,打開文件后在最后 一行代碼的前面添加如下代碼:
<role rolename="manager-gui"/>
<role rolename="admin-gui"/>
<user username="admin" password="admin" roles="admin-gui"/>
<user username="tomcat" password="admin" roles="manager-gui"/>
添加完成后,保存再退出,
(4)啟動tomcat測試,打開tomcat目錄下的bin 文件夾,再雙擊startup來啟動tomcat,啟動成功會顯示 start Server startup in 8352 ms
(5)打開瀏覽器,在地址欄輸入http://localhost:8080 或 http://127.0.0.1:8080進行打開tomcat的主頁
注意:
(1)如果出現一閃而過的問題
在startup.bat中最后輸入pause
再次雙擊startup可看到報錯“The JRE_HOME environment variable is not defined correctly This environment”
原因(1):你安裝了兩個版本的jdk和jre,而且配置環境變量的時候,jdk和jre的版本還不相同
解決辦法:打開setclasspath.bat這個文件,重新配置的JAVA_HOME和JRE_HOME路徑
再次雙擊startup,啟動成功
原因(2)端口被占用
netstat -ano|findstr "8090”
tasklist|findstr "13832"
將E:\Install\performance\apache-tomcat-9.0.62\conf下的logging.properties文件中的第51行UTF-8改成 gbk
java.util.logging.ConsoleHandler.encoding = gbk
logging.properties修改保存后退出
再次雙擊startup,亂碼問題已解決
(3)端口重復的問題
tomacata的端口是8080,會與jenkins重復,處理辦法,修改tomacate的端口
E:\Install\performance\apache-tomcat-9.0.62\conf\server.xml中,修改第69行的port值,將8080改為8090
保存后再次啟動,打開瀏覽器,在地址欄輸入http://localhost:8090 或 http://127.0.0.1:8090進行打開tomcat的主頁
2.安裝nginder
(1)下載:
官網下載地址:https://github.com/naver/ngrinder/releases
下載war包(如果嫌上面那個下載速度實在太慢,可換成這個):https://sourceforge.net/projects/ngrinder/
把下載好的war包放到tomcat的webapps目錄下,并將war包改名為ROOT.war
執行java -jar ngrinder-controller-3.3.war --port 8090
- 打開 catalina.sh 或者 ,然后把下面的內容放在文件的開頭
JAVA_OPTS="-Xms600m -Xmx1024m -XX:MaxPermSize=200m" # for catalina.sh - 打開 catalina.bat 或者 ,然后把下面的內容放在文件的開頭
set JAVA_OPTS=-Xms600m -Xmx1024m -XX:MaxPermSize=200m # for catalina.bat
注意:
再次啟動start up報錯的話,可將start替換成run,執行start up的時候cmd中就會將錯誤日志的信息打印出來了
再次啟動startup.bat
查看端口占用情況
netstat -aon|findstr "8080"
查看端口“8080”被哪個應用占用,,繼續執行下面命令:
tasklist|findstr "2448"
按進程號關閉進程
taskkill /pid 2152
多個進程關閉格式為:
taskkill /pid 2152 /pid 1284
3.私有代理配置
以admin身份登錄的,所以可下載的代理包包含允許所有用戶共享> 代理的配置。
如果以非admin帳戶的身份登錄,鏈接將被更改為“下載私有代> 理”,其中包含允許代理只被當前用戶占用的配置。
(1)登陸成功后,點擊下載代理菜單
由上圖可知,代理安裝成功
將agent.conf復制粘貼到ngrinder_agent文件夾
在nGrinder的web頁面,點擊admin-->代理管理,可以查看到剛新增的代理,以及代理機器上的ip等信息
點擊代理的詳情可查看該代理的使用率,內存使用率情況
從nGrinder 3.3開始,控制器將自動批準所連接的代理
如果你在控制器中提供下面配置,那您必須自己批準代理。
controller.enable_agent_auto_approval=true
停止代理請執行stop_agent.bat
4.監控安裝
停止監控:stop_monitor.bat –o
5.管理
如果使用java -jar ngrinder-controller-X.X.war --port 8090
運行代理,你可以通過地址 http://localhost:8090訪問。
(1)有4種用戶類型(稱為角色)
admin, user, superuser, system
初始密碼與名稱相同
(2)日志
nGrinder攔截日志系統并寫入日志文件 ${NGRINDER_HOME}/logs/ngrinder.log
日志監控在非集群模式下可用。
6.腳本:
輸入地址,點擊開始測試,即可自動生成腳本
點擊驗證,可驗證腳本的可執行性
腳本編輯完畢后點擊保存并運行
可進行時間預約
在實際執行測試之前需要一些時間,因為每個測試都需要分發腳本和資源。
執行結束后,點擊查看詳情報告
可以在彈出窗口中看到更詳細的報告
Ramp-Up 這意味著在每個間隔中增加進程的數量。
Initial Sleep Time
Initial Processes 此屬性設置要啟動的工作進程的初始數量。
Processes Every 此屬性以毫秒為單位設置代理啟動新工作進程的時間間隔。
注意:
報錯:URL:service:jmx:rmi://[::]:13243/jndi/rmi://[::]:13243/jmxrmi is initiated.
monitor報錯:Currently monitor is running with pid 5912. Please stop it before run