真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

生產(chǎn)引流測(cè)試

“生產(chǎn)引流測(cè)試”的方法,這種方法的本質(zhì)就是 把生產(chǎn)系統(tǒng)發(fā)生的一切復(fù)制到測(cè)試系統(tǒng)上來(lái)。這種測(cè)試方法適合有大量用戶的系統(tǒng),如電商網(wǎng)站、電信計(jì)費(fèi)系統(tǒng)、大型控制系統(tǒng)(如機(jī)場(chǎng)調(diào)度系統(tǒng))等。這么做有兩個(gè)好處:

創(chuàng)新互聯(lián)公司2013年至今,先為秦安等服務(wù)建站,秦安等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢(xún)服務(wù)。為秦安企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。

1.能夠讓系統(tǒng)在真正上線以前就能夠真正經(jīng)受實(shí)踐檢驗(yàn)。多年來(lái)的測(cè)試實(shí)踐告訴我們,測(cè)試永遠(yuǎn)是抽樣活動(dòng),即使經(jīng)過(guò)很大強(qiáng)度的 充分測(cè)試,很多大型系統(tǒng)上線后仍然馬上會(huì)產(chǎn)生這樣那樣的問(wèn)題,有時(shí)候這些問(wèn)題往往是致命的。

2.不會(huì)象灰度發(fā)布那樣拿部分用戶當(dāng)小白鼠,引發(fā)部分客戶不滿;其實(shí)要實(shí)現(xiàn)灰度發(fā)布在一定程度上會(huì)增加系統(tǒng)架構(gòu)復(fù)雜性,不是哪個(gè)公司都能玩得轉(zhuǎn)。

當(dāng)然生產(chǎn)引流測(cè)試必須滿足一個(gè)前提: 那就是已經(jīng)有了生產(chǎn)系統(tǒng),在特性升級(jí)或者技術(shù)重構(gòu)的時(shí)候使用這招。 ^_^|||

生產(chǎn)引流測(cè)試的用法一般有如下幾種:

1.非功能測(cè)試(主要是性能測(cè)試),看看將生產(chǎn)系統(tǒng)的壓力引到測(cè)試系統(tǒng)后,測(cè)試系統(tǒng)會(huì)不會(huì)產(chǎn)生性能問(wèn)題。這種測(cè)試往往非常有效,因?yàn)?,我們做性能測(cè)試也是非常有局限性的:場(chǎng)景選取不可能跟真實(shí)用戶帶來(lái)的壓力完全一致;網(wǎng)絡(luò)、硬件環(huán)境也可能不一樣;某些超大型網(wǎng)站根本沒(méi)辦法模擬那么大的壓力,只能依靠縮量模型做測(cè)試并估算真實(shí)的性能。

非功能測(cè)試不太關(guān)注業(yè)務(wù)邏輯的正確性,因此我們可以從網(wǎng)絡(luò)層進(jìn)行生產(chǎn)引流,這樣效率更高,模型更加簡(jiǎn)單。目前有一個(gè)非常不錯(cuò)的工具tcpcopy,非常適合web類(lèi)產(chǎn)品。它的工作原理可見(jiàn)下圖:

生產(chǎn)引流測(cè)試

部署一個(gè)agent在onlineserver上。從tcp層截取數(shù)據(jù)包,然后生成向Testserver的請(qǐng)求數(shù)據(jù)包(通過(guò)換網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)包的包頭), 這樣壓力就傳導(dǎo)到了Testserver上。Testserver的響應(yīng)數(shù)據(jù)包被 Assistant server截獲,截獲后拆包,刪除包中內(nèi)容(減小部署在Online Server端agent的壓力),封包,回復(fù)給Online Server上的agent(TCP協(xié)議要求必須有來(lái)有回)。Tcpcopy在網(wǎng)易,淘寶,去哪兒等很多公司都得到了非常好的應(yīng)用,目前國(guó)外也有很多用戶開(kāi)始使用這個(gè)工具了,如果大家有興趣可以查看作者在Github上的頁(yè)面 https://github.com/wangbin579/tcpcopy 或者作者的博客: http://my.csdn.net/wangbin579 很贊作者王斌!

2.功能測(cè)試

對(duì)于功能測(cè)試,單純的使用tcpcopy就有些不足了。 因?yàn)楣δ軠y(cè)試關(guān)注業(yè)務(wù)邏輯,我們一般要對(duì)結(jié)果內(nèi)容進(jìn)行比對(duì),而不是簡(jiǎn)單的拋棄。而在網(wǎng)絡(luò)層進(jìn)行內(nèi)容比對(duì)代價(jià)是非常大的,有時(shí)候是不可完成的任務(wù),如非web類(lèi)產(chǎn)品;另外,不同的技術(shù)架構(gòu)造成了某些內(nèi)容是無(wú)法簡(jiǎn)單在網(wǎng)絡(luò)層復(fù)制的,如某些加密信道傳輸?shù)膬?nèi)容、包含了認(rèn)證信息的內(nèi)容、對(duì)目標(biāo)機(jī)器信息有依賴(lài)的內(nèi)容。這樣, 我們就需要在應(yīng)用層想辦法,而不是在網(wǎng)絡(luò)層。一般我們會(huì)在應(yīng)用層加一個(gè)代理將請(qǐng)求和響應(yīng)進(jìn)行復(fù)制,這個(gè)代理根據(jù)被測(cè)系統(tǒng)的技術(shù)架構(gòu)不同而不同,比如web服務(wù)器,可以搞一個(gè)反向代理來(lái)做這件事兒;銀行、電信用的多的Message Queue 可以采取pubsub的模式;可以在交易中間件、企業(yè)總線上做一些改造,只要系統(tǒng)設(shè)計(jì)的不是太難搞,辦法總是有的。

