當前位置: 妍妍網 > 碼農

Apipost一鍵壓測高效能PHP框架Webman

2024-05-25碼農

概述

Apipost是一款整合了API文件、偵錯、Mock、測試等功能的一體化協作工具。它支持模擬POST、GET、PUT等常見HTTP請求,並且支持團隊協作,可以直接生成並匯出介面文件。簡單來說,Apipost可以被視為Postman、Swagger和Mock的結合體,旨在提高研發團隊各個角色的工作效率。

官網地址:https://www.apipost.cn

背景

在軟體開發過程中,介面偵錯完成後,驗證其在高並行情況下的效能表現是至關重要的一步。然而,這一環節往往需要研發團隊與測試團隊的緊密協作,頻繁的溝通和協調可能會耗費不少時間和精力。幸運的是,Apipost平台推出的一鍵壓測功能,為這一痛點提供了有效的解決方案。

實踐

並行結果很容易外界因素影響,壓測時需要盡量減少外界因素影響。影響壓測結果外界因素有本機控制代碼數限制,dns解析速度,網路品質,伺服端連線數限制等等。

例如使用 1w 並行, 很容易出現超過本機最大控制代碼數限制(一般最大限制1024), 超過控制代碼數限制的請求會因為控制代碼數受限導致連線失敗。

因此選擇合適並行數對測試介面效能非常重要,並非並行數越大越好。並行數建議先在 10 100 500 1000 左右分別測試下,如果失敗率小於1%,再考慮逐步增加並行數量。只有增加並行每秒請求數量能持續增加才是健康使用方式.

使用方法

在介面列表中選擇介面後,點選一鍵壓測選項。配置並行數,選擇壓測模式根據壓測模式輸入持續時間或輪次,點選開始壓測即可開始測試。

註:使用壓測功能需要開啟壓測服務。

以上是開始壓測日誌選項,開啟後壓測結束會生成壓測日誌檔,壓測日誌會展示每輪測試情況。

結果分析

測試時會試試展示每秒請求數,結束後會生成測試報告,可以對壓測結果進行分析。

壓測結果計算方式

圖片來源:apipost官方

下載壓測日誌結果

17:18:30 seq:6 work:0 code:200 cost:66.0 msg:ok
17:18:30 seq:9 work:3 code:200 cost:68.0 msg:ok
17:18:30 seq:2 work:5 code:200 cost:72.0 msg:ok
17:18:30 seq:5 work:1 code:200 cost:75.0 msg:ok
17:18:30 seq:7 work:2 code:200 cost:94.0 msg:ok
...
17:18:40 seq:818 work:3 code:200 cost:110.0 msg:ok
17:18:40 seq:819 work:4 code:200 cost:93.0 msg:ok
17:18:40 seq:816 work:5 code:200 cost:143.0 msg:ok

伺服端

更多了解官方文件:https://wiki.apipost.cn/docs/最佳实践/接口压测实践