問題:我現在有一個任務,去測試一個web程序性的性能,需要實現極限測試,也就是模擬多人在線操作,大概要求是2000人同時操作。
思路:我現在是通過java中的concurrent包里的ExecutorService executor = Executors.newScheduledThreadPool(1000);來實現的,模擬同時有1000個人進行發送數據。但是同事說這個并不是真正意義上的并發測試,也只是一個一個發送請求。
請問:更合適的并發測試程序嗎,要求是不能使用測試軟件,類似于jmeter這樣的。
1 回答

幕布斯7119047
TA貢獻1794條經驗 獲得超8個贊
通過jmeter、loadrunner這樣的工具壓測會比較方便,不過Executors.newScheduledThreadPool(1000)
也可以,而且更容易定制自己的測試邏輯。如果Web程序的部署架構比較復雜(例如有流量保護、負載均衡等),最好是在多臺機器上跑測試(這些機器也最好是通過公網來訪問),來模擬真實環境的情況。
關鍵是,測試期間要監控Web程序的性能指標,例如線程數(注意是被壓測的Web程序的線程數,而不是測試程序的線程數)、連接數(可以用netstat
去看)、CPU、內存、每個請求的響應時間等等。
添加回答
舉報
0/150
提交
取消