首页 > 解决方案 > 为什么 ETCD 存在两个相同的密钥?

问题描述

etcd为我的应用程序使用 Golang 的商店配置,运行了一段时间,我发现其中有两个相同的键,etcd这对我来说很好奇,keyinetcd不是唯一的吗?

我用etcdctl get --prefix /得到钥匙。

标签: etcd

解决方案


通过使用--prefix选项,您向 etcd 询问以某些文本开头/的所有键(在您的情况下)。考虑这个例子:

$ etcdctl put foo bar
OK
$ etcdctl put foofoo barbar
OK
$ etcdctl put baz baz
OK
$ etcdctl get foo
foo
bar
$ etcdctl get --prefix foo
foo
bar
foofoo
barbar

当您跳过--prefix部分时,您只会获得给定键(barfor key foo)的值,但是当您添加时,--prefix您将获得所有以foo开头的键的值。


推荐阅读