ETCD 系列之简介篇

edenCC
帖子: 7
注册时间: 周六 11月 19, 2016 4:18 pm

ETCD 系列之简介篇

帖子edenCC » 周二 11月 22, 2016 6:04 pm

ETCD是用于共享配置和服务发现的分布式,一致性的KV存储系统。该项目目前最新稳定版本为2.3.0. 具体信息请参考[项目首页]和[Github]。ETCD是CoreOS公司发起的一个开源项目,授权协议为Apache。

DraggedImage

提供配置共享和服务发现的系统比较多,其中最为大家熟知的是[Zookeeper](后文简称ZK),而ETCD可以算得上是后起之秀了。在项目实现,一致性协议易理解性,运维,安全等多个维度上,ETCD相比Zookeeper都占据优势。

2. ETCD vs ZK
本文选取ZK作为典型代表与ETCD进行比较,而不考虑[Consul]项目作为比较对象,原因为Consul的可靠性和稳定性还需要时间来验证(项目发起方自身服务并未使用Consul, 自己都不用)。

一致性协议: ETCD使用[Raft]协议, ZK使用ZAB(类PAXOS协议),前者容易理解,方便工程实现;
运维方面:ETCD方便运维,ZK难以运维;
项目活跃度:ETCD社区与开发活跃,ZK已经快死了;
API:ETCD提供HTTP+JSON, gRPC接口,跨平台跨语言,ZK需要使用其客户端;
访问安全方面:ETCD支持HTTPS访问,ZK在这方面缺失;

ETCD的使用场景
和ZK类似,ETCD有很多使用场景,包括:
  • 配置管理
    服务注册于发现
    选主
    应用调度
    分布式队列
    分布式锁
ETCD读写性能
按照官网给出的[Benchmark], 在2CPU,1.8G内存,SSD磁盘这样的配置下,单节点的写性能可以达到16K QPS, 而先写后读也能达到12K QPS。这个性能还是相当可观的。

点击原文阅读更多内容: https://yq.aliyun.com/articles/11035

回到 “消息队列及中间件”

在线用户

用户浏览此论坛: 没有注册用户 和 1 访客

cron