來源:Redislabs
成都創(chuàng)新互聯(lián)公司成立與2013年,先為冠縣等服務建站,冠縣等地企業(yè),進行企業(yè)商務咨詢服務。為冠縣企業(yè)網站制作PC+手機+微官網三網同步一站式服務解決您的所有建站問題。作者:Shabih Syed
翻譯:Kevin?(公眾號:中間件小哥)
為了讓系統(tǒng)運行更流暢,又避免 Knights Capital 在 2012 年犯下的 4.6 億美元的錯誤,一家領先的金融市場制造商的單日計算機系統(tǒng)故障給 IT 社區(qū)提供了一些教訓,包括系統(tǒng)組件的設計、實現(xiàn),和DevOps 的重要性。在這個由兩部分組成的博客中,我將分享一些想法,以幫助開發(fā)團隊保持其持續(xù)集成和持續(xù)部署(CI / CD)流程的安全, 特別的,我將展示如何使用特性開關和特性上下文來來管理持續(xù)更新,如何創(chuàng)建一個容易訪問的日志數(shù)據庫,一個可以快速查找的錯誤信息數(shù)據庫--所有這些都借助 Redis。想象一下,您是一名工程總監(jiān),管理著一個由多個開發(fā)人員組成的團隊,這些開發(fā)人員負責具有數(shù)千個并發(fā)用戶的Web 應用程序的前端。您的應用程序已部署在 AWS 中,您需要每周推送新的版本,公司無法承受因Web 應用程序帶來的任何破壞,因此如果發(fā)生錯誤,您的團隊必須立即回滾到最近更新的版本。您必須快速識別出問題代碼,讓開發(fā)人員對其進行修復,并在后續(xù)對外發(fā)布,而且產品團隊總是要求盡快提供新功能,因此您如何迅速對錯誤做出反應,并以業(yè)務需求的速度上線新功能?
在 2019 年游戲開發(fā)者大會(GDC)上,我參加了一個主題為“大規(guī)模調試:每月活躍用戶超過 7 千萬的跨平臺穩(wěn)定性”的議程,由Redis Labs 客戶 Roblox 和 Chris Swiedler 共同主持,描述了一種可以可以支撐每周更新的軟件發(fā)布過程??死锼狗窒砹怂膱F隊如何在 Roblox 上修改應用程序行為而不改變代碼,這樣可以減少現(xiàn)網問題的發(fā)生。他們使用特性標記,這與 Martin Fowler 的“特性開關”方法非常相似。
新功能發(fā)布的示例 CI / CD 流程
讓我們分解圖 2,其中概述了可以作為CI / CD 和分類過程的一部分的方法:
1.?開發(fā)人員開始研究新功能;
2.?開發(fā)人員和產品管理團隊決定哪些場景將使用新功能(可能僅針對部分用戶);
3.?開發(fā)人員提出了一種切換策略,其中新代碼和舊代碼由“ if and else”塊分隔;
4.?一旦開發(fā)人員完成新功能代碼的開發(fā),他們便將Canary 版本發(fā)布到生產環(huán)境(借助 DevOps);
5.?人們在使用該應用程序中,根據其角色和切換,可以執(zhí)行新代碼或者舊代碼;
6.?如果出現(xiàn)問題,可以將切換開關設置為false,以將所有用戶轉移到舊代碼;
7.?一段時間后,該功能將升級為正式發(fā)布版本(GA)。
此策略可有助于:
1.?將canary 版本發(fā)布到生產中,以實時流量和真實用戶(而不是模擬)進行測試;
2.?在不回滾任何代碼的情況下即時禁用功能;
3.?通過切換特性開關啟用功能或功能組合;
4.?可通過特性開關中的元數(shù)據輕松識別(對于大型開發(fā)團隊而言)負責的開發(fā)人員。但是可以將這種方法前進一步,以幫助分布式開發(fā)團隊安全地發(fā)布新功能,并在需要時以最小的影響回滾新功能。
Redis Enterprise 的 CI / CD
您需要快速,持久的數(shù)據庫時,Redis Enterprise 非常適合。其功能包括:
具有永久網絡存儲的完全托管的 Redis 數(shù)據庫即服務,可防止實例數(shù)據存儲丟失;
跨多個 RedisEnterprise 群集創(chuàng)建的無沖突可復制的數(shù)據庫,這些集群位于各地的不同數(shù)據中心,這提供高可用的雙活和主備部署。
強大的搜索功能(通過 RediSearch 模塊)可跨數(shù)據庫集群運行搜索查詢。
為了讓您的 CI/ CD 分流過程更加有效,在本系列的下一部分中,我將提供更多詳細信息和代碼段來具體展示如何使用 Redis 構建特性開關、特性上下文、錯誤數(shù)據庫和日志數(shù)據庫。
原文鏈接:https://redislabs.com/blog/using-redis-to-optimize-feature-rollouts-and-error-triaging/
更多優(yōu)質中間件技術資訊/原創(chuàng)/翻譯文章/資料/干貨,請關注“中間件小哥”公眾號!
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。