Redis 多数据中心双向同步 祝辰
Redis 多数据中心双向同步 祝辰 • 携程框架架构部门 • 资深研发工程师 • 专注于 Redis 高可用系统的 研发工作 • 对分布式存储系统有所涉猎 讲师介绍 祝辰 1 开篇 2 3 4 5 目 录 CONTENTS 携程的Redis架构 分布式理论 双向/多向同步的问题 CRDT 19 世纪的通讯 “At 12:30 am on April 4th 别的时间, 一条消息可以 被全世界共享起来 互联网的规模也从单独 一个数据中心的部署方 式转变为多数据中心, 甚 至是跨区域的部署模式 多区域部署 Serverless 分布式存储 Redis 内存数 据库 支持多种 数据结构 支持主 从架构 缓存服务 分布式锁 消息队列 计数器 目前携程的 Redis 部署架构 通过携程的 X-Pipe 项目, 来达到 Redis 跨站点和跨区域的数据同步问题 支持海外站点和国内站点同时进行读写; 并解决因此可能出现的数据一致性问题. 需求的产生 DRC 的概念是在近年来, 云计算兴起, 多站点部署的场景下, 延伸出来对于数 据共享的一个需求. 多站点部署的架构, 对于单元化部署的 应用来讲, 跨数据中心的数据访问一直 是一个最大的痛点. 目前很多用户 • 抑或是采取了同一份写入到两个站 点的数据库 • 抑或是跨站点写入数据库同时同步 回来(例如 AWS 的AURORA)0 码力 | 45 页 | 1.74 MB | 1 年前3携程 Redis 多数据中心 双向同步实践 祝辰
携程 Redis 多数据中心 双向同步实践 祝辰 祝辰 目前任职携程框架架构部门资深 研发工程师 负责框架Redis团队的开发工作 目录 1 业务背景 2 3 双向同步 4 CRDT 高可用 开篇 & 背景 Redis 在携程的规模 25,000,0 00 QPS 2000+Clust er 200TB + 跨公网同步 SHANGHAI CANADA – Last Write Wins T2 > T1 T2 WINS 时间不一致 两个Redis的系 统时钟不一致 最终保留了第一 次的结果 Vector Clock • 向量表示不同节点 的操作数 • SET KEY=VAL1 (0,0)->(1,0) • SET KEY=VAL2 (1,0)->(1,1) 删除导致数据不一致 • 假设已经存在 一个KEY • Redis-A做更新 Redis-B做删除 操作 CRDT -- Tombstone 删除操作时,只做 逻辑删除 保留被删除的记录 内存爆满 随着时间的推移,大量的失效KEY驻留 时间轴 CRDT -- GC 基于节点之间的vector clock的通讯,删除不必要的 失效KEY (1,0) (1,1) (1,1) Vector Clock Vector Clock (1,0) 什么是 CRDT State-based0 码力 | 33 页 | 2.15 MB | 1 年前3阿里云云数据库 Redis 版 产品简介
什么是云数据库 Redis 版 云数据库 Redis 版(ApsaraDB for Redis)是兼容开源 Redis 协议标准的、提供持久化的内存数据库服务,基 于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 云数据库 Redis 版支持字符串(String)、链表(List)、集合(Set)、有序集合(SortedSet)、哈希表 (H 版支持灵活的部署架构:单副本、双副本、集群版,能够满足不同的业务场景。 单节点架构: 适用于纯缓存场景,支持单节点集群弹性变配,满足高 QPS 场景,提供超高性价比。 双机热备架构:系统工作时主节点(Master)和备节点(Slave)数据实时同步,主节点故障时系统 自动秒级切换,备节点接管业务,全程自动且对业务无影响,主备架构保障系统服务具有高可用性。 集群架构:集群( 集群架构:集群(cluster)实例采用分布式架构,每个节点都采用一主一从的高可用架构,自动容灾 切换,故障迁移,多种集群规格可适配不同的业务压力,无线扩展数据库性能。 云数据库 Redis 版作为云计算服务,其硬件和数据部署在云端,有完善的基础设施规划、网络安全保障、系统 维护服务,确保用户专心致力于业务创新。 混合存储公测开通须知 Redis混合存储系列将于2018年3月0 码力 | 33 页 | 1.88 MB | 1 年前3阿里云云数据库 Redis 版 快速入门
单击性能监控之后可以查看到不同的监控项,以下对基础监控组的监控项进行说明。 基础监控项 说明 Keys 后端 Redis 所有 db 的 key 个数的总和,对于集 群实例会汇聚后端所有的节点的数据。 Expires 当前设置了过期数据的 key 的个数的总和。 ExpiredKeys 历史过期掉的 key 的个数。 这个值是历史过期掉的 key 的个数的总和,所以 是不包含当前设置了过期 注意:如果发生主备切换,该值会以新的主库为准 。 UsedMemory 当前内存的使用值。 由于新建实例时会产生一定的元信息,所以对于主 从实例这个值最小是 30 MB,对于集群实例这个 数据的初始值为 30 MB乘以节点数,最小为 200 MB。 InFlow 后端 Redis 入口当前每秒的流量值,单位为 KBytes/s。 OutFlow 后端 Redis 出口当前每秒的流量值,单位为 KBytes/s。 iinfo 命令:用法类似于 info,用于在指定的 Redis 节点上执行 info 命令。用法如下: iinfo db_idx [section] 其中,db_idx 的范围是[0, nodecount),nodecount 可以通过 info 命令获取, section 为 info 官 方一致的值。要了解某个 Redis 节点的 info 可以使用 iinfo 命令,详情请参见 如何查看0 码力 | 29 页 | 1.07 MB | 1 年前3常见Redis未授权访问漏洞总结
yml中为9200端口设置认证等。 Hadoop 未授权访问漏洞 curl http://localhost:9200/_nodes #查看节点数据 更多利用可以自行搜索一下 漏洞简介以及危害 Hadoop是一个由Apache基金会所开发的分布式系统基础架构,由于服务器直接在开放了 Hadoop 机器 HDFS 的 50070 web 端口及部分默认服务端口,黑客可以通过命令行操作多个目录下的数据,如0 码力 | 44 页 | 19.34 MB | 1 年前3陈宗志:大容量redis存储方案--Pika
大容量redis存储方案--Pika 陈宗志 360基础架构组技术经理 SACC2017 简介 • 13年入职360 基础架构组 – Bada – Pika – Zeppelin – Mario, Pink, slash, floyd • https://github.com/Qihoo360 SACC2017 概要 • 存在问题 • 分析问题 • 解决问题 • Pika vs redis SACC2017 • Pika 是DBA 和 基础架构团队一起设计开发的 大容量redis的解决方案 • 完全兼容redis 协议, 用户不需要修改任何代码 进行迁移 Introduction SACC2017 • Redis实例数量:6000+个 • 日访问量:5000+亿 • Pika数据数量:1000+个 使用基于磁盘的存储引擎rocksdb 实现多 数据接口接口 • 网络库 • 添加binlog 模块 SACC2017 Pika 整体结构 SACC2017 网络模块--Pink • 基础架构团队开发网络编程库, 支持pb, redis, pg, http等协议. • 抽象各种不同类型线程 – DispatchThread – WorkThread – BGThread0 码力 | 47 页 | 2.18 MB | 1 年前3高金芳-平安科技-PostgreSQL反向代理redis
职务:平安科技数据库技术部数据库架构师 邮箱:gaojinfang498@pingan,.com.cn 个人简介: 高金芳,中国平安集团旗下平安科技数据库技术部数据库架构师,从事数据库相关工作9年。 2007年毕业,从事oracle ERP开发,数据仓库和数据挖掘相关工作。 2011年加入平安科技,从事过数据库的开发、架构设计、新数据库产品引入、Oracle的架构优化等工作, Oracle的架构优化等工作, 幵负责部门的Redis产品相关工作。近期致力亍PostgreSQL源码研究。 2016Postgres中国用户大会 Postgres Conference China 2016 中国用户大会 What is Redis 01 Dilemma 02 Why PostgreSQL 03 Redis + 040 码力 | 28 页 | 3.61 MB | 1 年前3《Redis使用手册》(试读版)
('b', 'd', '70')} 这⾥展示的图数据储存程序提供了针对边和权重的功能, 因为它能够⾮常⽅便地向图中添加边和移除边, 并且还 可以快速地检查某条边是否存在, 所以它⾮常适合⽤来储存节点较多但边较少的稀疏图(sparse graph)。 在后 续的章节中, 我们还会继续看到更多使⽤ Redis 储存图数据的例⼦。 3.18 示例:使⽤散列键重新实现⽂章储存程序 在稍早之前, 我0 码力 | 352 页 | 6.57 MB | 1 年前3
共 8 条
- 1