【发布时间】:2021-11-18 23:48:54
【问题描述】:
我在 Golang 我的应用程序中使用 etcd 存储配置,运行了一段时间,我在 etcd 中发现了两个相同的键,这对我来说很好奇,etcd 中的 key 不是唯一的?
我使用etcdctl get --prefix / 获取密钥。
【问题讨论】:
标签: etcd
我在 Golang 我的应用程序中使用 etcd 存储配置,运行了一段时间,我在 etcd 中发现了两个相同的键,这对我来说很好奇,etcd 中的 key 不是唯一的?
我使用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 部分时,您只会获得给定键的值(bar 用于键 foo),但是当您添加 --prefix 时,您将获得所有以 foo 开头的键的值。
【讨论】:
问题是重复键包含一些特殊字符...
【讨论】: