騰訊云數(shù)據(jù)庫(kù)Redis助力百萬(wàn)企業(yè)遠(yuǎn)程辦公
受疫情影響,多數(shù)企業(yè)員工目前無(wú)法回到寫字樓辦公,學(xué)生推遲開(kāi)學(xué),穩(wěn)定高效的遠(yuǎn)程辦公和直播授課成為2020年的開(kāi)年剛需。騰訊從1月24日開(kāi)始向全國(guó)免費(fèi)開(kāi)放可支持300人同時(shí)在線會(huì)議的“騰訊會(huì)議”,直至疫情結(jié)束。央視新聞聯(lián)播對(duì)此也給予了報(bào)道。
發(fā)布不久的騰訊會(huì)議瞬間成為了一款國(guó)民會(huì)議軟件,用戶呈幾何級(jí)爆發(fā)涌入,從1月29日開(kāi)始到2月6日,騰訊會(huì)議每天都在進(jìn)行資源擴(kuò)容,日均擴(kuò)容云主機(jī)接近1.5萬(wàn)臺(tái),8天總共擴(kuò)容超過(guò)10萬(wàn)臺(tái)云主機(jī),共涉及超百萬(wàn)核的計(jì)算資源投入,騰訊會(huì)議在2月10日當(dāng)天扛住了近100倍于日常的會(huì)議數(shù)量。
那么,騰訊會(huì)議是如何做到在擴(kuò)容期間用戶無(wú)感知,依然能夠高清流暢無(wú)卡頓的進(jìn)行會(huì)議呢?那不得不提到一大神兵——騰訊云Redis數(shù)據(jù)庫(kù)(TencentDB for Reids)。在請(qǐng)求數(shù)暴增的情況下,作為會(huì)議列表緩存、會(huì)議信息存儲(chǔ)的Redis數(shù)據(jù)庫(kù)也進(jìn)行了快速擴(kuò)展,騰訊云數(shù)據(jù)庫(kù)Redis通過(guò)提供大規(guī)模的集群產(chǎn)品,為騰訊會(huì)議提供穩(wěn)定的高并發(fā)低延遲的緩存服務(wù),操作起來(lái)也極為簡(jiǎn)便,騰訊會(huì)議的運(yùn)維人員僅需要在控制臺(tái)點(diǎn)擊一個(gè)按鈕,即可操作完成100倍業(yè)務(wù)規(guī)格增長(zhǎng)的彈性擴(kuò)展。
千萬(wàn)QPS的Redis單集群訪問(wèn)性能
為應(yīng)對(duì)海量用戶請(qǐng)求,在百萬(wàn)核計(jì)算業(yè)務(wù)的架構(gòu)中,保障業(yè)務(wù)規(guī)??焖僭鲩L(zhǎng)的同時(shí)能持續(xù)提供穩(wěn)定的性能和快速響應(yīng),引入緩存系統(tǒng)是一個(gè)行之有效的方法。
在大規(guī)模的用戶場(chǎng)景下,騰訊會(huì)議選擇使用騰訊云Redis作為緩存服務(wù),將預(yù)約會(huì)議的內(nèi)容、參會(huì)人員信息等存儲(chǔ)到Redis,保障了用戶在預(yù)定、發(fā)起、參與會(huì)議等過(guò)程中系統(tǒng)能快速響應(yīng)。騰訊云集群架構(gòu)的Redis服務(wù),僅單集群可提供4TB存儲(chǔ)容量和10萬(wàn)-1000萬(wàn)級(jí)別的并發(fā)訪問(wèn)性能,并且能保障在99.99%的水位線內(nèi)提供1ms響應(yīng)時(shí)延。
騰訊云Redis單集群峰值請(qǐng)求超過(guò)17億次/分鐘
30分鐘內(nèi)不停機(jī)無(wú)損擴(kuò)容數(shù)十倍
在8天時(shí)間內(nèi)騰訊會(huì)議完成了100萬(wàn)核云服務(wù)器擴(kuò)展的同時(shí),Redis集群僅在半小時(shí)以內(nèi)就高效完成了數(shù)十倍規(guī)模的擴(kuò)容,單集群的擴(kuò)容流程后臺(tái)處理時(shí)間不超過(guò)30分鐘,同時(shí)保持了100%的系統(tǒng)可用性,在整個(gè)資源擴(kuò)展過(guò)程中,騰訊會(huì)議服務(wù)始終保持著大規(guī)模的在線運(yùn)行,海量用戶無(wú)感知,依然能夠高清流暢無(wú)卡頓的進(jìn)行會(huì)議。
值得驕傲的是,騰訊云Redis是一款具備無(wú)損擴(kuò)容能力的Redis數(shù)據(jù)庫(kù)產(chǎn)品。
那么,是什么樣的底層設(shè)計(jì)使得Redis服務(wù)能夠進(jìn)行如此平滑的無(wú)損彈性擴(kuò)展呢?
騰訊云Redis自動(dòng)化的資源管理和裝箱系統(tǒng)保障了資源的快速分配, 同時(shí)提供了標(biāo)準(zhǔn)化的控制臺(tái)界面和API接口,使得運(yùn)維人員可以快速進(jìn)行資源擴(kuò)展,僅需在控制臺(tái)點(diǎn)擊一個(gè)按鈕,即可操作完成100倍業(yè)務(wù)規(guī)格增長(zhǎng)的彈性擴(kuò)展。
為更好的為用戶提供服務(wù),騰訊云數(shù)據(jù)庫(kù)Redis在國(guó)內(nèi)率先實(shí)現(xiàn)了實(shí)時(shí)平滑無(wú)損彈性擴(kuò)容。目前大多數(shù)云廠商的Redis數(shù)據(jù)庫(kù)在跨機(jī)擴(kuò)容時(shí)候會(huì)連接斷開(kāi)和1分鐘內(nèi)的業(yè)務(wù)只讀,在使用自建以及其他云廠商提供的Redis服務(wù)時(shí),企業(yè)只能依賴業(yè)務(wù)層實(shí)現(xiàn)平滑擴(kuò)展,或者停服來(lái)維護(hù)擴(kuò)展,這對(duì)需要提供7*24小時(shí)不間斷客戶服務(wù)的企業(yè)是致命的。
要實(shí)現(xiàn)無(wú)損擴(kuò)容有兩大核心難題需要解決,第一個(gè)是要解決社區(qū)遷移工具遷移大Key阻塞系統(tǒng)訪問(wèn),甚至是宕機(jī)的問(wèn)題 。騰訊云團(tuán)隊(duì)通過(guò)自研的數(shù)據(jù)搬遷工具不但解決了卡頓的問(wèn)題,數(shù)據(jù)搬遷的速度也得到了成倍的提升。其次需要提供數(shù)據(jù)搬運(yùn)過(guò)程中正確的標(biāo)記數(shù)據(jù)狀態(tài),搬遷后可以重新路由難題,騰訊云Redis通過(guò)自研Proxy定期刷新以及響應(yīng)路由重定向命令解決了數(shù)據(jù)路由的難題。
經(jīng)過(guò)多年的快速發(fā)展,騰訊云Redis已經(jīng)在電商、游戲等行業(yè)服務(wù)了眾多用戶,為數(shù)萬(wàn)家用戶提供了安全穩(wěn)定的云服務(wù)。拿某電商客戶來(lái)說(shuō),自上線以來(lái),迅速積累億級(jí)用戶,UGC社區(qū)業(yè)務(wù)和B2C電商業(yè)務(wù)均發(fā)展迅猛,高效提升用戶訪問(wèn)體驗(yàn)和購(gòu)物體驗(yàn)尤為重要。騰訊云的云緩存Redis服務(wù)無(wú)需安裝,一鍵使用,自動(dòng)擴(kuò)容,輕松處理并發(fā)海量數(shù)據(jù),專業(yè)團(tuán)隊(duì)全程監(jiān)控。有效幫助該客戶應(yīng)對(duì)業(yè)務(wù)規(guī)模的爆發(fā)增長(zhǎng)以及各類大促活動(dòng)的順利舉行。