#杂七杂八常识
压力测试,可以使用go的hey工具,需要先安装golang环境,然后htop和iftop分别是用来,监控硬件性能和网络性能的,如果要安装的话,需要先安装好,额外的软件库,参考[[centos 7 额外软件库]]
yum install -y golang htop iftop
安装完成后,输入htop可以监控硬件性能
![[Pasted image 20250523161626.png]]
iftop可以监控网络性能相关:
![[Pasted image 20250523161715.png]]
然后,可以通过go环境,安装hey压力测试工具,再顺便,设置一下go到linux的环境变量,使能(一共3条指令)
go install github.com/rakyll/hey@latest
echo 'export PATH=$PATH:$HOME/go/bin' >> ~/.bashrc
source ~/.bashrc
这里是测试,发送性能监控数据,通过hey指令
hey -n 100000 -c 500 -m POST \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "appId=10000" \
-d "uid=player_1234" \
-d "isEditor=No" \
-d "sys=Android 13" \
-d "model=SM-G991B" \
-d "device=Galaxy S21" \
-d "cpuCoreCount=8" \
-d "gpuMemorySizeMB=8096" \
-d "currentFPS=57" \
-d "targetFPS=60" \
-d "ver=2.1.3" \
-d "scene=level_5" \
-d "luaMemoryMB=32.1" \
-d "totalMemoryMB=6144" \
-d "usedMemoryMB=2873" \
-d "score=85" \
-d "graphicsDeviceName=Adreno 660" \
-d "processorType=Snapdragon 888" \
-d "fpsData=player_1234,57,60,2024-05-21T14:30:00|player_1234,55,60,2024-05-21T14:30:01" \
http://192.168.1.177:82/collect
指令解析参考:
![[Pasted image 20250523162718.png]]
复制后,通过xshell打开虚拟机,直接粘贴即可
![[Pasted image 20250523162047.png]]
![[Pasted image 20250523162219.png]]
直接敲击回车即可
![[Pasted image 20250523162237.png]]
处理完成后,会生成一份性能报告:
![[Pasted image 20250523162324.png]]
性能报告解析:
![[Pasted image 20250523162426.png]]
![[Pasted image 20250523162434.png]]
QPS计算:
![[Pasted image 20250523162542.png]]
服务端逻辑,是分割字符,然后写入数据库的
![[Pasted image 20250523163435.png]]
查询数据,一共发起了10万次请求写入,然后总数据量20万,是符合预期的
![[Pasted image 20250523163631.png]]
SELECT COUNT(*) FROM `performance_2025-05-23`;
![[Pasted image 20250523163557.png]]