Cloud Cost Sense

Google Cloud Tasks 비용: 작업, 재시도, 워커 계산

API 작업, 전송 시도, payload 크기, 재시도, 네트워크 전송, worker 사용량으로 Google Cloud Tasks 비용을 추정합니다.

생성한 task가 아니라 과금 작업 수를 계산하세요

Cloud Tasks는 API 호출과 push delivery attempt를 operation으로 과금합니다. 매월 첫 100만 operation은 무료이고 다음 구간부터 100만 건 단위 요금이 적용됩니다. Task 하나에는 보통 create call 한 번과 성공한 delivery 한 번이라는 최소 두 operation이 생기므로 task 수만 보면 사용량을 과소평가합니다. List call과 다른 API action도 operation을 더할 수 있습니다.

Payload는 32 KB 단위로 나뉘어 계산됩니다. 따라서 96 KB task는 생성할 때 3 operation, 한 번 전달할 때 다시 3 operation으로 계산됩니다. 월간 API action과 delivery attempt에 각각 payload chunk 수를 곱하고 현재 무료 할당량을 뺀 뒤, 공식 Cloud Tasks 가격 페이지에서 최신 구간 요금을 확인하세요.

재시도와 downstream 처리 비용을 따로 잡으세요

Timeout이나 worker의 실패 응답으로 생긴 retry를 포함해 모든 push delivery attempt가 과금 대상입니다. 항상 한 번 전달된다고 가정하지 말고 예상 task 수 × 평균 attempt 수로 계산하세요. 최대 시도 횟수와 retry 기간을 제한하고 exponential backoff를 쓰며, 반복 전달이 database write, message, 유료 외부 API 호출을 중복시키지 않도록 handler를 idempotent하게 만드세요.

Cloud Tasks 요금에는 task를 처리하는 서비스 비용이 포함되지 않습니다. 매 attempt가 만드는 Cloud Run, Functions, App Engine, database, logging, 외부 API 사용량을 더하세요. HTTP target에는 일반 network charge도 생길 수 있으므로 구조상 가능하면 queue와 worker를 가깝게 두고 실제 network path를 기준으로 계산해야 합니다.

Dispatch rate로 worker 예산을 보호하세요

Queue rate limit는 첫 시도와 retry 모두에 적용됩니다. Worker가 안전하게 처리할 수 있는 용량에 맞춰 초당 최대 dispatch 수와 최대 동시 dispatch 수를 설정하세요. Burst를 완화하면 추가 attempt, 지연, downstream compute·database 비용을 늘리는 429 또는 503 응답을 줄일 수 있습니다.

Task attempt 수, 응답 코드, queue depth, worker 실행 시간을 함께 모니터링하세요. Queue 자체가 저렴해도 비싸거나 과부하된 target을 노출할 수 있습니다. 정상 트래픽, 실패 급증, 예약된 burst를 각각 대입해 Cloud Tasks operation과 전체 처리 비용을 함께 예산에 반영하세요.

Cloud Tasks를 Cloud Run job 및 예약 workload와 비교하세요.