이 페이지에서는 Cloud Tasks 큐를 만드는 방법을 설명합니다. 태스크가 큐에 추가되면 큐에서 태스크를 전달하고 작업자라고도 하는 서비스에서 안정적으로 처리하도록 합니다.
다음에 유의하세요.
큐 이름은 프로젝트 ID, 위치, 큐 ID의 세 부분으로 구성됩니다. 프로젝트 ID를 제공하는 Google Cloud 프로젝트가 있어야 합니다.
App Engine 대상 태스크를 사용하는 경우 특정 리전에 위치해 있으며 큐와 핸들러가 실행되는 App Engine 애플리케이션도 있어야 합니다. 앱을 추가할 때 지역을 확인합니다.
HTTP 대상 큐를 사용할 때는 App Engine 앱이 필요하지 않습니다. 큐를 만들 때 Google Cloud 위치를 선택합니다.
큐 만들기
다음과 같은 방법으로 대기열을 만들 수 있습니다.
- Google Cloud 콘솔에서 다음을 수행합니다.
- 터미널 또는 Cloud Shell에서 Google Cloud CLI 사용
- Cloud Tasks API에 직접 요청을 전송하는 방법
콘솔
Google Cloud 콘솔에서 Cloud Tasks > 대기열 페이지로 이동합니다.
Create queue(큐 만들기)를 클릭합니다.
Queue name을 입력합니다(예:
my-queue).리전 목록에서 큐가 실행될 지원되는 위치를 선택합니다(예:
asia-south1).조직에서 리소스 위치를 제한하고
us-central1또는us-central2에서 큐를 만들려면 조직 정책이us-central1및us-central2모두에서 큐 생성을 허용해야 합니다 (리전 중 하나에만 큐가 필요한 경우에도 해당).원하는 경우 대기열을 추가로 구성할 수 있습니다.
만들기를 클릭합니다.
gcloud
gcloud tasks queues create 명령어를 사용하여 큐를 만듭니다.
gcloud tasks queues create QUEUE_ID \
--location=LOCATION다음을 바꿉니다.
QUEUE_ID: 큐에 할당한 식별자입니다(예:my-queue).LOCATION: 큐가 실행될 지원되는 리전입니다(예:asia-south1).조직에서 리소스 위치를 제한하고
us-central1또는us-central2에서 큐를 만들려면 조직 정책이us-central1및us-central2모두에서 큐 생성을 허용해야 합니다 (리전 중 하나에만 큐가 필요한 경우에도 해당).
gcloud CLI 명령어의 다른 플래그를 사용하면 비율 제한, 재시도 옵션, 대기열 유형 등을 구성할 수 있습니다.
REST API
대기열을 만들려면 projects.locations.queues.create 메서드를 사용합니다.
요청 데이터를 사용하기 전에 다음을 바꿉니다.
PROJECT_ID: Google Cloud 프로젝트 ID입니다.LOCATION: 큐가 실행될 지원되는 리전입니다(예:asia-south1).조직에서 리소스 위치를 제한하고
us-central1또는us-central2에서 큐를 만들려면 조직 정책이us-central1및us-central2모두에서 큐 생성을 허용해야 합니다 (리전 중 하나에만 큐가 필요한 경우에도 해당).QUEUE_ID: 큐에 할당한 식별자입니다(예:my-queue).
Queue 리소스의 기타 구성 가능한 속성에는 비율 제한, 재시도 옵션, 대기열 유형 등이 있습니다.
JSON 요청 본문:
{
"name": "projects/PROJECT_ID/locations/LOCATION/queues/QUEUE_ID"
}
요청을 보내려면 다음 옵션 중 하나를 펼칩니다.
성공한 경우 응답 본문에 새로 생성된 Queue 인스턴스가 포함됩니다.
{
"name": "projects/PROJECT_ID/locations/LOCATION/queues/QUEUE_ID",
"rateLimits": {
"maxDispatchesPerSecond": 500,
"maxBurstSize": 100,
"maxConcurrentDispatches": 1000
},
"retryConfig": {
"maxAttempts": 100,
"minBackoff": "0.100s",
"maxBackoff": "3600s",
"maxDoublings": 16
},
"state": "RUNNING"
}
새로 만든 큐를 사용할 수 있으려면 몇 분 정도 걸릴 수 있습니다.
현재 재생목록 설명
다음과 같은 방법으로 대기열이 성공적으로 생성되었는지 확인할 수 있습니다.
- Google Cloud 콘솔에서 다음을 수행합니다.
- 터미널 또는 Cloud Shell에서 gcloud CLI 사용
Cloud Tasks API에 직접 요청을 전송하는 방법
콘솔
Google Cloud 콘솔에서 Cloud Tasks > 대기열 페이지로 이동합니다.
녹색 체크표시 는 대기열이 실행 중임을 나타냅니다.
자세한 내용을 보려면 대기열 이름을 클릭한 다음 구성 탭을 클릭합니다.
gcloud
gcloud tasks queues describe 명령어를 사용하여 대기열이 성공적으로 만들어졌는지 확인합니다.
gcloud tasks queues describe QUEUE_ID \
--location=LOCATION다음을 바꿉니다.
QUEUE_ID: 큐 ID(닉네임)LOCATION: 큐의 위치
출력은 다음과 비슷하게 표시됩니다.
name: projects/PROJECT_ID/locations/LOCATION/queues/QUEUE_ID rateLimits: maxBurstSize: 100 maxConcurrentDispatches: 1000 maxDispatchesPerSecond: 500.0 retryConfig: maxAttempts: 100 maxBackoff: 3600s maxDoublings: 16 minBackoff: 0.100s state: RUNNING
REST API
대기열을 가져오려면 projects.locations.queues.get 메서드를 사용합니다.
요청 데이터를 사용하기 전에 다음을 바꿉니다.
PROJECT_ID: Google Cloud 프로젝트 ID입니다.LOCATION: 큐가 배포되는 리전입니다(예:us-central1).QUEUE_ID: 큐의 짧은 ID입니다(예:my-queue).
요청을 보내려면 다음 옵션 중 하나를 펼칩니다.
성공하면 응답 본문에 Queue 인스턴스가 포함됩니다.
{
"name": "projects/PROJECT_ID/locations/LOCATION/queues/QUEUE_ID",
"rateLimits": {
"maxDispatchesPerSecond": 500,
"maxBurstSize": 100,
"maxConcurrentDispatches": 1000
},
"retryConfig": {
"maxAttempts": 100,
"minBackoff": "0.100s",
"maxBackoff": "3600s",
"maxDoublings": 16
},
"state": "RUNNING"
}
대기열 생성 문제 해결
예상한 출력이 표시되지 않으면 다음을 시도해 보세요.
- 대기열이 초기화될 때까지 1분 이상 기다립니다.
동일한 ID의 대기열이 기존에 이미 존재하지 않는지 확인합니다.
gcloud tasks queues list명령어를 사용하여 프로젝트의 대기열을 볼 수 있습니다.gcloud tasks queues list \ --location=LOCATION여러 위치를 검색하려면 여러 요청을 수행해야 합니다.
대기열 할당량에 도달했는지 확인합니다.
Google Cloud 콘솔에서 Cloud Tasks API의 API/서비스 세부정보 페이지로 이동합니다 .
할당량 및 시스템 한도 탭을 클릭합니다.
할당량을 늘리려면 할당량 행에서 줄임표 아이콘 > 할당량 수정을 클릭합니다.
자세한 내용은 할당량 조정 요청을 참고하세요.
명령어를 다시 실행하여 대기열을 만들고 각 단계가 올바르게 완료되었는지 확인합니다.