REST Resource: projects.configs.waiters

리소스: Waiter

대기자 리소스는 반환하기 전에 RuntimeConfig 리소스 내의 일부 종료 조건이 충족될 때까지 기다립니다. 예를 들어 각 노드가 시작 프로세스의 일부로 노드의 준비 상태를 나타내는 변수 리소스에 쓰는 분산 시스템이 있다고 가정해 보겠습니다.

그런 다음 일정 수의 노드가 체크인할 때까지 기다리도록 설정된 성공 조건으로 대기자 리소스를 구성합니다. 그런 다음 조건이 충족되고 웨이터가 성공적으로 반환된 후에 애플리케이션이 임의의 코드를 실행합니다.

Waiter 리소스는 생성되면 변경할 수 없습니다.

대기열 사용에 관한 자세한 내용은 대기열 만들기 문서를 참고하세요.

JSON 표현
{
  "name": string,
  "timeout": string,
  "failure": {
    object(EndCondition)
  },
  "success": {
    object(EndCondition)
  },
  "createTime": string,
  "done": boolean,
  "error": {
    object(Status)
  }
}
필드
name

string

Waiter 리소스의 이름입니다(형식:

projects/[PROJECT_ID]/configs/[CONFIG_NAME]/waiters/[WAITER_NAME]

[PROJECT_ID]는 유효한 Google Cloud 프로젝트 ID여야 하며, [CONFIG_NAME]는 유효한 RuntimeConfig 리소스여야 하며, [WAITER_NAME]는 RFC 1035 세그먼트 사양과 일치해야 하며, [WAITER_NAME]의 길이는 64바이트 미만이어야 합니다.

Waiter 리소스를 만든 후에는 리소스 이름을 변경할 수 없습니다.

timeout

string (Duration format)

[필수] waiters().create 메서드가 호출된 시점부터 시작되는 대기자의 제한 시간을 초 단위로 지정합니다. 성공 또는 실패 조건이 충족되기 전에 이 시간이 지나면 대기자가 실패하고 error 코드를 DEADLINE_EXCEEDED로 설정합니다.

초 단위 기간으로, 소수점 아래 9자리까지 지정 가능하며 's'로 끝납니다(예: "3.5s").

failure

object(EndCondition)

[선택사항] 이 대기자의 실패 조건입니다. 이 조건이 충족되면 donetrue로 설정되고 error 코드가 ABORTED로 설정됩니다. 실패 조건이 성공 조건보다 우선 적용됩니다. 두 조건이 모두 충족되면 실패가 표시됩니다. 이 값은 선택사항입니다. 오류 조건이 설정되지 않으면 유일한 오류 시나리오는 시간 초과입니다.

success

object(EndCondition)

[필수] 성공 조건입니다. 이 조건이 충족되면 donetrue로 설정되고 error 값은 설정되지 않은 상태로 유지됩니다. 실패 조건이 성공 조건보다 우선 적용됩니다. 두 조건이 모두 충족되면 실패가 표시됩니다.

createTime

string (Timestamp format)

출력 전용입니다. 이 Waiter 리소스가 생성된 순간입니다. 이 인스턴스에 timeout 값을 추가하면 대기자의 제한 시간 기한이 됩니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프로 정밀도는 나노초 수준입니다. 예를 들면 "2014-10-02T15:01:23.045123456Z"입니다.

done

boolean

출력 전용입니다. 값이 false이면 웨이터가 여전히 조건 중 하나가 충족되기를 기다리고 있다는 의미입니다.

true인 경우 대기자가 완료된 것입니다. 시간 초과 또는 실패로 인해 대기자가 종료되면 error가 설정됩니다.

error

object(Status)

출력 전용입니다. 실패 또는 시간 초과로 인해 대기자가 종료된 경우 이 값이 설정됩니다.

EndCondition

대기자 리소스가 기다리는 조건입니다.

JSON 표현
{
  "cardinality": {
    object(Cardinality)
  }
}
필드
cardinality

object(Cardinality)

EndCondition의 카디널리티입니다.

카디널리티

대기자 리소스의 카디널리티 조건입니다. 카디널리티 조건은 지정된 경로 접두사 아래의 변수 수가 사전 정의된 수에 도달할 때 충족됩니다. 예를 들어 path/foo로 설정되고 경로 수가 2로 설정된 카디널리티 조건을 설정하면 다음 변수가 RuntimeConfig 리소스의 조건을 충족합니다.

  • /foo/variable1 = "value1"
  • /foo/variable2 = "value2"
  • /bar/variable3 = "value3"

하지만 number3로 설정하면 동일한 조건을 충족하지 않습니다. /foo로 시작하는 경로가 2개뿐이기 때문입니다. 카디널리티 조건은 재귀적입니다. 특정 경로 접두사 아래의 모든 하위 트리가 계산됩니다.

JSON 표현
{
  "path": string,
  "number": number
}
필드
path

string

모니터링할 변수 하위 트리의 루트입니다. 예를 들면 /foo입니다.

number

number

이 조건을 충족하기 위해 path 아래에 있어야 하는 변수 수입니다. 지정하지 않을 경우 기본값은 1입니다.

메서드

create

대기자 리소스를 만듭니다.

delete

지정된 이름의 대기자를 삭제합니다.

get

단일 대기자에 관한 정보를 가져옵니다.

list

지정된 구성 내의 대기자를 나열합니다.

testIamPermissions

지정된 리소스에 대해 호출자가 보유한 권한을 반환합니다.