下面給出一個(gè)最簡(jiǎn)單的模型:它描述了 技術(shù)重構(gòu)的系統(tǒng)(功能上無(wú)變化)進(jìn)行生產(chǎn)引流測(cè)試的思路。

實(shí)時(shí)對(duì)比:

生產(chǎn)引流測(cè)試

在上圖中:
紅色箭頭為生產(chǎn)請(qǐng)求數(shù)據(jù)。
藍(lán)色箭頭為生產(chǎn)響應(yīng)數(shù)據(jù)。
綠色箭頭為測(cè)試響應(yīng)數(shù)據(jù)。
代理有2個(gè)作用:復(fù)制用戶到生產(chǎn)系統(tǒng)的請(qǐng)求,引流到測(cè)試系統(tǒng);復(fù)制生產(chǎn)系統(tǒng)的響應(yīng)發(fā)送給對(duì)比器。
對(duì)比器的作用:比對(duì)同一請(qǐng)求生產(chǎn)系統(tǒng)和測(cè)試系統(tǒng)的結(jié)果是否一致,將結(jié)果生成報(bào)表。
比對(duì)是實(shí)時(shí)的。
請(qǐng)求和響應(yīng)必須附加流水號(hào):這樣做比對(duì)的時(shí)候才會(huì)不那么費(fèi)勁(應(yīng)對(duì)異步的情況),否則
生產(chǎn)系統(tǒng)同測(cè)試系統(tǒng)的初始狀態(tài)必須一致,不然做比對(duì)也會(huì)很困難:舉例來(lái)說(shuō),電商網(wǎng)站中某種書(shū)的庫(kù)存數(shù)。
 
實(shí)時(shí)比對(duì)的好處是:能夠在出現(xiàn)bug的第一秒就發(fā)現(xiàn)它。但它也存在問(wèn)題和局限性:生產(chǎn)系統(tǒng)與測(cè)試系統(tǒng)直接相連可能給生產(chǎn)系統(tǒng)帶來(lái)風(fēng)險(xiǎn), 實(shí)際上在很多生產(chǎn)安全要求較高的公司,這么做是不被允許的。
 
延時(shí)對(duì)比:
生產(chǎn)引流測(cè)試
與實(shí)時(shí)比對(duì)相比,延時(shí)比對(duì)模型的變化如下:
代理的作用變成了紀(jì)錄生產(chǎn)日志,有時(shí)候能夠直接利用系統(tǒng)的日志模塊數(shù)據(jù),不用分流,性能壓力減少了很多。
多了一個(gè)存儲(chǔ)模塊存儲(chǔ)日志(有可能復(fù)用系統(tǒng)現(xiàn)有日志模塊)
多了一個(gè)對(duì)比引擎,它的作用是:從存儲(chǔ)取出成對(duì)的請(qǐng)求-響應(yīng)的數(shù)據(jù),將請(qǐng)求數(shù)據(jù)發(fā)送到測(cè)試系統(tǒng),接收測(cè)試系統(tǒng)的響應(yīng),與存儲(chǔ)中的響應(yīng)結(jié)果比對(duì),然后生成報(bào)表。
引擎可能要做比較復(fù)雜的日志分析工作:請(qǐng)求-響應(yīng)配對(duì),清洗無(wú)效數(shù)據(jù),做數(shù)據(jù)篩選等。
由于做了隔離,基本上杜絕了測(cè)試系統(tǒng)污染生產(chǎn)系統(tǒng)的風(fēng)險(xiǎn)。
延時(shí)比對(duì)也有很多缺點(diǎn):有很多技術(shù)架構(gòu),實(shí)時(shí)復(fù)制比記log再還原要付出的成本小很多;發(fā)現(xiàn)缺陷的時(shí)間點(diǎn)出現(xiàn)延遲。
 
對(duì)于 業(yè)務(wù)升級(jí)類(lèi)型的 系統(tǒng),業(yè)務(wù)流程或者計(jì)算邏輯發(fā)生了變化, 使用生產(chǎn)系統(tǒng)數(shù)據(jù)進(jìn)行比對(duì)的難度就大大增強(qiáng)了,但還是可以做,模型如下:
生產(chǎn)引流測(cè)試
這張圖跟上張基本一樣,唯一的不同就是比對(duì)引擎變成了“加強(qiáng)型”比對(duì)引擎。
加強(qiáng)的地方表現(xiàn)在:對(duì)業(yè)務(wù)不同點(diǎn)進(jìn)行處理,使得比對(duì)工作能夠順利進(jìn)行。
有一些技術(shù)架構(gòu)下,對(duì)不同點(diǎn)進(jìn)行處理非常困難。例如,web應(yīng)用,一個(gè)表單多了一項(xiàng)。你有可能要重寫(xiě)http請(qǐng)求的內(nèi)容。
 
小結(jié):是否要利用生產(chǎn)引流測(cè)試說(shuō)到底還是一個(gè)工程型問(wèn)題。 一定要看它的投入產(chǎn)出比。

網(wǎng)頁(yè)題目:生產(chǎn)引流測(cè)試
文章轉(zhuǎn)載:http://weahome.cn/article/ijcope.html

其他資訊

在線咨詢(xún)

微信咨詢(xún)

電話咨詢(xún)

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部