이 페이지에서는 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에 직접 요청을 보냅니다.
콘솔
콘솔에서 Cloud Tasks > 큐 페이지로 이동합니다. Google Cloud
큐 만들기 를 클릭합니다.
큐 이름을 입력합니다(예:
my-queue).리전 목록에서 큐가 실행될 지원되는 위치 를 선택합니다(예:
asia-south1).원하는 경우 큐를 추가로 구성할 수 있습니다.
만들기 를 클릭합니다.
gcloud
gcloud tasks queues create
명령어를 사용하여 큐를 만듭니다.
gcloud tasks queues create QUEUE_ID \
--location=LOCATION다음을 바꿉니다.
QUEUE_ID: 큐에 할당한 식별자입니다(예:my-queue).LOCATION: 큐가 실행될 지원되는 리전 입니다(예:asia-south1).
gcloud CLI 명령어의 다른 플래그를 사용하면 비율 제한, 재시도 옵션, 큐 유형 등을 구성할 수 있습니다.
REST API
큐를 만들려면
projects.locations.queues.create
메서드를 사용합니다.
요청 데이터를 사용하기 전에 다음을 바꿉니다.
PROJECT_ID: 프로젝트 ID입니다. Google CloudLOCATION: 큐가 실행될 지원되는 리전입니다(예:asia-south1).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에 직접 요청을 보냅니다.
콘솔
콘솔에서 Cloud Tasks > 큐 페이지로 이동합니다. Google Cloud
녹색 체크표시 는 큐가 실행 중임을 나타냅니다.
자세한 내용을 보려면 큐 이름을 클릭한 후 구성 탭을 클릭합니다.
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: 프로젝트 ID입니다. Google CloudLOCATION: 큐가 배포되는 리전입니다(예: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여러 위치를 검색하려면 여러 요청을 수행해야 합니다.
큐 할당량에 도달했는지 확인합니다.
콘솔에서 Cloud Tasks API의 API/서비스 세부정보 페이지로 이동합니다. Google Cloud
할당량 및 시스템 한도 탭을 클릭합니다.
할당량을 늘리려면 할당량 행에서 더보기 아이콘 > 할당량 수정을 클릭합니다.
자세한 내용은 할당량 조정 요청을 참조하세요.
명령어를 다시 실행하여 큐를 만들고 각 단계가 올바르게 완료되었는지 확인합니다.