Redis 多数据中心双向同步 祝辰多数据中心双向同步 祝辰 • 携程框架架构部门 • 资深研发工程师 • 专注于 Redis 高可用系统的 研发工作 • 对分布式存储系统有所涉猎 讲师介绍 祝辰 1 开篇 2 3 4 5 目 录 CONTENTS 携程的Redis架构 分布式理论 双向/多向同步的问题 CRDT 19 世纪的通讯 “At 12:30 am on April 4th, 1841 President 被全世界共享起来 互联网的规模也从单独 一个数据中心的部署方 式转变为多数据中心, 甚 至是跨区域的部署模式 多区域部署 Serverless 分布式存储 Redis 内存数 据库 支持多种 数据结构 支持主 从架构 缓存服务 分布式锁 消息队列 计数器 目前携程的 Redis 部署架构 通过携程的 X-Pipe 项目, 来达到 Redis 跨站点和跨区域的数据同步问题 目前已经支持上海到美国和德国的 目前很多用户 • 抑或是采取了同一份写入到两个站 点的数据库 • 抑或是跨站点写入数据库同时同步 回来(例如 AWS 的AURORA) 这两种方式都没有从根本上解决问题, DRC 概念的出现, 让大家对分布式存储 又有了新的期待 Data Replication Center 目前携程的应用也在进行单元化的部署模 式, 在实现单元化的部署过程中, 跨数据中 心的数据访问一直是一个业务的痛点. 是否我们也能够有自己的一套0 码力 | 45 页 | 1.74 MB | 1 年前3
阿里云云数据库 Redis 版 产品简介单节点架构: 适用于纯缓存场景,支持单节点集群弹性变配,满足高 QPS 场景,提供超高性价比。 双机热备架构:系统工作时主节点(Master)和备节点(Slave)数据实时同步,主节点故障时系统 自动秒级切换,备节点接管业务,全程自动且对业务无影响,主备架构保障系统服务具有高可用性。 集群架构:集群(cluster)实例采用分布式架构,每个节点都采用一主一从的高可用架构,自动容灾 16858 11) "clients.normal" //普通用户客户端的读写缓冲区 12) (integer) 49630 13) "aof.buffer" //aof持久化使用的缓存和aofrewrite时产生的缓存之和 14) (integer) 3253 15) "db.0" //每个db的元数据所占用内存 16) 1) "overhead.hashtable.main" 2) (integer) 标准版-单副本是云数据库 Redis 推出的一种新系列,采用单个数据库节点部署架构。与双副本版本相比,它只 包含一个节点,没有备用节点实时同步数据,不提供数据持久化和备份策略,适用于数据可靠性要求不高的纯 缓存业务场景使用。 云数据库 Redis 版 产品简介 9 特点 高性价比 Redis 标准版-单副本架构采用单节点部署。阿里云自研的 HA 高可用系统时时探测节点的服务情况0 码力 | 33 页 | 1.88 MB | 1 年前3
常见Redis未授权访问漏洞总结-添加认证,设置强密码复杂度及账号锁定。 -禁止把Jenkins直接暴露在公网。 Memcached 未授权访问漏洞 漏洞简介以及危害 Memcached 是一套常用的 key-value 分布式高速缓存系统,由于 Memcached 的安全设计缺陷没 有权限控制模块,所以对公网开放的Memcache服务很容易被攻击者扫描发现,攻击者无需认证通过命 令交互可直接读取 Memcached中的敏感信息。 首先发送它的证书,如果证书是由daemon信任的CA所签名的,才可以继续执行。 ZooKeeper 未授权访问漏洞 漏洞简介以及危害 zookeeper是分布式协同管理工具,常用来管理系统配置信息,提供分布式协同服务。Zookeeper 的默认开放端口是2181。Zookeeper安装部署之后默认情况下不需要任何身份验证,造成攻击者可以远 程利用Zookeeper,通过服务器 -绑定指定ip。 -设置访问密码。 Elasticsearch 未授权访问漏洞 漏洞简介以及危害 ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引 擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发 布,是当前流行的企业级搜索引擎。Elastic0 码力 | 44 页 | 19.34 MB | 1 年前3
《Redis使用手册》(试读版)过⼤量的实践应⽤, Redis 简洁⾼效、安全稳定的印象已经深⼊⼈⼼。 ⽆论是国内还是国外, 从财富五百强到⼩ 型初创公司都在使⽤ Redis , 很多云服务提供商还以 Redis 为基础构建了相应的缓存服务、消息队列服务以及内 存存储服务 —— 当你使⽤这些服务时, 你实际上就是在使⽤ Redis 。 除了变得越来越受欢迎之外, Redis 在过去数年的另⼀个变化就是更新速度越来越快, 功能也变得越来越多、越 版本以及本书配套的读者服务 ⽹站。 1.1 Redis 简介 Redis 是⼀个主要由 Salvatore Sanfilippo (antirez)开发的开源的内存数据结构存储器, 它经常被⽤作数据 库、缓存以及消息代理等⽤途。 Redis 因为它丰富的数据结构、极快的速度、⻬全的功能⽽为⼈所知, 它是⽬前内存数据库⽅⾯的事实标准, 在 互联⽹上有⾮常⼴泛的应⽤, 包括微博、Twitter、GitHub、Stack 2.4 示例:缓存 对数据进⾏缓存是 Redis 最常⻅的⽤法之⼀: 因为 Redis 把数据储存在内存⽽不是硬盘上⾯, 并且访问内存数 据的速度⽐访问硬盘数据的速度要快得多, 所以⽤户可以通过把需要快速访问的数据储存在 Redis ⾥⾯来提升应 ⽤程序访问这些数据时的速度。 代码清单 2-1 展示了⼀个使⽤ Redis 实现的缓存程序代码, 这个程序使⽤ SET 命令来将需要被缓存的数据储存 到指定的字符串键⾥⾯,0 码力 | 352 页 | 6.57 MB | 1 年前3
携程 Redis 多数据中心 双向同步实践 祝辰网络风暴 • 数据不一致 如何解决 SET KEY=VAL • 标记数据来 源 • 只发送本站 点数据 SET KEY=VAL 两份缓存 SET KEY=VAL Master-Master 缓存区 Master-Slave 缓存区 写入冲突 SET KEY=CAT SET KEY=DOG KEY = ? KEY = ? 1. CAT CAT 2. DOG0 码力 | 33 页 | 2.15 MB | 1 年前3
共 5 条
- 1













