進入露天團隊後最先開始接觸的任務是壓力測試,這個過程中有了許多新的認識,目前這邊最大的挑戰是如何在資訊不足且只能使用有限資源的狀態下去完成任務。

關於壓力測試的心得分享

做壓力測試的目的是為了找出系統瓶頸及後續改善優化的可能性,而在不同環境下做的壓力測試會有完全不同的結果及不同判斷,在這個過程中我們需要去思考如何盡可能的去模擬出真實的使用情境。

  在這邊舉一個簡單的例子,開發功能時,通常會有一種優化效能的手段是透過快取的方式優化,假設一個功能做了個人化機制並且使用每3分鐘更新一次的快取去優化效能,我們在壓測時會需要注意的其中一個問題是如果只用一個使用者身份去做持續60秒每秒100次請求的測試是沒有太大意義,可參考下圖1-1示意圖,因快取的關係60秒總共6000次的請求除了第1次的請求外,在後面的5999次的回應都有極大機率可能來自於快取,這樣測出來的結果並沒有很大的參考價值。

實際上真實的情境應該會是多個不同的使用者同時進入,不會每次每個使用者都拿同一筆快取資料,因此我們會需要思考是否在測試情境中繞過快取去做這個壓測,好讓結果更貼近真實的情境。另外還有很多需要注意及思考的問題,例如使用一台伺服器或是多台伺服器的壓測結果、壓測時後面牽扯的資料來源需要監測的部份、又或者是最後壓測出來的結果應該如何解讀這些數據或是如何定義測出來什麼樣的數字算是合格值,這些都是值得去深入思考的問題。

結論

  在露天團隊好玩的事情是可以看到很龐大且有歷史的一套電商平台,跟過去在新創團隊不同的經驗是資料量的大小、平台使用流量的大小、環境上的限制等等,可以在各個任務實作的過程中看到許多不同的風景,要如何去面對這些挑戰及瞭解這背後的所有歷史過程需要非常有耐心,不過最後完成任務時也相對會有很大的成就感。

文章撰寫:Bruce 
責任編稿:忠編

那些年 我在露天學會的事

露天工程師分享
SQA的日常
壓測要考慮快取因素

延伸閱讀

Leave a Reply

Your email address will not be published. Required fields are marked *