阿里云Redis技術(shù)架構(gòu)演進(jìn)

本文是來自阿里巴巴夏周同學(xué)的分享惠拭,詳細(xì)介紹了阿里云Redis的發(fā)展和現(xiàn)狀债鸡。

Redis簡(jiǎn)介

Redis:Remote Dictionary Server江滨,Key-Value存儲(chǔ)系統(tǒng),優(yōu)點(diǎn)包括:

  • 易用性:豐富的數(shù)據(jù)結(jié)構(gòu)支持厌均,Module
  • 高性能:高校的數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)唬滑,全內(nèi)存操作
  • 可靠性:主備同步,持久化

阿里云Redis架構(gòu)

整體架構(gòu)

file

單節(jié)點(diǎn)->單機(jī)主備->集群->讀寫分離->同城容災(zāi)->異地多活

阿里云整體架構(gòu)包含6大支撐系統(tǒng):

  • HA控制系統(tǒng)

實(shí)例高可用探測(cè)模塊,用于探測(cè)監(jiān)聽Redis實(shí)例運(yùn)行情況晶密。

  • 日志收集系統(tǒng)

進(jìn)行云數(shù)據(jù)庫Redis版運(yùn)行情況的日志收集擒悬,包括實(shí)例慢查詢?nèi)罩荆L問日志等稻艰。

  • 監(jiān)控系統(tǒng)

進(jìn)行Redis實(shí)例性能監(jiān)控懂牧,信息的收集工作,目前包括基本信息組監(jiān)控尊勿,keys組信息監(jiān)控僧凤,string信息組監(jiān)控等核心信息

  • 在線遷移系統(tǒng)

當(dāng)實(shí)例所運(yùn)行的物理機(jī)出現(xiàn)故障,在線遷移系統(tǒng)會(huì)根據(jù)備份系統(tǒng)中的備份文件進(jìn)行實(shí)例重新搭建元扔,保證業(yè)務(wù)不受影響

  • 備份系統(tǒng)

針對(duì)Redis實(shí)例進(jìn)行備份處理躯保,并且將生成的備份文件存儲(chǔ)在OSS系統(tǒng)上進(jìn)行保存。目前Redis備份系統(tǒng)支持用戶自定義備份設(shè)置澎语,可臨時(shí)備份并且保存7天內(nèi)的備份文件吻氧。

  • 任務(wù)控制系統(tǒng)

Redis實(shí)例支持多中管理控制任務(wù),如創(chuàng)建實(shí)例咏连、變更配置盯孙、備份實(shí)例等,任務(wù)系統(tǒng)會(huì)根據(jù)用戶下發(fā)的操作指令祟滴,進(jìn)行靈活控制并且進(jìn)行任務(wù)跟蹤及出錯(cuò)管理振惰。

雙副本架構(gòu)

file
  • 適用場(chǎng)景:純緩存,數(shù)據(jù)持久化
  • 性能:8-10w qps
  • 鏈路:內(nèi)部SLB -> Redis
  • 訪問方式:兼容所有開源客戶端
  • SLA:2副本垄懂,HA高可用骑晶,秒級(jí)切換

集群雙副本架構(gòu)

file
  • 適用場(chǎng)景:數(shù)據(jù)量大,性能要求高
  • 性能:100w qps
  • 鏈路:內(nèi)部SLB -> Redis
  • 訪問方式:兼容所有開源客戶端
  • SLA:分片2副本草慧,高可用

讀寫分離架構(gòu)

file
  • 適用場(chǎng)景:讀多寫少桶蛔,超大Key,不要求強(qiáng)一致性
  • 優(yōu)勢(shì):
    讀寫能力線性擴(kuò)展漫谷;支持所有命令仔雷;對(duì)用戶透明

同城容災(zāi)

file
  • 適用場(chǎng)景:

數(shù)據(jù)可用性高

  • 優(yōu)勢(shì):
    用戶數(shù)據(jù)雙機(jī)房熱備,單機(jī)房故障舔示,業(yè)務(wù)無縫切換碟婆;機(jī)房恢復(fù)后,基于Binlog增量同步惕稻,防止流量雪崩

異地容災(zāi)+多活

file
  • 適用場(chǎng)景:
    多點(diǎn)讀寫竖共,就近讀寫

  • 優(yōu)勢(shì):
    容忍N(yùn)-1機(jī)房故障;最終一致俺祠;跨地域?yàn)?zāi)備

混合存儲(chǔ)

file
  • 適用場(chǎng)景:
    超大數(shù)據(jù)量公给,性能要求適中借帘,視頻直播類應(yīng)用,電商類應(yīng)用

  • 優(yōu)勢(shì):
    100%兼容Redis淌铐;冷熱數(shù)據(jù)分離姻蚓;超高性價(jià)比

阿里云Redis內(nèi)核優(yōu)化

file
  • 兼容Memcache協(xié)議
  • 高可用探測(cè)
  • AOF Binlog
  • 持久化系統(tǒng)優(yōu)化
  • 安全加密
  • IO、連接優(yōu)化
file

持久化系統(tǒng)改造:

  • 保留歷史AOF日志
  • 去除AOF Rewrite
  • 擴(kuò)展AOF日志信息
file
  • 全新的數(shù)據(jù)組織形式:RDB全量+歷史AOF
file
  • 基于AOF Binlog的同步機(jī)制
file

獨(dú)立的端口探測(cè)線程:

  • 單獨(dú)的事件
  • 主線程阻塞不受影響
  • 壞盤探測(cè)
  • 慢內(nèi)存探測(cè)
  • 快速容災(zāi)
file

AOF后臺(tái)異步寫優(yōu)化:

  • 新增biowrite模式
  • 輕量級(jí)別鎖隊(duì)列
  • bio線程進(jìn)行線程寫入操作
  • 提高性能匣沼,避免write慢對(duì)主線程的影響
