微信 PaxosStore:理论基础与创新设计

导语

作者介绍:郑建军,来自广州的微信事业群,基础平台组高级工程师。

主要分享内容:

  • PaxosStore项目介绍;
  • Paxos协议过程与实现;
  • PaxosLog优化与设计分析;
  • 基于PaxosLog的DB读写。

本部分深入浅出的介绍了PaxosStore的定义,PaxosStore的五大特点,PaxosStore的部署情况及处理能力以及PaxosStore对于微信业务的支撑。

本部分将从Paxos协议出发,在明确Paxos的定义、在分布式系统中能解决的问题及协议涉及的角色后,以一个“Acceptor只接受一个到达的提议”这样简单的算法出发,由浅入深的介绍了Paxos协议的推演,在遇到了Byzantine故障发生数据丢失时如何继续参与协议交互;以及Paxos协议实现难题的基于原始状态(m,{n,v})表格化计算解决。

在了解了Paxos协议过程与实现之后,本部分首先介绍了三机PLog架构及PLog下的Paxos协议优化:预授权优化以及三机PLog架构多主可写、允许空洞、三份数据副本、细粒度化、快消型的设计要点

在了解了Paxos协议过程与实现、PaxosLog优化与设计分析之后,本部分将着重介绍PaxosLog的DB读写操作。

本演讲整理来自“腾讯大讲堂”。

原创声明,本文系作者授权云+社区-专栏发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

郑建军的专栏

1 篇文章1 人订阅

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏everhad

安卓Task和Back Stack

概述 一个Activity允许用户完成一些操作,甚至,Android中设计Activity为组件的形式,这样,多个Activity——甚至是其它App的Acti...

1759
来自专栏A周立SpringCloud

Spring Cloud限流详解(附源码)

在高并发的应用中,限流往往是一个绕不开的话题。本文详细探讨在Spring Cloud中如何实现限流。 在 Zuul 上实现限流是个不错的选择,只需要编写一个过滤...

4187
来自专栏Android-JessYan

传统MVP用在项目中是真的方便还是累赘?

原文地址: http://www.jianshu.com/p/ac51c9b88af3 qq群:301733278

661
来自专栏Java与Android技术栈

Cold Observable 和 Hot Observable

Hot Observable 无论有没有 Subscriber 订阅,事件始终都会发生。当 Hot Observable 有多个订阅者时,Hot Observa...

852
来自专栏一个会写诗的程序员的博客

Spring Boot : 使用 Zuul 实现 API Gateway 的路由和过滤 ( Routing and Filtering )应用场景配置管理稳定性完整示例

Spring Boot : 使用 Zuul 实现 API Gateway 的路由和过滤 ( Routing and Filtering )

662
来自专栏青青天空树

安卓OKhttp请求封装

  目前安卓开发中使用的网络工具为OKhttp,但是okhttp的使用还不是很方便,在okhttp的基础上再对请求进行封装会极大的方便网络调用。

983
来自专栏Jack的Android之旅

刨解OkHttp框架

继AsyncTask,又把手术刀指向OkHttp,有时候解析源码会上瘾。因为源码里包含的东西仿佛就是组成计算机世界的砖头,水分,只要有这些东西,就可以保罗万物,...

622
来自专栏hbbliyong

Android 蓝牙操作详解

1.启用蓝牙并使设备处于可发现状态        1.1 在使用BluetoothAdapter类的实例进操作之前,应启用isEnable()方法检查设备是否启...

3169
来自专栏Java开发者杂谈

分布式改造剧集1

背景介绍 ​ 我所在的项目组,使用的技术一直是接近原始社会的:jdk1.6 + SpringMVC + hessian + Mybatis,当前最火的中间件技术...

2804
来自专栏alexqdjay

SpringCloud 之 Zuul 源代码详细笔记

3158

扫码关注云+社区