部署
1.分散式配置
Master機Jmeter安裝目錄下/bin/jmeter.properties
remote_hosts修改為slave壓力機的IP
如 remote_hosts=10.0.4.18:1099,10.0.4.49:1099,10.0.4.42:1099,10.0.4.21:1099,10.0.4.7:1099
2.啟動jmeter服務
檢視是否已啟動jmeter服務
ps -ef|grep jmeter-server
若有命令的服務,就代表已啟動
若未啟動服務
全部機器下jmeter安裝目錄下/bin
nohup ./jmeter-server -Djava.rmi.server.hostname=(本機IP) &
如 nohup ./jmeter-server -Djava.rmi.server.hostname=192.168.1.94 &
重啟服務
重啟整個機器shutdown -r now
殺掉程式再重啟服務kill -9 (程式號)如上圖kill -9 5218 5220 5245 再重啟
3.壓測機優化
增加埠號
設定系統可用的socket埠號,每臺機器最多可用的埠號為65535,在測試機器上可能某些系統的埠已經被佔用,因此使用者可以設定可用的埠號段來增加可用的埠。如下例所示可用的埠號為1024至61000,那麼最多的可用埠號數目為59,976個。
路徑:/etc/sysctl.conf
配置連線情況
tcp_tw_reuse表示可以複用處於TIME_WAIT狀態的連線,對於在效能測試過程中可能產生的大量臨時的短連線,該選項可以重用連線,而不用等待連線的完全釋放,從而能提高支援的併發使用者數目。tcp_tw_recycle用於回收處於TIME_WAIT狀態的連線,也可以提高連線的使用率。
路徑:/etc/sysctl.conf
配置執行緒
棧空間主要用於分配在方法呼叫過程中壓入棧的方法呼叫的引數值等。棧空間的使用是和執行緒數目基本上成正比的,Java 8中預設每個執行緒會分配1MB的棧空間。測試指令碼(實際上取決於外掛的實現)並沒有遞迴等複雜的棧呼叫,可以把每個執行緒所需的棧空間調小。降低每個執行緒棧空間,通過加入下面的語句來解決,下圖中的配置的意思是每執行緒使用400KB的棧空間,比預設的1MB節省了資源。
路徑:/home/apache-jmeter-5.3/bin/jmeter