file

支持Memcache協(xié)議:

  • 支持文本及二進(jìn)制協(xié)議,完全兼容
  • 復(fù)用Redis String對(duì)象存儲(chǔ)memcached
  • 復(fù)用原生Redis同步協(xié)議
  • 復(fù)用原生Redis持久化機(jī)制
  • 新版本Memcache支持掃描捂龄、備份释涛、更多統(tǒng)計(jì)信息
file

混合存儲(chǔ)優(yōu)化:

  • 內(nèi)存中保持所有key和熱數(shù)據(jù)
  • RocksDB中存冷數(shù)據(jù)
  • 熱數(shù)據(jù)性能和Redis一致
  • 100%兼容Redis
  • 數(shù)據(jù)換出異步寫RocksDB,不阻塞主線程
  • 單實(shí)例支持TB+數(shù)據(jù)存儲(chǔ)
file

網(wǎng)絡(luò)IO多線程優(yōu)化倦沧。

關(guān)注我的公眾號(hào)唇撬,后臺(tái)回復(fù)【JAVAPDF】獲取200頁面試題!
5萬人關(guān)注的大數(shù)據(jù)成神之路展融,不來了解一下嗎窖认?
5萬人關(guān)注的大數(shù)據(jù)成神之路,真的不來了解一下嗎告希?
5萬人關(guān)注的大數(shù)據(jù)成神之路扑浸,確定真的不來了解一下嗎?

歡迎您關(guān)注《大數(shù)據(jù)成神之路》
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末燕偶,一起剝皮案震驚了整個(gè)濱河市喝噪,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌指么,老刑警劉巖酝惧,帶你破解...
    沈念sama閱讀 206,723評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異伯诬,居然都是意外死亡晚唇,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,485評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門盗似,熙熙樓的掌柜王于貴愁眉苦臉地迎上來哩陕,“玉大人,你說我怎么就攤上這事赫舒∶弱猓” “怎么了?”我有些...
    開封第一講書人閱讀 152,998評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵号阿,是天一觀的道長并鸵。 經(jīng)常有香客問我,道長扔涧,這世上最難降的妖魔是什么园担? 我笑而不...
    開封第一講書人閱讀 55,323評(píng)論 1 279
  • 正文 為了忘掉前任届谈,我火速辦了婚禮,結(jié)果婚禮上弯汰,老公的妹妹穿的比我還像新娘艰山。我一直安慰自己,他們只是感情好咏闪,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,355評(píng)論 5 374
  • 文/花漫 我一把揭開白布曙搬。 她就那樣靜靜地躺著,像睡著了一般鸽嫂。 火紅的嫁衣襯著肌膚如雪纵装。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,079評(píng)論 1 285
  • 那天据某,我揣著相機(jī)與錄音橡娄,去河邊找鬼。 笑死癣籽,一個(gè)胖子當(dāng)著我的面吹牛挽唉,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播筷狼,決...
    沈念sama閱讀 38,389評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼瓶籽,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了埂材?” 一聲冷哼從身側(cè)響起棘劣,我...
    開封第一講書人閱讀 37,019評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎楞遏,沒想到半個(gè)月后茬暇,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,519評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡寡喝,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,971評(píng)論 2 325
  • 正文 我和宋清朗相戀三年糙俗,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片预鬓。...
    茶點(diǎn)故事閱讀 38,100評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡巧骚,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出格二,到底是詐尸還是另有隱情劈彪,我是刑警寧澤,帶...
    沈念sama閱讀 33,738評(píng)論 4 324
  • 正文 年R本政府宣布顶猜,位于F島的核電站沧奴,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏长窄。R本人自食惡果不足惜滔吠,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,293評(píng)論 3 307
  • 文/蒙蒙 一纲菌、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧疮绷,春花似錦翰舌、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,289評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至只冻,卻和暖如春庇麦,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背属愤。 一陣腳步聲響...
    開封第一講書人閱讀 31,517評(píng)論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留酸役,地道東北人住诸。 一個(gè)月前我還...
    沈念sama閱讀 45,547評(píng)論 2 354
  • 正文 我出身青樓,卻偏偏與公主長得像涣澡,于是被迫代替她去往敵國和親贱呐。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,834評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容

  • 一入桂、Redis高可用概述 在介紹Redis高可用之前奄薇,先說明一下在Redis的語境中高可用的含義。 我們知道抗愁,在w...
    空語閱讀 1,593評(píng)論 0 2
  • 企業(yè)級(jí)redis集群架構(gòu)的特點(diǎn) 海量數(shù)據(jù) 高并發(fā) 高可用 要達(dá)到高可用馁蒂,持久化是不可減少的,持久化主要是做災(zāi)難恢復(fù)...
    lucode閱讀 2,193評(píng)論 0 7
  • 1.1 資料 蜘腌,最好的入門小冊(cè)子沫屡,可以先于一切文檔之前看,免費(fèi)撮珠。 作者Antirez的博客沮脖,Antirez維護(hù)的R...
    JefferyLcm閱讀 17,034評(píng)論 1 51
  • Nosql概述 在介紹Redis之前,首先先要介紹Nosql的概念芯急。 互聯(lián)網(wǎng)架構(gòu)發(fā)展 在90年代的時(shí)候勺届,計(jì)算機(jī)訪問...
    COKIDCC閱讀 682評(píng)論 0 1
  • 1. redis 持久化的意義 redis的數(shù)據(jù)全部在內(nèi)存中,如果突然宕機(jī)娶耍,數(shù)據(jù)就會(huì)全部丟失免姿,因此必須有一種機(jī)制來...
    CoderJed閱讀 3,687評(píng)論 2 11