![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
分布式系统
柳清风09
这个作者很懒,什么都没留下…
展开
-
把对象存储转为文件存储,到底香不香?
目前开源的文件存储有很多,譬如NFS、GlusterFS、CephFS等,但实话实话这些文件存储都存在一定的问题,譬如NFS的多集群要折腾、GlusterFS的小文件存储性能差、CephFS的运维复杂度和稳定性不高。结合公司的业务场景:图片、pdf、文档 存储的特性,在公司内部主推的是对象存储。但在推广对象存储的时候,也面临一些老系统的改造压力,这些老系统之前都是使用商业NAS,如果迁移到对象存储需要改造的点有很多,而且还需要考虑历史数据的读取。如果对象存储能够保持和之前商业NAS一样的有个文件系统,通过原创 2020-05-14 09:52:19 · 1409 阅读 · 0 评论 -
raft算法-顺带处理前任的事-看似随心却是精心
今天在跑raft算法的时候,突然发现一个有意思的细节:如何处理前任未提交的日志。我们都知道raft选举的时候会综合考虑任期(term)和日志索引(index),优先选择具备最新的数据的节点成为master,这个其实非常容易理解,这是为了最大化保持数据。但这里面有个小细节就是,如下图所示,S3在任期7的时候提交了一个日志,但它还没来得及复制就挂了。之后master切换到其他节点。如果此时其他...原创 2020-04-05 14:45:59 · 321 阅读 · 0 评论 -
记录ceph对象存储的一个bug
我们的对象存储是基于ceph的对象存储搭建的,测试环境是N版本的,生产环境是M版本的。业务使用的是doesObjectExist这个API,核心Java代码如下 boolean exists = s3Client.doesObjectExist(bucketName, object+"ss"); if (exists) { System.ou...原创 2020-04-04 12:39:19 · 626 阅读 · 0 评论 -
gossip协议的原理和实战应用
先理解一下gossip协议:在一个有界网络中,每个节点都随机地与其他节点通信,经过一番杂乱无章的通信,最终所有节点的状态都会达成一致。每个节点可能知道所有其他节点,也可能仅知道几个邻居节点,只要这些节可以通过网络连通,最终他们的状态都是一致的,当然这也是疫情传播的特点。 简单的描述下这个协议,首先要传播谣言就要有种子节点。种子节点每秒都会随机向其他节点发送自己所拥有的节点列表,以及需要传播的消息...原创 2018-03-26 15:27:36 · 17394 阅读 · 1 评论 -
关于gossip的网络的通信次数分析
gossip网络中,如果是图结构, 上面的图,假设每个人都掌握一个秘密,那么通过多少次交流过后,这些秘密能被所以人知道呢? 先1-4交流,这样1和4都掌握了1、4消息,同理,2和3交流,这样2和3节点都掌握2、3信息 然后通过1和3交流、2和4交流,这样通过4次交流,每个人掌握的秘密就可以被分享了 这有f(1) =0 ; f(2)=1; f(3)=2n - 3 n>=3 如...原创 2018-03-27 11:18:44 · 803 阅读 · 0 评论