键值存储仓库,用于配置共享和服务发现。
A highly-available key value store for shared configuration and service discovery.
使用 etcd 的场景默认处理的数据都是控制数据,对于应用数据,只推荐数据量很小,但是更新访问频繁的情况。
etcd 实现的这些功能, ZooKeeper都能实现。
ZooKeeper缺点:
etcd优点:
https://github.com/etcd-io/etcd/issues/7439
v3的gateway主要用于远程客户端安装使所有请求都从他本地的gateway连接到客户端,这样一个机器只有一个gateway和服务端的集群进行交互
proxy才是服务端跑的服务,v2用的rest http方式proxy,v3使用的rpc方式grpcproxy
对于用户数增长连接变多的问题可以考虑搭建proxy集群收敛连接数
watch的连接数量要受服务端机器内存的限制
https://etcd.io/docs/v3.4.0/benchmarks/etcd-3-watch-memory-benchmark/
https://github.com/etcd-io/etcd/blob/master/Documentation/op-guide/performance.md
proxy的好处是可以把多个client的watch合并为一个watch,限制是合并后的watch可能有延迟会和直连的结果不同步,另一个好处是可以合并多个客户端的租约为一个
鉴权方式是基于User和Role
只读、只写、可读写三种权限,权限即对指定目录或key的读写权限。
安全问题有针对用户名密码的鉴权机制和TLS
v3的鉴权是针对连接的鉴权 rpc长连接; v2是针对rest请求的鉴权,每次请求都需要验证 性能上优先考虑使用v3
如果需要更加复杂的权限控制可能需要自己写一个proxy或者改官方提供的proxy
etcd官方文档 https://etcd.io/docs/v3.4.0/ https://github.com/etcd-io/etcd/tree/master/Documentation
中文版 https://doczhcn.gitbook.io/etcd/index
etcd:从应用场景到实现原理的全方位解读 https://www.infoq.cn/article/etcd-interpretation-application-scenario-implement-principle
网友92.*.*.45[火星]2021-03-06 04:02
网友13.*.*.6[火星]2021-03-06 03:43
网友101.*.*.78[火星]2021-03-06 03:26
网友17.*.*.48[火星]2021-03-06 03:03
发表评论
亲~ 评论内容是必须的哟! o(∩_∩)o
昵称
邮箱
主页
评论