Redis 多数据中心双向同步 祝辰Redis 多数据中心双向同步 祝辰 • 携程框架架构部门 • 资深研发工程师 • 专注于 Redis 高可用系统的 研发工作 • 对分布式存储系统有所涉猎 讲师介绍 祝辰 1 开篇 2 3 4 5 目 录 CONTENTS 携程的Redis架构 分布式理论 双向/多向同步的问题 CRDT 19 世纪的通讯 “At 12:30 am on April 4th 数据结构 支持主 从架构 缓存服务 分布式锁 消息队列 计数器 目前携程的 Redis 部署架构 通过携程的 X-Pipe 项目, 来达到 Redis 跨站点和跨区域的数据同步问题 目前已经支持上海到美国和德国的 Redis 数据同步 • 到德国法兰克福站点, 平均延迟在 176ms 左右 • 到美西站点, 平均延迟在 160ms 左右 携程业务开发的需求, 对于 Redis 的数 据存储有着强依赖 云计算兴起, 多站点部署的场景下, 延伸出来对于数 据共享的一个需求. 多站点部署的架构, 对于单元化部署的 应用来讲, 跨数据中心的数据访问一直 是一个最大的痛点. 目前很多用户 • 抑或是采取了同一份写入到两个站 点的数据库 • 抑或是跨站点写入数据库同时同步 回来(例如 AWS 的AURORA) 这两种方式都没有从根本上解决问题, DRC 概念的出现, 让大家对分布式存储 又有了新的期待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 仓位信息供应商 国内 海外 单向同步 • 单向同步可以解决 海外重复收费的问 题 • 无法解决上海重复 收费的问题 业务痛点 仓位信息供应商 国内 海外 双向同步 • 我们希望可以通过 Redis的双向同步 解决重复收费的问 题 双向同步 Redis双向同步 双向同步 Redis Master Redis Master Redis双向同步 1. slaveof• slaveof命令 • redis变成slave, 同步数据 • Slave无法写入 Redis双向同步 1. peerof 2. Sync data • 新的命令“peerof” • 同步数据 • 继续保持Master的 角色 如何解决 • 新的协议支持 双向同步 • 兼容Slaveof命 令 slaveof slaveof 0 码力 | 33 页 | 2.15 MB | 1 年前3
《Redis使用手册》(试读版)虽然丰富, 但它们⼤部分都⾮常简短, 并且只需接受 ⼏个参数就可以完成⽤户指定的操作。 更棒的是, Redis 在官⽅⽹站(redis.io)上为每个 API 以及相关特 性都提供了详尽的⽂档, 并且客户端本身也可以在线查询这些⽂档。 当你遇到⽂档⽆法解决的问题时, 还 可 以 在 Redis 项 ⽬ 的 GitHub ⻚ ⾯ ( github.com/antirez/redis ) 、 com/antirez) 上提 问。 ⼴泛的⽀持 正如之前所说, Redis 已经得到了互联⽹公司的⼴泛使⽤, 许多开发者为不同的编程语⾔开发了相应的客 户端(redis.io/clients), 绝⼤多数编程语⾔的使⽤者都可以轻⽽易举地找到他们所需的客户端, 然后直 接开始使⽤ Redis 。 此外,包括亚⻢逊、⾕歌、RedisLabs、阿⾥云和腾讯云在内的多个云服务提供商都提 供了基于 Redis 或兼容 Redis 服务器及其附 带的 redis-cli 客户端、Python 编程环境和 redis-py 客户端, 如果你尚未安装这些软件, 那么请查阅本书的附 录 A 和附录 B 并按照指引进⾏安装。 在正确安装 Redis 服务器之后, 你应该可以通过执⾏以下命令来启动 Redis 服务器: 并通过以下命令启动 redis-cli 客户端: $ redis-cli 127.0.0.1:6379>0 码力 | 352 页 | 6.57 MB | 1 年前3
阿里云云数据库 Redis 版 产品简介。 单节点架构: 适用于纯缓存场景,支持单节点集群弹性变配,满足高 QPS 场景,提供超高性价比。 双机热备架构:系统工作时主节点(Master)和备节点(Slave)数据实时同步,主节点故障时系统 自动秒级切换,备节点接管业务,全程自动且对业务无影响,主备架构保障系统服务具有高可用性。 集群架构:集群(cluster)实例采用分布式架构,每个节点都采用一主一从的高可用架构,自动容灾 (integer) 1048576 9) "clients.slaves" // 主从复制用到的内存 10) (integer) 16858 11) "clients.normal" //普通用户客户端的读写缓冲区 12) (integer) 49630 13) "aof.buffer" //aof持久化使用的缓存和aofrewrite时产生的缓存之和 14) (integer) 3253 15) "db slave buffers: 每个slave缓冲区的平均内存超过10MB,原因可能是master写入流量过高 Big client buffers: 普通客户端缓冲区的平均内存超过200KB,原因可能是pipeline使用不当或者Pub/Sub客户端处 理消息不及时导致 云数据库 Redis 版 产品简介 5 malloc stats & malloc purge 这两个命令用于操作 jemalloc,只在使用0 码力 | 33 页 | 1.88 MB | 1 年前3
常见Redis未授权访问漏洞总结Kali 目标靶机: Windows Server 2003 Standard Edition ip地址: 192.168.15.8 未授权访问测试 防御手段 -配置 VNC 客户端登录口令认证并配置符合密码强度要求的密码。 -以最小普通权限身份运行操作系统。 Docker 未授权访问漏洞 漏洞简介以及危害 Docker 是一个开源的引擎可以轻松地为任 ZooKeeper 的认证配置。 Rsync 未授权访问漏洞 漏洞简介以及危害 Rsync(remote synchronize)是一个远程数据同步工具,可通过 LAN/WAN 快速同步多台主机间 的文件,也可以同步本地硬盘中的不同目录。Rsync 默认允许匿名访问,如果在配置文件中没有相关的 用户认证以及文件授权,就会触发隐患。Rsync 的默认端口为 837。 漏洞利用0 码力 | 44 页 | 19.34 MB | 1 年前3
高金芳-平安科技-PostgreSQL反向代理redisRedis Security--Authentication Redis提供了一个身份验证功能 Redis在配置文件中进行配置 客户端可以发送AUTH命令+密码来验证自己 Redis执行效率快,需要密码设置长 Redis客户端使用IP,PORT,PASSWORD访问 2016Postgres中国用户大会 Postgres Conference Postgres Conference China 2016 中国用户大会 • 实现了key相关的统计分析 • 丌同角色的用户只需要登陆一次 就会获取自己所需的跨多个Redis 实例的所有数据 • 密码隔离 • 角色隔离 • 开发只能读取实例中的数据 • 运营可以访问和修改实例的数据 • DBA需要对实例进行管理 问题分析 登陆权限隔离0 码力 | 28 页 | 3.61 MB | 1 年前3
陈宗志:大容量redis存储方案--Pika源 SACC2017 Redis 问题 90/GB VS 2.6/GB 30倍的差距 SACC2017 问题分析 • 成本问题 • 可用性问题 • 同步问题 • 易用性问题 SACC2017 问题分析 • 尽可能兼容redis 协议 • 使用基于磁盘的存储引擎rocksdb 实现多 数据接口接口 • 网络库 • 添加binlog 日志模块--Binlog • Binlog – 顺序写文件, 通过Index + offset 进行同步点 检查 – 解决了缓冲区小的问题 – 支持全同步 + 增量同步 SACC2017 日志模块--Binlog SACC2017 主从同步-- slaveof SACC2017 主从同步-- slaveof SACC2017 Pika 遇到问题 • 秒删 – 通过修改Rocksdb • 将redis数据迁移到pika,基于aof,能全量+增量方式同步数 据(Note关闭aof重写) – Pika_to_redis • 业务增长过快,pika逐渐难以支持性能,将pika迁回redis, 支持增量数据同步 – Ssdb_to_pika • 将ssdb数据迁移到pika,目前不支持增量同步 SACC2017 Pika 运维 – 案例一 消息推送服务部分redis迁移到pika0 码力 | 47 页 | 2.18 MB | 1 年前3
阿里云云数据库 Redis 版 快速入门入口当前每秒的流量值,单位为 KBytes/s。 OutFlow 后端 Redis 出口当前每秒的流量值,单位为 KBytes/s。 ConnCount 当前 Redis 的客户端连接个数。 FailedCount 对于主从版本,目前这个值没有意义,因为客户端 直接连接到后端 DB。对于集群版实例,该统计项 标识 Proxy 到 Redis 的操作失败数目,包括超时 云数据库 Redis 版 快速入门 3 数据过期删除策略 - 主动过期,系统后台会周期性的检测,发现已过 期的key时,会将其删除。 - 被动过期,当用户访问某个key时,如果该key已 经过期,则将其删除。 空闲连接回收机制 服务端不主动回收 Redis 空闲连接,由用户管理。 数据持久化策略 采用 AOF_FSYNC_EVERYSEC 方式,每秒 fysnc。 Keys(键) String(字符 串) Hash(哈希 表) Redis 协议的客户端都可以访问云数据库 Redis 版服务,您可以根据自身应用特点选用任何 Redis 客户端。 注意:云数据库 Redis 版仅支持阿里云内网访问,不支持外网访问,即只有在同节点的 ECS上安装 Redis 客户 端才能与云数据库建立连接并进行数据操作。 Redis 的客户端请参考 http://redis.io/clients 。 Jedis 客户端 phpredis0 码力 | 29 页 | 1.07 MB | 1 年前3
Redis操作手册systemctl start redis # systemctl status redis ★redis使用ssl ★redis-cli客户端工具 ★命令行客户端 在redis服务端安装目录下有redis-cli命令行工具 安装目录下# redis-cli -h 10.99.1.51 -p 6379 -a Centos123 #-h指定服务器地 1.51:6379> 10.99.1.51:6379> get keyxx #查看指定key对应的值 "valuexx" ★可视化客户端工具 官网: h�ps://redis.com/redis-enterprise/redis-insight/ 下 载 链 接 : h�ps://download.redisinsight.redis0 码力 | 5 页 | 80.37 KB | 1 年前3
共 9 条
- 1













