PaxosStore在微信支付业务的实践

2019 年 9 月 12 日

PaxosStore在微信支付业务的实践

ArchSummit 北京 2018 大会上,郑建军讲师做了《PaxosStore 在微信支付业务的实践》主题演讲,主要内容如下。

演讲简介

微信 PaxosStore 是一个分布式存储系统,创新的无租约 Paxos 工程实现,实现三园区多主多写,任意角色宕机时系统无需切换周期,真正实现实时可用,平滑服务。

PaxosStore 广泛支撑微信在线应用,峰值过亿 TPS,运行在数千台服务器上。PaxosStore 在数据分区内部提供完整的串行 ACID 语义,支持键值 / 队列 / 集合等数据结构以及二维表,单表可超亿行并提供 SQL 接口支持业务快速开发,通过跨园区数据中心间的同步复制提供强一 致性和高可用性。该系统在 2017 年除夕夜实践中,平稳应对百亿级每分钟的挑战。

最近一年,特别是支付业务对 PaxosStore 提出了更高的要求。而本次演讲将会给大家带来 PaxosStore 在支付业务上的实践经验,面对复杂的支付业务,存储平台如何做到与业务解耦,操作流水入库如何做到不重不漏,金融级可靠的远距离容灾,不应该只是简单的改变数据副本的物理距离。

演讲提纲

1、问题与挑战

2、微信支付业务的支持

  • 2.1 业务数据结构抽象
  • 2.2 业务逻辑和存储解耦
  • 2.3 统一入库系统

3、远距离(上海 - 深圳 - 天津)容灾的高可靠存储设计

  • 3.1 服务高可用
  • 3.2 数据强一致、低延迟

4、集群的扩容与缩容

  • 4.1 基于范围的通用伸缩系统
  • 4.2IDC 自治,独立伸缩

5、未来规划

听众收益

  1. 了解支付业务的抽象以及解决方案;
  2. 了解远距离容灾高可靠存储的设计要点。

讲师介绍

郑建军

腾讯 高级工程师

郑建军(Rock Zheng)腾讯高级工程师,负责微信基础存储的研发。2014 年加入微信后台团队,参与了多个大型分布式系统的架构设计和研发工作,其中作为微信核心存储 PaxosStore 主创人员之一,对微信核心存储系统(消息、朋友圈、好友关系链等)进行升级改造,提升了服务的可用性和数据的安全性。

完整演讲 PPT 下载链接

https://archsummit.infoq.cn/2018/beijing/schedule

2019 年 9 月 12 日 14:46 302

评论

发布
暂无评论
发现更多内容

SpringBoot系列(五):SpringBoot 日志配置(logback)

xcbeyond

Java 微服务 springboot logback

Swagger 这一个文章就够了

陈磊@Criss

SpringBoot系列(六):SpringBoot 数据库操作(集成MyBatis)

xcbeyond

Java 微服务 mybatis springboot

2.3.1 理解动态代理 -《SSM深入解析与项目实战》

谙忆

Django的Models更新时,不触发Signals解决办法

Young先生

django singals 信号机制 update 更新

如何从红蓝墨水中分离出红墨水?回声消除算法介绍

拍乐云Pano

音视频 WebRTC 回声消除 3A算法 音频技术

统一软件开发过程(RUP)的概念和方法

雯雯写代码

Junit执行单元测试用例成功,mvn test却失败的问题和解决方法

陈磊@Criss

重磅消息,我国数字人民币将在京津冀等具备条件地区试点

CECBC区块链专委会

数字货币 货币

6种快速统计代码执行时间的方法

Bruce Duan

java统计时间 currentTimeMillis nanoTime StopWatch

微服务框架 - 模块功能设计篇

superman

2.3.2 JDK动态代理 -《SSM深入解析与项目实战》

谙忆

用Ant实现Java项目的自动构建和部署

陈磊@Criss

Vue项目起步

JackWangGeek

Vue

实用心理学—没用你打我!

代码制造者

职场 职场搞笑 信息技术 人工

统一软件开发过程(RUP)的概念和方法

力软.net/java开发平台

项目管理 软件开发流程

如何写出完美的接口:接口规范定义、接口管理工具推荐

xcbeyond

Java 架构 接口规范

【写作群星榜】8.1~8.14 写作平台优秀作者 & 文章排名

InfoQ写作平台

写作平台 排行榜

终于知道Kafka为什么这么快了!

海星

kafka 消息队列

英特尔首席架构师Raja:一个“百亿亿次级计算能力惠及每个人”的时代正在到来

飞天鱼2017

如何正确认识区块链?

CECBC区块链专委会

区块链价值 区块链应用

NetPerf揭示容器间是高速路还是林荫小路

陈磊@Criss

微服务框架-模块需求篇

superman

[修复 Webpack 官方 Bug] 提取CSS时的依赖图修正

分一

前端 webpack 编译优化 源码刨析

MySQL中timestamp和datetime,你用的对么?

xcbeyond

MySQL 数据库 后端

LeetCode题解:88. 合并两个有序数组,splice合并数组+sort排序,JavaScript,详细注释

Lee Chen

LeetCode 前端进阶训练营

免费DDoS攻击测试工具大合集

陈磊@Criss

Maven的爱恨情仇

xcbeyond

Java maven

Facebook开源的数据Mock:Memisis详解

陈磊@Criss

从实际案例讲 Deno 的应用场景

keelii

JavaScript typescript deno

为什么会是Docker?

架构精进之路

Docker

PaxosStore在微信支付业务的实践-InfoQ