PhxPaxos 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
PhxPaxos 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票

软件简介

PhxPaxos是腾讯公司微信后台团队自主研发的一套基于Paxos协议的多机状态拷贝类库。它以库函数的方式嵌入到开发者的代码当中, 使得一些单机状态服务可以扩展到多机器,从而获得强一致性的多副本以及自动容灾的特性。 这个类库在微信服务里面经过一系列的工程验证,并且我们对它进行过大量的恶劣环境下的测试,使其在一致性的保证上更为健壮。

特性

  • 基于Lamport的 Paxos Made Simple 进行工程化,不进行任何算法变种。

  • 使用基于消息传递机制的纯异步工程架构。

  • 每次写盘使用fsync严格保证正确性。

  • 一次Propose(写入数据)的Latency为一次RTT,均摊单机写盘次数为1次。

  • 使用点对点流式协议进行快速学习。

  • 支持Checkpoint以及对PaxosLog的自动清理。

  • 支持跨机器的Checkpoint自动拉取。

  • 一个PhxPaxos实例可以同时挂载多个状态机。

  • 可使用镜像状态机模式进行Checkpoint的自动生成。

  • 内置Master选举功能。

  • 线上数据的实时增量checksum校验。

  • 网络、存储、监控、日志模块插件化,可由开发者自定义。

局限

  • 一个PhxPaxos实例任一时刻只允许运行在单一进程(容许多线程)。

  • 这个类库没有内建对client-server的支持,开发者必须将类库的代码嵌入到自己的服务器代码里面,以实现这个功能。

  • PhxPaxos只容许运行在64位的Linux平台。

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (2)

加载中
好东西 #PhxPaxos#
2016/06/30 08:35
回复
举报
墙裂支持 #PhxPaxos#
2016/07/02 15:49
回复
举报
更多评论
暂无内容
发表了博客
2018/04/28 22:19

微信自研生产级paxos类库PhxPaxos实现原理介绍

转载自: http://mp.weixin.qq.com/s?__biz=MzI4NDMyNTU2Mw==&mid=2247483695&idx=1&sn=91ea422913fc62579e020e941d1d059e#rd 微信重磅开源生产级paxos类库PhxPaxos,本文用科普的口吻向大家介绍PhxPaxos背后的实现原理以及一些有意思的细节。 开源地址: https://github.com/tencent-wechat/phxpaxos 点击阅读原文可自动...

0
0
发表于服务端专区
2019/11/27 20:20

微信自研生产级paxos类库PhxPaxos实现原理介绍

前言 本文是一篇无需任何分布式以及paxos算法基础的人可以看懂的。 标题主要有三个关键字,生产级,paxos,实现,涵盖了本文的重点。什么叫生产级,直译就是能用于生产线的,而非实验产品。生产级别拥有超高的稳定...

0
0
发表了博客
2019/03/17 16:34

从 Basic Paxos 到 Multi Paxos 到 Raft

在朴素Paxos算法中, 各个节点经过 Prepare 和 Accept 阶段, 会达成一个值, 这个值一旦达成, 就不能被修改, 如下例子: 图示1 上面的操作几乎没有任何实用价值, 于是演变成下面这种操作, 多个"实例(Instance)", 每个Instance负责一轮Paxos投票, 这样可以有序确定多个值, 形成日志; 图2 将日志输入到状态机, 就形成了一套K...

0
0
发表于服务端专区
2017/07/13 11:53

腾讯最热门30款开源项目

开源是个好东西,马化腾除了王者荣耀还是干了些好事情的。腾讯最近开源的一些比较热门的项目,可以学习了解下哈 0、Android 热修复框架 Tinker ★Star 8967 Tinker是Android的热修复解决方案库,它支持dex,库和资...

0
0
发表了博客
10/28 12:56

区块链汇总

区块链基础 区块链定义 区块链是一个分布式账本,一种通过去中心化,去信任的方式集体维护一个可靠数据库的技术方案 《区块链详细定义》 《区块链概述》 区块链的特征 开发,共识 去中心去信任 交易通明,双方匿名 不可篡改,可追溯 分类 公有链,联盟链,私有链 一、共识机制、共识算法 1、什么是共识机制? 我们都知道,...

0
0
2019/09/06 00:12

初探|Zookeeper基础之Paxos算法详解(一)

本篇文章将开启对分布式协调服务zk的学习,目前规划是从理论基础开始逐步到源码解析,深入学习这个在分布式系统中起着至关作用的组件。 对于 zk 理论的学习,最重要也是最难的知识点就是 Paxos 算法。所以我们首先...

0
5
发表于服务端专区
2019/09/27 07:58

分布式一致性协议

 介绍常见的分布式一致性协议 一.CAP/BASE 1. CAP理论  CAP理论又称之为布鲁尔定理(Brewer’S theorem),认为在设计一个大规模可扩放的网络服务时候不能同时兼容:一致性(consistency)、可用性(Availabil...

0
0
发表于AI & 大数据专区
04/15 19:46

分布式最强算法之Paxos透析

前言 上一篇:《分布式数据一致性模型有哪些?》 提到了Base理论提到了一个重要的点就是「最终一致性」 有什么方式能实现这种一致性呢? 本文主要对以下两个问题进行介绍: 一致性算法Paxos透析? Paxos算法的应用...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
暂无内容
2 评论
88 收藏
分享
返回顶部
顶部