bin/results)放在SSD分區。free -h;dd if=/dev/zero of=/swapfile bs=1G count=10;chmod 600 /swapfile;mkswap /swapfile;swapon /swapfile;/etc/fstab):echo '/swapfile swap swap defaults 0 0' >> /etc/fstab。vm.swappiness參數控制系統使用Swap的傾向(默認60,值越高越易用Swap)。建議設置為10(減少Swap使用,優先使用物理內存):echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf
sysctl -p
jmeter或jmeter.sh啟動腳本):export JVM_ARGS="-Xms2g -Xmx4g -XX:MaxMetaspaceSize=512m"
-Xms2g:初始堆內存2GB(避免啟動時頻繁擴容);-Xmx4g:最大堆內存4GB(不超過系統內存的70%,預留空間給系統和其他進程);-XX:MaxMetaspaceSize=512m:元空間最大大?。ū苊庠臻g溢出)。-XX:+UseG1GC
-Xloggc:/path/to/gc.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps
jmeter -n -t /path/to/test_plan.jmx -l /path/to/results.jtl
View Results Tree、Aggregate Report)會占用大量內存,調試時可用,正式測試需關閉。若需收集結果,使用Simple Data Writer或Backend Listener(配合InfluxDB+Grafana實時監控)。CSV Data Set Config讀取外部數據文件(如用戶名、密碼),避免硬編碼參數;Recycle on EOF(循環讀?。┖?code>Stop thread on EOF(EOF時停止線程);jmeter -n -t test.jmx -l result.jtl --quiet
jmeter-server(./bin/jmeter-server);jmeter.properties,設置remote_hosts(Slave節點IP列表,如remote_hosts=192.168.1.101:1099,192.168.1.102:1099);jmeter -n -t test.jmx -r(-r表示啟動所有Slave節點)。jmeter.save.saveservice.output_format=xml并開啟壓縮)或使用二進制格式(jmeter.save.saveservice.output_format=binary)。Throughput Shaping Timer控制TPS(每秒事務數),避免瞬間高并發壓垮服務器;Groovy代替Beanshell:Groovy性能優于Beanshell(尤其對于復雜邏輯),建議在JSR223 Sampler中選擇Groovy語言;${__Random()}、${__time()},比BeanShell更輕量。Transaction Controller將多個相關請求合并為一個事務(如“登錄流程”包含“訪問登錄頁→提交用戶名密碼→獲取token”),減少采樣器數量,提高測試效率。If Controller、Switch Controller等邏輯控制器,避免復雜的條件判斷消耗CPU。top(查看CPU、內存占用)、vmstat(查看系統整體性能)、iostat(查看磁盤I/O)、netstat(查看網絡流量);Backend Listener配合InfluxDB+Grafana實時監控TPS、響應時間、錯誤率;result.jtl),分析響應時間、錯誤率(如Error%過高需檢查接口或腳本);jstat監控GC情況(如jstat -gcutil <pid> 1000,每秒輸出一次GC統計信息),判斷是否需要調整堆內存或GC策略。setenforce 0 # 臨時關閉
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config # 永久關閉
systemctl停止不需要的服務(如firewalld、postfix):systemctl stop firewalld
systemctl disable firewalld
systemctl stop postfix
systemctl disable postfix
bin/results目錄(存儲測試結果),避免數據堆積占用磁盤空間:rm -rf /path/to/jmeter/bin/results/*