最近在阿裡雲搭了一個部落格,用阿裡雲提供的PTS對網站做了一下壓測,現在把壓測的步驟分享出來,有類似做網站或外貿電商的也可以參考下(産品部署步驟省略,隻有壓測和性能分析)。
所用雲産品如下(長期使用選擇包年可享受一定官網優惠):
雲産品(華北5) | 規格 |
---|---|
RDS(MySQL5.6高可用) | 1C2G |
SSL | 免費證書 |
CDN | 按量 |
OSS | |
雲監控 | 免費版 |
PTS | 新使用者體驗版 |
一、确定要測試的頁面和通路流程
本次要測試的是網站首頁和打開第一條産品頁的通路速度,如下所示首頁:

詳情頁:
二、進入PTS管理控制台
1、添加場景
2、添加被測URL
我們是模拟使用者通路首頁後,再進入到詳情頁,是以要添加兩個URL(如果有多個頁面,可以按通路頁面先後順序進行添加)
3、選擇施壓配置
選擇施壓配置,本次選擇的是“并發模式”
- 并發模式:是指虛拟并發使用者數,從業務角度,也可以了解為同時線上的使用者數。
- RPS模式:(Requests Per Second)是指每秒請求數。從服務端的角度出發,直接衡量系統的吞吐能力,免去并發到 RPS 的繁瑣轉化,一步到位。
具體差別可參考官方文檔:
https://help.aliyun.com/document_detail/70480.html在這裡,我們設定最大并發為100,遞增百分比為預設,持續時長為5分鐘,考慮到首頁通路人數可能會多于詳情頁,故設定“最大并發權重”為50和30,儲存配置。
4、調試場景、儲存去壓測
可根據業務通路情況,在晚上或業務低峰時進行壓測。
5、生成測試任務
6、開始壓測,壓測完成會生成壓測報告。
三、雲監控篇
壓測開始後,到雲監控看資源的使用狀态,我主要關心的是CPU、記憶體和網絡.
在主機監控中找到我們壓測的ECS
壓測開始後,我們可以看到CPU和系統平均負責都呈上升趨勢。
在同一個頁面繼續往下拉,我們可以看到網絡和TCP連接配接數都呈上升趨勢。
剛才通路了一下網站,雖然CPU跑到100%,但網站還是以能正常通路的。
四、資料庫篇
還好當時把資料庫單獨放在RDS中,如果資料庫和網站都放在一台伺服器上,CPU跑到100%後,我估計業務就直接崩潰了。
在CloudDBA“性能趨勢”處,和雲監控看到的ECS的資源類似的,TPS/QPS連接配接數都呈上升趨勢。
CloudDBA官方文檔:
https://help.aliyun.com/document_detail/96125.html“實時性能”看到QPS、連接配接數和網絡流量都維持在較高的水位線
“會話管理”可以看到目前資料庫的程序ID,哪些處于活動、睡眠狀态
當有大量sleep或者異常使用者、來源通路時可以直接在這裡進行展示。
如果發現查詢變慢,而ECS的CPU占用率不高時,我們可以在“智能優化”中看下檢視RDS系統的負載,發現是哪些SQL導緻查詢時間過長,哪些SQL執行次數最多(執行次數較多、時間長的可以考慮添加索引),也可以把SQL語句拿到CloudDBA進行試跑,從中發現需要優化的地方。
下載下傳診斷報告:
https://help.aliyun.com/document_detail/96129.html五、壓測結束
我們可以看到高資源占用情況馬上就好轉了。
此時我們肯定想看下壓測這麼久,結果到底怎麼樣了,如果項目有測評要求,可以将報告下載下傳下來優化調優,如果隻是像我一樣做下大概了解,心裡有數,則可直接線上檢視。
壓測報告:
https://help.aliyun.com/document_detail/65304.html我們可以看到用了ECS和RDS做業務分離後,雖然CPU資源占用較高,但請求傳回都是200(200為正常,其它為異常)。