壓力測試要知道的事(ㄧ)

2022/03/28閱讀時間約 1 分鐘
在一個功能完成後,比較嚴謹的方式會進行壓力測試來驗證是否能夠符合業務上的需求,在測試的時候是否能夠準確的測試就變得相當重要。

物理限制

我們在做測試的時候,很容易會忘記現實世界中存在著各種物理的限制。像是網路連線速度會受到伺服器機房的位置影響、使用者不一定是平均的在同樣的時間點打開網站等等。
這表示,我們在進行壓力測試的時候除了單純的「流量」或者「人數」這樣的目標之外,還需要加入像是網路延遲、使用者操作習慣這類資訊才能夠更加精確的評估出正確的數值。

考慮限制的規劃

因為我們在做壓力測試時會有物理上的限制,因此在測試的時候就需要格外小心。舉例來說,我們要避免使用同一個機房的伺服器來測試,得到的結果可能是伺服器能負荷的極限而非壓力測試,因為在同一個機房的傳輸速度是遠快於正常使用者。
除此之外,我們也要考量到伺服器能負荷的壓力並不是線性的,也就是說即使我們將伺服器的硬體增加一倍也不一定可以服務一倍的使用者,而會受到我們軟體的設計、資源分配跟設定等等因素影響。

比想像更複雜

在了解到這些知識之前,壓力測試對我來說就像是單純的將「流量」塞到伺服器驗證即可,然而當我學到這些知識之後才發現,需要併入計算的資訊遠超想像。
很多時候,就像寫程式最困難的地方所說,大多數時候都要靠知識跟經驗對當下的狀況判斷,該如何進行壓力測試也是像這樣的情況。同時,跟普通的程式設計不同的地方在於,我們還需要加入「商業」上的考量才足夠,我們目前針對測試的討論都還僅限於可以透過技術、硬體一定程度解決的問題,如果要知道「目標」是如何的,那麼就還需要了解在商業上的目標才足夠。

封面圖片使用 UnsplashNorbert Kundrak 的作品,有想聽的主題可以透過匿名問卷告訴我,想了解專業的技術主題可以到弦而時習之找找靈感。
贊助支持創作者,成為他繼續創作的動力吧!
我是軟體開發的求道者蒼時弦也,主要使用猶如賢者之石一般的 Ruby 語言,期望能夠在軟體開發這條路上找出一個能讓每個人都享受撰寫程式樂趣的方法,並且讓世界上能有更多優秀的程式被設計出來。
軟體工程師逐漸變成一個熱門的職業,當我們進入這個職業之後應該要具備怎樣的技能才會在工作上更加順利呢?這系列的專欄會分享日常工作中的經驗以及一些案例分析,讓我們一起努力成為一位更優秀的軟體工程師吧!
如果要發表留言,請先登入註冊會員
打造你的創作天地
在這裡尋找共鳴,與方格子的 35 萬格友分享觀點與生活。
領取見面禮
只要設定追蹤作者,即可享有 48小時
Premium 閱讀權限