溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

5 Tips when Scaling Your Website or App to 1,000,000 Users

發(fā)布時(shí)間:2020-07-08 23:37:43 來源:網(wǎng)絡(luò) 閱讀:406 作者:流光漏洞 欄目:軟件技術(shù)

   負(fù)載測試是確保您的網(wǎng)站或應(yīng)用程序在重負(fù)載下不會崩潰的方法。 當(dāng)進(jìn)行負(fù)載測試時(shí),您需要做的基本事情之一是擴(kuò)展您正在測試的虛擬用戶數(shù)量。 根據(jù)您的業(yè)務(wù)需求,您可能需要擴(kuò)展到龐大的數(shù)字,甚至可能達(dá)到1,000,000個用戶。

   這里有5個方法可以幫助你進(jìn)行性能測試擴(kuò)展:

  

 1. Plan in advance

   許多情況下,用戶數(shù)量巨大增長是可以預(yù)期的。 例如,預(yù)計(jì)在大型游戲(2月5日,星期日)的食品交付地點(diǎn)或直播電視網(wǎng)站的當(dāng)天,零售店的黑色星期五,流行音樂開放票購買選擇的日子,交通高峰 節(jié)日或電影,發(fā)布新應(yīng)用或網(wǎng)站的第一周,等等。

   因此,我們建議您至少提前幾個月開始對大用戶量進(jìn)行負(fù)載測試。 (擔(dān)心你離開你的負(fù)載測試太晚了?我們可以幫助)。 確保您有足夠的時(shí)間運(yùn)行測試,找到您的斷點(diǎn),解決任何需要修復(fù)的瓶頸,然后再次運(yùn)行測試,以確保一切正常。 您應(yīng)該測試的用戶數(shù)量取決于您的業(yè)務(wù)需求和您的期望。

   無論如何,我們建議您將負(fù)載測試集成到連續(xù)集成過程中。

  

 2. Record your test scenario

   記錄您的用戶場景是創(chuàng)建測試的最簡單和最有用的方法。 雖然JMeter提供錄音選項(xiàng),最有用和易于使用的記錄器是BlazeMeter Chrome擴(kuò)展,是免費(fèi)的。

                   5 Tips when Scaling Your Website or App to 1,000,000 Users


   記錄負(fù)載測試場景:

     - 從Chrome商店將recorder添加到Chrome

     - 鍵入測試名稱

     - 點(diǎn)擊“記錄”按鈕,并瀏覽您想測試的場景。

     - 點(diǎn)擊“停止”按鈕。

     - 如有必要,進(jìn)行編輯- 導(dǎo)出到.jmx并上傳到JMeter,或單擊“播放”在CA BlazeMeter中打開它。


5 Tips when Scaling Your Website or App to 1,000,000 Users




   建議對任何的負(fù)載測試都要進(jìn)行測試場景記錄。 但是,擴(kuò)展到高人數(shù)需要一些時(shí)間,因此您需要簡化盡可能多的進(jìn)程。 recorder就是這樣做的。



  

 3. Remove all unnecessary data from your test script

   負(fù)載測試會占用了大量的資源,但大規(guī)模擴(kuò)展后,會占用更多的資源。 為了確保您的資源不會因?yàn)闊o關(guān)內(nèi)容的瓶頸而發(fā)生崩潰。 為此,請刪除任何不必要的數(shù)據(jù)。

   例如,我們假設(shè)您不會在JMeter上運(yùn)行大規(guī)模測試(可能在單個機(jī)器上支持幾百 - 1K個用戶),因此刪除偵聽器(但在JMeter上運(yùn)行測試時(shí)請務(wù)必保留)。

   5 Tips when Scaling Your Website or App to 1,000,000 Users



 4. Adjust the test gradually

  初次進(jìn)行大量用戶的測試可能會成功,也可能會導(dǎo)致系統(tǒng)崩潰。 原因可能是本身的測試環(huán)境沒有搭建好,或者因?yàn)榇罅坑脩簟?/p>

   以上情況,你想要找出系統(tǒng)何時(shí)和為什么崩潰。 我們會建議您逐步開展測試,并適度調(diào)整虛擬用戶數(shù)量。

     - 通過在JMeter 上首先設(shè)置 1個線程的(虛擬用戶)啟動本地測試,以確保測試正常工作。

     - 手動將線程組中的用戶數(shù)更改為幾十或幾百。 如果正常運(yùn)行,請繼續(xù)添加用戶。

   5 Tips when Scaling Your Website or App to 1,000,000 Users


    - 達(dá)到一定數(shù)量的用戶后,本地計(jì)算機(jī)可能無法處理負(fù)載。 如果您仍然需要增加用戶,您可以使用CA BlazeMeter(在云中的一種JMeter)等工具繼續(xù)擴(kuò)展。

    - 在SandBox模式下運(yùn)行測試,以確保正常工作。

    - 逐步擴(kuò)展到您需要的用戶數(shù)量。 達(dá)到單個控制臺可用的最大數(shù)量后,請轉(zhuǎn)到CA BlazeMeter的多重測試選項(xiàng),并復(fù)制測試,直到達(dá)到所需的用戶數(shù)量。 在這里閱讀更多。

  通過逐漸添加用戶,您可以確定您的中斷點(diǎn)并識別瓶頸,如高內(nèi)存使用或不正確的DB使用。 修復(fù)瓶頸并繼續(xù)測試,直到達(dá)到高于您決定處理的用戶數(shù)量的斷點(diǎn)。

  

 

 5. Constantly analyze test results and engine health

  當(dāng)進(jìn)行負(fù)載測試時(shí),CUP和內(nèi)存的使用率是我們看到的兩個最重要的指標(biāo)。 你需要確定系統(tǒng)不能逾越的使用級別,但是如果CPU達(dá)到75%和85%的內(nèi)存,你就達(dá)到了你不能逾越的紅線。

   要監(jiān)視系統(tǒng)的運(yùn)行狀況,請查看負(fù)載測試系統(tǒng)提供的報(bào)告,并分析不同的KPI以及它們之間的相關(guān)性。 CA BlazeMeter提供了Engine Health報(bào)告,但您也可以在Taurus(一個開源測試自動化工具)上分析這些參數(shù)。

   5 Tips when Scaling Your Website or App to 1,000,000 Users


   在每次運(yùn)行測試后,實(shí)時(shí)分析結(jié)果非常重要。 這些確保您全面了解您的系統(tǒng)的能力,弱點(diǎn)和瓶頸。 它們還讓您看到在更改系統(tǒng)時(shí)會發(fā)生什么,例如添加功能或更改系統(tǒng)的體系結(jié)構(gòu)。 最后,他們讓你看看你所做的修改是否真的有幫助。

   確定系統(tǒng)能承受重負(fù)載,對于保持用戶量是非常重要的。 我們希望這些方法對于您擴(kuò)展高用戶量能有所幫助。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI