雖然技術(shù)人員和技術(shù)主管們都希望提高應(yīng)用程序的性能,但團(tuán)隊(duì)不能因?yàn)檫^(guò)分關(guān)注性能而影響最終用戶的響應(yīng)時(shí)間。測(cè)量最終用戶真實(shí)響應(yīng)時(shí)間的唯一方法就是在全國(guó)或全球各地建立服務(wù)器,然后定期訪問(wèn)一個(gè)網(wǎng)頁(yè),如每隔15~30分鐘。這就是所謂的真實(shí)瀏覽器性能測(cè)試,也是種監(jiān)控Web應(yīng)用程序運(yùn)行狀況的長(zhǎng)期方法。它可以最有效地確定一個(gè)Web應(yīng)用程序的運(yùn)行性能。通常,這些過(guò)程由第三方公司執(zhí)行,他們會(huì)代表客戶在指定的位置執(zhí)行測(cè)試。 Keynote和 Gomez就是兩家能夠提供這種服務(wù)的著名公司。對(duì)于大多數(shù)公司而言,建設(shè)這種基礎(chǔ)架構(gòu)的成本可能太高了,而且需要投入大量的資源,但是回報(bào)甚微。因此,最好是使用一些專業(yè)公司提供的服務(wù),他們的核心競(jìng)爭(zhēng)力就是提供Web性能監(jiān)控和測(cè)試服務(wù)。
生產(chǎn)環(huán)境測(cè)試并不一定意味著要將新產(chǎn)品發(fā)布到生產(chǎn)環(huán)境中執(zhí)行,因?yàn)槿绻霈F(xiàn)問(wèn)題,則可能會(huì)破壞品牌形象。如果給現(xiàn)有網(wǎng)站引入一個(gè)新特性,或者修改其中一個(gè)重要部件,那么最好先導(dǎo)入一小部分流量將網(wǎng)站的新特性或修改部分交付這部分用戶使用。應(yīng)用程序在內(nèi)部通過(guò)了全面測(cè)試之后,最好要分析用戶流量對(duì)新應(yīng)用程序、網(wǎng)站或特性的影響。這種方法一定要謹(jǐn)慎使用,因?yàn)檫@個(gè)特性只讓少數(shù)用戶測(cè)試過(guò),這并不代表全負(fù)載運(yùn)行不會(huì)出現(xiàn)問(wèn)題。這種方法的效用主要在于,它可以為我們提供以下數(shù)據(jù)
只有在生產(chǎn)負(fù)載下才會(huì)發(fā)生的錯(cuò)誤和行為;
知名度數(shù)據(jù)有多少用戶愿意和喜歡使用這個(gè)新特性;
性能標(biāo)準(zhǔn)。
這種方法可以用流量匯集技術(shù)實(shí)現(xiàn),即讓負(fù)載均衡程序根據(jù)URL導(dǎo)入一部分流量。例如,包含新代碼的Web服務(wù)器或應(yīng)用服務(wù)器可能有個(gè)URL: /beta/player。該可能位于一個(gè)服務(wù)器群的10101000阿絡(luò)中。大多數(shù)負(fù)載均衡程序都可以配置為只允許一定比例的流量或會(huì)話進(jìn)入包含新應(yīng)用程序或模塊的應(yīng)用程序或Web服務(wù)器。
在受控的生產(chǎn)環(huán)境測(cè)試設(shè)置中收集到一些性能和日志數(shù)據(jù)之后,我們就可以分析這些數(shù)據(jù),將它們與內(nèi)部測(cè)試和合成測(cè)試的結(jié)果進(jìn)行比較。
如果測(cè)試對(duì)象不是現(xiàn)有網(wǎng)站制作的一個(gè)新特性,而是一個(gè)全新發(fā)布的網(wǎng)站,那么測(cè)試就更加重要了。許多新建或全新的網(wǎng)站都需要加入一個(gè)邀請(qǐng)頁(yè)面,然后邀請(qǐng)一部分用戶試用它們的服務(wù)。問(wèn)題在于,這些用戶是經(jīng)過(guò)選擇的,他們知道自己是Bea測(cè)試用戶,他們的作用是幫助開(kāi)發(fā)者修改錯(cuò)誤,協(xié)助最終正式發(fā)布。執(zhí)行密集內(nèi)容測(cè)試和少量生產(chǎn)環(huán)境測(cè)試,然后將生產(chǎn)使用及錯(cuò)誤數(shù)據(jù)與內(nèi)部測(cè)試數(shù)據(jù)進(jìn)行比較,這個(gè)過(guò)程完全相同;它們的區(qū)別在于新網(wǎng)站的訪問(wèn)限制是通過(guò)一個(gè)選擇加入列表來(lái)控制的,而不是使用自動(dòng)化的負(fù)載均衡和根據(jù)一些條件(如年齡)來(lái)識(shí)別用戶的標(biāo)記系統(tǒng)。
本文地址:http://m.blackside-inc.com//article/4527.html