在一般情況下,升級(jí)服務(wù)器端應(yīng)用,需要將應(yīng)用源碼或程序包上傳到服務(wù)器,然后停止掉老版本服務(wù),再啟動(dòng)新版本。但是這種簡(jiǎn)單的發(fā)布方式存在兩個(gè)問(wèn)題,一方面,在新版本升級(jí)過(guò)程中,服務(wù)是暫時(shí)中斷的,另一方面,如果新版本有BUG,升級(jí)失敗,回滾起來(lái)也非常麻煩,容易造成更長(zhǎng)時(shí)間的服務(wù)不可用。
成都一家集口碑和實(shí)力的網(wǎng)站建設(shè)服務(wù)商,擁有專(zhuān)業(yè)的企業(yè)建站團(tuán)隊(duì)和靠譜的建站技術(shù),10年企業(yè)及個(gè)人網(wǎng)站建設(shè)經(jīng)驗(yàn) ,為成都上千家客戶(hù)提供網(wǎng)頁(yè)設(shè)計(jì)制作,網(wǎng)站開(kāi)發(fā),企業(yè)網(wǎng)站制作建設(shè)等服務(wù),包括成都營(yíng)銷(xiāo)型網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),同時(shí)也為不同行業(yè)的客戶(hù)提供成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、外貿(mào)網(wǎng)站建設(shè)的服務(wù),包括成都電商型網(wǎng)站制作建設(shè),裝修行業(yè)網(wǎng)站制作建設(shè),傳統(tǒng)機(jī)械行業(yè)網(wǎng)站建設(shè),傳統(tǒng)農(nóng)業(yè)行業(yè)網(wǎng)站制作建設(shè)。在成都做網(wǎng)站,選網(wǎng)站制作建設(shè)服務(wù)商就選創(chuàng)新互聯(lián)。為了解決這些問(wèn)題,人們研究出了多種發(fā)布策略,下面我們一一介紹。
所謂藍(lán)綠部署,是指同時(shí)運(yùn)行兩個(gè)版本的應(yīng)用,如上圖所示,藍(lán)綠部署的時(shí)候,并不停止掉老版本,而是直接部署一套新版本,等新版本運(yùn)行起來(lái)后,再將流量切換到新版本上。但是藍(lán)綠部署要求在升級(jí)過(guò)程中,同時(shí)運(yùn)行兩套程序,對(duì)硬件的要求就是日常所需的二倍,比如日常運(yùn)行時(shí),需要10臺(tái)服務(wù)器支撐業(yè)務(wù),那么使用藍(lán)綠部署,你就需要購(gòu)置二十臺(tái)服務(wù)器。
滾動(dòng)發(fā)布能夠解決掉藍(lán)綠部署時(shí)對(duì)硬件要求增倍的問(wèn)題。
所謂滾動(dòng)升級(jí),就是在升級(jí)過(guò)程中,并不一下子啟動(dòng)所有新版本,是先啟動(dòng)一臺(tái)新版本,再停止一臺(tái)老版本,然后再啟動(dòng)一臺(tái)新版本,再停止一臺(tái)老版本,直到升級(jí)完成,這樣的話(huà),如果日常需要10臺(tái)服務(wù)器,那么升級(jí)過(guò)程中也就只需要11臺(tái)就行了。
但是滾動(dòng)升級(jí)有一個(gè)問(wèn)題,在開(kāi)始滾動(dòng)升級(jí)后,流量會(huì)直接流向已經(jīng)啟動(dòng)起來(lái)的新版本,但是這個(gè)時(shí)候,新版本是不一定可用的,比如需要進(jìn)一步的測(cè)試才能確認(rèn)。那么在滾動(dòng)升級(jí)期間,整個(gè)系統(tǒng)就處于非常不穩(wěn)定的狀態(tài),如果發(fā)現(xiàn)了問(wèn)題,也比較難以確定是新版本還是老版本造成的問(wèn)題。
為了解決這個(gè)問(wèn)題,我們需要為滾動(dòng)升級(jí)實(shí)現(xiàn)流量控制能力。
灰度發(fā)布也叫金絲雀發(fā)布,起源是,礦井工人發(fā)現(xiàn),金絲雀對(duì)瓦斯氣體很敏感,礦工會(huì)在下井之前,先放一只金絲雀到井中,如果金絲雀不叫了,就代表瓦斯?jié)舛雀摺?br/>
在灰度發(fā)布開(kāi)始后,先啟動(dòng)一個(gè)新版本應(yīng)用,但是并不直接將流量切過(guò)來(lái),而是測(cè)試人員對(duì)新版本進(jìn)行線(xiàn)上測(cè)試,啟動(dòng)的這個(gè)新版本應(yīng)用,就是我們的金絲雀。如果沒(méi)有問(wèn)題,那么可以將少量的用戶(hù)流量導(dǎo)入到新版本上,然后再對(duì)新版本做運(yùn)行狀態(tài)觀察,收集各種運(yùn)行時(shí)數(shù)據(jù),如果此時(shí)對(duì)新舊版本做各種數(shù)據(jù)對(duì)比,就是所謂的A/B測(cè)試。
當(dāng)確認(rèn)新版本運(yùn)行良好后,再逐步將更多的流量導(dǎo)入到新版本上,在此期間,還可以不斷地調(diào)整新舊兩個(gè)版本的運(yùn)行的服務(wù)器副本數(shù)量,以使得新版本能夠承受越來(lái)越大的流量壓力。直到將100%的流量都切換到新版本上,最后關(guān)閉剩下的老版本服務(wù),完成灰度發(fā)布。
如果在灰度發(fā)布過(guò)程中(灰度期)發(fā)現(xiàn)了新版本有問(wèn)題,就應(yīng)該立即將流量切回老版本上,這樣,就會(huì)將負(fù)面影響控制在最小范圍內(nèi)。
脈沖云的部署管理可以輕松實(shí)現(xiàn)上述的帶有流量管理功能的灰度發(fā)布。正常編輯應(yīng)用信息后點(diǎn)擊保存,然后脈沖云會(huì)提示直接升級(jí)或灰度發(fā)布。
直接升級(jí)就是使用一般的滾動(dòng)升級(jí),點(diǎn)擊灰度發(fā)布后可以人工干預(yù)升級(jí)過(guò)程,進(jìn)行流量控制。
選擇灰度發(fā)布后,就會(huì)呈現(xiàn)灰度發(fā)布控制面板。
在這個(gè)控制面板上,可以拖拉滑塊,快速調(diào)整新舊版本的運(yùn)行副本數(shù)量,同時(shí)也可以按百分比,將流量導(dǎo)入到新版本上。此外,還可以通過(guò)匹配HTTP Header,指定個(gè)別用戶(hù)的流量到新版本上。
除了匹配用戶(hù)流量的HTTP請(qǐng)求頭,還可以直接指定匹配請(qǐng)求頭中的Cookie信息,匹配規(guī)則支持精確匹配、包含、正則、前綴、后綴等,甚至還允許反向匹配。
當(dāng)確認(rèn)新版本運(yùn)行無(wú)誤后,就可以點(diǎn)擊 完成升級(jí) 按鈕,就會(huì)將流量全部切換到新版本上,并且銷(xiāo)毀掉所有老版本應(yīng)用。如果新版本出了問(wèn)題,可以點(diǎn)擊 取消升級(jí) 按鈕,立即將流量切回老版本,并銷(xiāo)毀掉新版本應(yīng)用。
在新版本應(yīng)用發(fā)布時(shí),為了服務(wù)器不停機(jī)升級(jí),使用灰度發(fā)布策略,在灰度發(fā)布開(kāi)始時(shí),使用HTTP Header 匹配指定測(cè)試人員的流量到新版本上,然后當(dāng)新版本內(nèi)部測(cè)試通過(guò)后,可以再按百分比,將用戶(hù)流量一點(diǎn)一點(diǎn)導(dǎo)入到新版本中,比如先導(dǎo)入10%觀察一下運(yùn)行情況,然后再導(dǎo)入20%,如此累加,直到將流量全部導(dǎo)入到新版本上,最后完成升級(jí),如果期間發(fā)現(xiàn)問(wèn)題,就立即取消升級(jí),將流量切回到老版本。
運(yùn)用灰度發(fā)布,就再也不需要加班到深夜進(jìn)行停機(jī)升級(jí)了,在白天就可以放心大膽地、安全地發(fā)布新版本。
參考DevOps平臺(tái):脈沖云開(kāi)發(fā)平臺(tái)
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線(xiàn),公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿(mǎn)足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。
網(wǎng)頁(yè)名稱(chēng):什么是灰度發(fā)布,以及灰度發(fā)布A/B測(cè)試-創(chuàng)新互聯(lián)
標(biāo)題URL:http://jinyejixie.com/article6/dpogog.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站、營(yíng)銷(xiāo)型網(wǎng)站建設(shè)、品牌網(wǎng)站制作、定制網(wǎng)站、網(wǎng)站建設(shè)、網(wǎng)站營(yíng)銷(xiāo)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容