分布式

2019-10-10  本文已影响0人  RedHatMe

Kafka:

kafka的安装包自带 了zk。用于协调kafka单个server。官网给的图狠明确了。


image.png

ES:

1.Elasticsearch是一个基于Lucene的分布式实时搜索框架,它本身能够接受用户发来的http 请求, 集群节点之2.间也会有相关的通信。
3.Elasticsearch中所有的节点组成为一个集群是依赖一个叫gossip协议。
4.ZenDiscovery是ES自己实现的一套用于节点发现和选主等功能的模块,没有依赖Zookeeper等工具。

5.RAFT vs ZenDiscovery : raft是一个被论证过正确性的算法,而ES的算法是一个没有经过论证的算法,只能在实践中发现问题,做bug fix,这是我认为最大的不同。

Redis

  1. redis 官方给出的cluster方案节点间的通信方式也是gossip协议。


    image.png
  2. 总体方案有以下几种:
    官方cluster方案
    twemproxy代理方案
    哨兵模式
    codis
    客户端分片
    其中,twemproxy | codis 两个方案目前来看都是代理方式。

引用:

《从Paxos到Zookeeper分布式一致性原理与实践》

分布式系统架构--左耳朵提供的资料
https://www.infoq.cn/article/2018/05/distributed-system-architecture

ES节点通信:
https://www.nosuchfield.com/2019/03/18/How-Elasticsearch-elected-the-master/
Elasticsearch分布式一致性原理剖析(一)-节点篇
https://zhuanlan.zhihu.com/p/34830403

Redis方案
https://cloud.tencent.com/developer/article/1163711
官方方案
https://www.cnblogs.com/kerwinC/p/6611634.html
Redis节点通信
https://www.jianshu.com/p/6942e8d3e596

上一篇下一篇

猜你喜欢

热点阅读