资源:Waiter
Waiter 资源会等待 RuntimeConfig 资源满足某个结束条件,然后再返回。例如,假设您有一个分布式系统,其中每个节点都会在启动过程中写入一个变量资源,以指示节点的准备情况。
然后,您可以配置 Waiter 资源,并将成功条件设置为等待一定数量的节点已签入。之后,您的应用会在满足条件且等待器成功返回后运行一些任意代码。
Waiter 资源一经创建便不可更改。
如需详细了解如何使用等待器,请参阅创建等待器文档。
JSON 表示法 | |
---|---|
{ "name": string, "timeout": string, "failure": { object( |
字段 | |
---|---|
name |
Waiter 资源的名称,格式为:
创建 Waiter 资源后,您将无法更改资源名称。 |
timeout |
[必需] 指定等待器的超时时间(以秒为单位),从调用 该时长以秒为单位,最多包含九个小数位,以“ |
failure |
[可选] 此 Waiter 的失败条件。如果满足此条件, |
success |
[必填] 成功条件。如果满足此条件, |
createTime |
仅限输出。此 Waiter 资源的创建时间。将 此时间戳采用 RFC3339 世界协调时间 (UTC)(即“祖鲁时”)格式,且精确到纳秒。示例: |
done |
仅限输出。如果值为 如果为 true,则表示 Waiter 已完成。如果 Waiter 因超时或失败而完成,系统会设置 |
error |
仅限输出。如果 Waiter 因失败或超时而结束,系统会设置此值。 |
EndCondition
Waiter 资源正在等待的条件。
JSON 表示法 | |
---|---|
{
"cardinality": {
object( |
字段 | |
---|---|
cardinality |
|
基数
Waiter 资源的基数条件。当指定路径前缀下的变量数达到预定义数量时,基数条件就满足了。例如,如果您设置了基数条件,其中 path
设置为 /foo
,路径数设置为 2
,则以下变量将满足 RuntimeConfig 资源中的条件:
/foo/variable1 = "value1"
/foo/variable2 = "value2"
/bar/variable3 = "value3"
但是,如果将 number
设置为 3
,则不会满足相同的条件,因为只有 2 条路径以 /foo
开头。基数条件是递归的;系统会统计特定路径前缀下的所有子树。
JSON 表示法 | |
---|---|
{ "path": string, "number": number } |
字段 | |
---|---|
path |
要监控的变量子树的根。例如 |
number |
必须存在的 |
方法 |
|
---|---|
|
创建 Waiter 资源。 |
|
删除具有指定名称的等待器。 |
|
获取单个等待器的相关信息。 |
|
列出给定配置中的等待器。 |
|
返回调用者对指定资源拥有的权限。 |