阿里云Redis技术架构演进

本文是来自阿里巴巴夏周同学的分享,详细介绍了阿里云Redis的发展和现状。

Redis简介

Redis:Remote Dictionary Server,Key-Value存储系统,优点包括:

  • 易用性:丰富的数据结构支持,Module
  • 高性能:高校的数据结构设计,全内存操作
  • 可靠性:主备同步,持久化

阿里云Redis架构

整体架构

file

单节点->单机主备->集群->读写分离->同城容灾->异地多活

阿里云整体架构包含6大支撑系统:

  • HA控制系统

实例高可用探测模块,用于探测监听Redis实例运行情况。

  • 日志收集系统

进行云数据库Redis版运行情况的日志收集,包括实例慢查询日志,访问日志等。

  • 监控系统

进行Redis实例性能监控,信息的收集工作,目前包括基本信息组监控,keys组信息监控,string信息组监控等核心信息

  • 在线迁移系统

当实例所运行的物理机出现故障,在线迁移系统会根据备份系统中的备份文件进行实例重新搭建,保证业务不受影响

  • 备份系统

针对Redis实例进行备份处理,并且将生成的备份文件存储在OSS系统上进行保存。目前Redis备份系统支持用户自定义备份设置,可临时备份并且保存7天内的备份文件。

  • 任务控制系统

Redis实例支持多中管理控制任务,如创建实例、变更配置、备份实例等,任务系统会根据用户下发的操作指令,进行灵活控制并且进行任务跟踪及出错管理。

双副本架构

file
  • 适用场景:纯缓存,数据持久化
  • 性能:8-10w qps
  • 链路:内部SLB -> Redis
  • 访问方式:兼容所有开源客户端
  • SLA:2副本,HA高可用,秒级切换

集群双副本架构

file
  • 适用场景:数据量大,性能要求高
  • 性能:100w qps
  • 链路:内部SLB -> Redis
  • 访问方式:兼容所有开源客户端
  • SLA:分片2副本,高可用

读写分离架构

file
  • 适用场景:读多写少,超大Key,不要求强一致性
  • 优势:
    读写能力线性扩展;支持所有命令;对用户透明

同城容灾

file
  • 适用场景:

数据可用性高

  • 优势:
    用户数据双机房热备,单机房故障,业务无缝切换;机房恢复后,基于Binlog增量同步,防止流量雪崩

异地容灾+多活

file
  • 适用场景:
    多点读写,就近读写

  • 优势:
    容忍N-1机房故障;最终一致;跨地域灾备

混合存储

file
  • 适用场景:
    超大数据量,性能要求适中,视频直播类应用,电商类应用

  • 优势:
    100%兼容Redis;冷热数据分离;超高性价比

阿里云Redis内核优化

file
  • 兼容Memcache协议
  • 高可用探测
  • AOF Binlog
  • 持久化系统优化
  • 安全加密
  • IO、连接优化
file

持久化系统改造:

  • 保留历史AOF日志
  • 去除AOF Rewrite
  • 扩展AOF日志信息
file
  • 全新的数据组织形式:RDB全量+历史AOF
file
  • 基于AOF Binlog的同步机制
file

独立的端口探测线程:

  • 单独的事件
  • 主线程阻塞不受影响
  • 坏盘探测
  • 慢内存探测
  • 快速容灾
file

AOF后台异步写优化:

  • 新增biowrite模式
  • 轻量级别锁队列
  • bio线程进行线程写入操作
  • 提高性能,避免write慢对主线程的影响
file

支持Memcache协议:

  • 支持文本及二进制协议,完全兼容
  • 复用Redis String对象存储memcached
  • 复用原生Redis同步协议
  • 复用原生Redis持久化机制
  • 新版本Memcache支持扫描、备份、更多统计信息
file

混合存储优化:

  • 内存中保持所有key和热数据
  • RocksDB中存冷数据
  • 热数据性能和Redis一致
  • 100%兼容Redis
  • 数据换出异步写RocksDB,不阻塞主线程
  • 单实例支持TB+数据存储
file

网络IO多线程优化。

关注我的公众号,后台回复【JAVAPDF】获取200页面试题!
5万人关注的大数据成神之路,不来了解一下吗?
5万人关注的大数据成神之路,真的不来了解一下吗?
5万人关注的大数据成神之路,确定真的不来了解一下吗?

欢迎您关注《大数据成神之路》
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,902评论 5 468
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,037评论 2 377
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,978评论 0 332
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,867评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,763评论 5 360
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,104评论 1 277
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,565评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,236评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,379评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,313评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,363评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,034评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,637评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,719评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,952评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,371评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,948评论 2 341

推荐阅读更多精彩内容

  • 一、Redis高可用概述 在介绍Redis高可用之前,先说明一下在Redis的语境中高可用的含义。 我们知道,在w...
    空语阅读 1,593评论 0 2
  • 企业级redis集群架构的特点 海量数据 高并发 高可用 要达到高可用,持久化是不可减少的,持久化主要是做灾难恢复...
    lucode阅读 2,191评论 0 7
  • 1.1 资料 ,最好的入门小册子,可以先于一切文档之前看,免费。 作者Antirez的博客,Antirez维护的R...
    JefferyLcm阅读 17,028评论 1 51
  • Nosql概述 在介绍Redis之前,首先先要介绍Nosql的概念。 互联网架构发展 在90年代的时候,计算机访问...
    COKIDCC阅读 680评论 0 1
  • 1. redis 持久化的意义 redis的数据全部在内存中,如果突然宕机,数据就会全部丢失,因此必须有一种机制来...
    CoderJed阅读 3,683评论 2 11