1. Giới thiệu

Cloud Tasks là một dịch vụ xếp hàng đợi được quản lý toàn diện để quản lý việc thực thi, gửi và phân phối một số lượng lớn các tác vụ.
Cloud Tasks cho phép bạn tách các phần công việc (gọi là tác vụ) có thể được thực hiện độc lập (ví dụ: tác vụ cập nhật một mục nhập trong cơ sở dữ liệu), bên ngoài quy trình ứng dụng chính và gửi chúng đi để được xử lý không đồng bộ bằng cách sử dụng các trình xử lý mà bạn tạo.
Tác vụ được chuyển này sẽ được thêm vào một hàng đợi, duy trì tác vụ cho đến khi tác vụ được thực thi thành công hoặc gặp lỗi. Dựa trên cấu hình, hàng đợi cũng có thể đóng vai trò là một cơ chế kiểm soát luồng điều phối. Bạn tạo và định cấu hình hàng đợi, sau đó hàng đợi này sẽ được dịch vụ Cloud Tasks quản lý. Sau khi bạn thêm các tác vụ, hàng đợi sẽ gửi các tác vụ và đảm bảo rằng các worker xử lý chúng một cách đáng tin cậy.

Một số tính năng chính của Cloud Tasks là:
- Mục tiêu HTTP: Thêm các tác vụ nhắm đến mọi dịch vụ HTTP đang chạy trên Compute Engine, Google Kubernetes Engine, Cloud Run, Cloud Functions hoặc các hệ thống tại chỗ một cách an toàn bằng cách sử dụng phương thức xác thực OAuth/OIDC theo tiêu chuẩn ngành.
- Loại bỏ các tác vụ trùng lặp: Các tác vụ được thêm nhiều lần sẽ chỉ được gửi đi một lần.
- Đảm bảo phân phối: Các tác vụ được đảm bảo phân phối ít nhất một lần và hầu hết các tác vụ được phân phối chính xác một lần.
- Kiểm soát tốc độ và số lần thử lại: Kiểm soát quá trình thực thi bằng cách đặt tốc độ gửi nhiệm vụ, số lần thử tối đa và thời gian chờ tối thiểu giữa các lần thử.
- Lên lịch cho tương lai: Kiểm soát thời gian chạy một tác vụ.
Trong lớp học lập trình này, trước tiên, bạn sẽ tìm hiểu cách tạo và sử dụng một hàng đợi Cloud Tasks thông thường cho các tác vụ đích HTTP. Sau đó, bạn sẽ tìm hiểu cách sử dụng chế độ ghi đè URI HTTP ở cấp hàng đợi và API BufferTask mới để dễ dàng đệm các yêu cầu HTTP bằng Cloud Tasks.
Kiến thức bạn sẽ học được
- Cách tạo tác vụ đích HTTP.
- Cách tạo các tác vụ đích HTTP bằng chế độ ghi đè URI HTTP ở cấp hàng đợi mới.
- Cách thay đổi các tác vụ đang chờ xử lý bằng chế độ ghi đè URI HTTP cấp hàng đợi mới.
- Cách dễ dàng hơn để lưu vào bộ nhớ đệm các yêu cầu HTTP bằng BufferTask API mới.
2. Thiết lập và yêu cầu
Thiết lập môi trường theo tốc độ của riêng bạn
- Đăng nhập vào Google Cloud Console rồi tạo một dự án mới hoặc sử dụng lại một dự án hiện có. Nếu chưa có tài khoản Gmail hoặc Google Workspace, bạn phải tạo một tài khoản.



- Tên dự án là tên hiển thị của những người tham gia dự án này. Đây là một chuỗi ký tự mà các API của Google không sử dụng. Bạn luôn có thể cập nhật thông tin này.
- Mã dự án là mã duy nhất trên tất cả các dự án trên Google Cloud và không thể thay đổi (bạn không thể thay đổi mã này sau khi đã đặt). Cloud Console sẽ tự động tạo một chuỗi duy nhất; thường thì bạn không cần quan tâm đến chuỗi này. Trong hầu hết các lớp học lập trình, bạn sẽ cần tham chiếu đến Mã dự án (thường được xác định là
PROJECT_ID). Nếu không thích mã nhận dạng được tạo, bạn có thể tạo một mã nhận dạng ngẫu nhiên khác. Hoặc bạn có thể thử tên người dùng của riêng mình để xem tên đó có được chấp nhận hay không. Bạn không thể thay đổi tên này sau bước này và tên này sẽ tồn tại trong suốt thời gian của dự án. - Để bạn nắm được thông tin, có một giá trị thứ ba là Số dự án mà một số API sử dụng. Tìm hiểu thêm về cả 3 giá trị này trong tài liệu.
- Tiếp theo, bạn cần bật tính năng thanh toán trong Cloud Console để sử dụng các tài nguyên/API trên đám mây. Việc thực hiện lớp học lập trình này sẽ không tốn nhiều chi phí, nếu có. Để tắt các tài nguyên nhằm tránh bị tính phí ngoài phạm vi hướng dẫn này, bạn có thể xoá các tài nguyên đã tạo hoặc xoá dự án. Người dùng mới của Google Cloud đủ điều kiện tham gia chương trình Dùng thử miễn phí trị giá 300 USD.
Khởi động Cloud Shell
Mặc dù có thể vận hành Google Cloud từ xa trên máy tính xách tay, nhưng trong lớp học lập trình này, bạn sẽ sử dụng Google Cloud Shell, một môi trường dòng lệnh chạy trên Cloud.
Trên Bảng điều khiển Google Cloud, hãy nhấp vào biểu tượng Cloud Shell trên thanh công cụ ở trên cùng bên phải:

Quá trình này chỉ mất vài phút để cung cấp và kết nối với môi trường. Khi quá trình này kết thúc, bạn sẽ thấy như sau:

Máy ảo này được trang bị tất cả các công cụ phát triển mà bạn cần. Nó cung cấp một thư mục chính có dung lượng 5 GB và chạy trên Google Cloud, giúp tăng cường đáng kể hiệu suất mạng và hoạt động xác thực. Bạn có thể thực hiện mọi thao tác trong lớp học lập trình này trong trình duyệt. Bạn không cần cài đặt bất cứ thứ gì.
3. Tạo một hàng đợi thông thường cho các tác vụ đích HTTP
Trong bước đầu tiên này, bạn sẽ tìm hiểu cách tạo một hàng đợi Cloud Tasks thông thường và thêm các tác vụ HTTP vào hàng đợi đó để nhắm đến một dịch vụ Cloud Run.

HTTP target tasks (Tác vụ đích HTTP) là gì?
Các tác vụ đích HTTP có thể nhắm đến mọi dịch vụ HTTP đang chạy trên Compute Engine, Google Kubernetes Engine, Cloud Run, Cloud Functions hoặc các hệ thống tại chỗ một cách an toàn bằng cách sử dụng phương thức xác thực OAuth/OIDC theo tiêu chuẩn ngành.
Triển khai dịch vụ Cloud Run
Trước tiên, hãy đảm bảo bạn đã bật các API bắt buộc:
gcloud services enable \ cloudtasks.googleapis.com \ run.googleapis.com
Triển khai một dịch vụ Cloud Run sẽ đóng vai trò là mục tiêu của các tác vụ HTTP:
SERVICE1=hello1 REGION=us-central1 gcloud run deploy $SERVICE1 \ --allow-unauthenticated \ --image=gcr.io/cloudrun/hello \ --region=$REGION
Tạo hàng đợi Cloud Tasks
Tạo một hàng đợi Cloud Tasks thông thường:
QUEUE1=http-queue LOCATION=us-central1 gcloud tasks queues create $QUEUE1 --location=$LOCATION
Tạm dừng hàng đợi để bạn có thể quan sát các tác vụ HTTP khi chúng được tạo:
gcloud tasks queues pause $QUEUE1 --location=$LOCATION
4. Tạo và kiểm thử một tác vụ HTTP
Trong bước này, bạn sẽ tạo một tác vụ HTTP để nhắm đến hàng đợi mà bạn đã tạo trước đó.
Tạo một tác vụ HTTP
Bạn có thể tạo các tác vụ HTTP bằng cách sử dụng gcloud:
gcloud tasks create-http-task \
--queue=$QUEUE1 \
--location=$LOCATION \
--url=$SERVICE1_URL \
--method=GET
Không bắt buộc: Bạn cũng có thể tạo một tác vụ HTTP bằng thư viện ứng dụng. Ví dụ: bạn có thể xem Program.cs để biết mẫu C# trong đó yêu cầu HTTP được bao bọc trong Task và TaskRequest trước khi được gửi đến Cloud Tasks bằng CloudTasksClient:
var taskRequest = new CreateTaskRequest
{
Parent = new QueueName(projectId, location, queue).ToString(),
Task = new Task
{
HttpRequest = new HttpRequest
{
HttpMethod = HttpMethod.Get,
Url = url
}
}
};
var client = CloudTasksClient.Create();
var response = client.CreateTask(taskRequest);
Bạn có thể chạy lệnh này như sau để tạo và thêm tác vụ vào hàng đợi:
dotnet run $PROJECT_ID $LOCATION $QUEUE1 $SERVICE1_URL
Kiểm thử tác vụ HTTP
Tại thời điểm này, tác vụ được tạo nhưng chưa được thực thi vì hàng đợi đang tạm dừng. Bạn có thể xác minh điều này bằng cách liệt kê các hàng đợi:
gcloud tasks queues list --location=$LOCATION
Bạn sẽ thấy hàng đợi ở trạng thái PAUSED:
QUEUE_NAME STATE http-queue PAUSED
Tiếp tục danh sách chờ:
gcloud tasks queues resume $QUEUE --location=$LOCATION
Kiểm tra nhật ký của dịch vụ Cloud Run:
gcloud logging read "resource.type=cloud_run_revision AND resource.labels.service_name=$SERVICE1" --limit 1
Bạn sẽ thấy rằng dịch vụ Cloud Run đã nhận được một yêu cầu GET HTTP từ Cloud Tasks:
httpRequest: latency: 0.227597158s protocol: HTTP/1.1 remoteIp: 35.243.23.192 requestMethod: GET requestSize: '415' requestUrl: https://hello1-idcwffc3yq-uc.a.run.app/ responseSize: '5510' serverIp: 216.239.32.53 status: 200 userAgent: Google-Cloud-Tasks
5. Tạo hàng đợi có cấu hình định tuyến
Trong bước này, bạn sẽ tìm hiểu cách tạo một hàng đợi Cloud Tasks có cấu hình định tuyến để thêm chế độ ghi đè URI HTTP bằng tính năng Cấu hình định tuyến tác vụ ở cấp hàng đợi. Sau đó, bạn sẽ thêm các tác vụ HTTP vào đó để nhắm đến dịch vụ Cloud Run đầu tiên và nhận thấy rằng cấu hình định tuyến sẽ ghi đè URI để định tuyến các tác vụ đến dịch vụ Cloud Run thứ hai.

Cấu hình định tuyến tác vụ ở cấp hàng đợi là gì?
Cấu hình định tuyến tác vụ ở cấp hàng đợi sẽ thay đổi hoạt động định tuyến tác vụ HTTP cho toàn bộ hàng đợi đối với tất cả các tác vụ đang chờ xử lý và tác vụ mới. Điều này giúp bạn dễ dàng tạo các tác vụ hơn vì không cần đặt mục tiêu HTTP ở cấp tác vụ và chuyển nhiều quyền kiểm soát hơn cho nhà cung cấp dịch vụ vì họ có thể đặt mục tiêu của tất cả tác vụ trong hàng đợi (ví dụ: định tuyến lưu lượng truy cập đến một phần phụ trợ khác nếu phần phụ trợ ban đầu ngừng hoạt động).
Bạn có thể thiết lập cấu hình sau ở cấp hàng đợi:
- Tiêu đề: Tiêu đề cấp hàng đợi (khi được chỉ định ở cấp hàng đợi) sẽ chèn tiêu đề cho tất cả các tác vụ trong hàng đợi.
- Phương thức HTTP: Phương thức HTTP khi được chỉ định ở cấp hàng đợi sẽ ghi đè phương thức HTTP cho tất cả các tác vụ trong hàng đợi.
- URI mục tiêu: Bạn có thể ghi đè riêng từng thành phần máy chủ lưu trữ, đường dẫn, truy vấn, cổng, giản đồ (HTTP hoặc HTTPS).
- Uỷ quyền: Cấu hình OIDC/OAuth khi được chỉ định ở cấp hàng đợi sẽ ghi đè cấu hình OIDC/OAuth ở cấp tác vụ.
Triển khai dịch vụ Cloud Run thứ hai
Triển khai dịch vụ Cloud Run thứ hai sẽ đóng vai trò là mục tiêu của chế độ ghi đè URI HTTP sau này:
SERVICE2=hello2 REGION=us-central1 gcloud run deploy $SERVICE2 \ --allow-unauthenticated \ --image=gcr.io/cloudrun/hello \ --region=$REGION
Lưu trữ máy chủ của URL dịch vụ để dùng sau:
SERVICE2_URL=$(gcloud run services describe $SERVICE2 --region $REGION --format 'value(status.url)') SERVICE2_HOST=$(echo $SERVICE2_URL | sed 's,http[s]*://,,g')
Tạo hàng đợi Cloud Tasks bằng cấu hình định tuyến
Tạo một hàng đợi có cấu hình định tuyến với chế độ ghi đè URI HTTP cho dịch vụ Cloud Run thứ hai.
QUEUE2=http-queue-uri-override gcloud beta tasks queues create $QUEUE2 \ --http-uri-override=host:$SERVICE2_HOST \ --location=$LOCATION
Xin lưu ý rằng chế độ ghi đè URI đề cập đến dịch vụ Cloud Run thứ hai. Mọi tác vụ HTTP được thêm vào hàng đợi sẽ ghi đè máy chủ URI ban đầu. Bạn có thể xem cấu hình hàng đợi:
gcloud beta tasks queues describe $QUEUE2 --location=$LOCATION
Bạn sẽ thấy httpTarget có một uriOverride trỏ đến máy chủ lưu trữ của dịch vụ thứ hai:
httpTarget:
uriOverride:
host: hello2-idcwffc3yq-uc.a.run.app
pathOverride: {}
queryOverride: {}
...
Tạm dừng hàng đợi để bạn có thể quan sát các tác vụ HTTP khi chúng được tạo:
gcloud tasks queues pause $QUEUE2 --location=$LOCATION
6. Tạo và kiểm thử một tác vụ HTTP cho hàng đợi bằng cấu hình định tuyến
Trong bước này, bạn sẽ tạo một tác vụ HTTP để nhắm đến dịch vụ đầu tiên và nhận thấy rằng URI của dịch vụ này bị hàng đợi ghi đè để trỏ đến dịch vụ thứ hai.
Tạo một tác vụ HTTP
Tạo một tác vụ HTTP bằng URL của dịch vụ đầu tiên:
gcloud tasks create-http-task \
--queue=$QUEUE2 \
--location=$LOCATION \
--url=$SERVICE1_URL \
--method=GET
Kiểm thử tác vụ HTTP
Tiếp tục danh sách chờ:
gcloud tasks queues resume $QUEUE2 --location=$LOCATION
Bạn sẽ thấy dịch vụ Cloud Run thứ hai (không phải dịch vụ đầu tiên) nhận được yêu cầu GET HTTP từ Cloud Tasks do chế độ ghi đè:
gcloud logging read "resource.type=cloud_run_revision AND resource.labels.service_name=$SERVICE2" --limit 1
--- httpRequest: latency: 0.228982142s protocol: HTTP/1.1 remoteIp: 35.187.132.84 requestMethod: GET requestSize: '426' requestUrl: https://hello2-idcwffc3yq-uc.a.run.app/ responseSize: '5510' serverIp: 216.239.34.53 status: 200 userAgent: Google-Cloud-Tasks
7. Thay đổi các việc cần làm đang chờ xử lý bằng cấu hình định tuyến
Bạn cũng có thể sử dụng cấu hình định tuyến để thay đổi URI HTTP của tất cả các tác vụ đang chờ xử lý trong hàng đợi. Điều này hữu ích nếu dịch vụ phụ trợ ngừng hoạt động và bạn muốn nhanh chóng chuyển đến một dịch vụ khác. Hãy xem cách hoạt động của tính năng này trong bước này.
Tạm dừng hàng đợi một lần nữa:
gcloud tasks queues pause $QUEUE2 --location=$LOCATION
Tạo một tác vụ HTTP có google.com làm URL của tác vụ:
gcloud tasks create-http-task \
--queue=$QUEUE2 \
--location=$LOCATION \
--url=https://www.google.com \
--method=GET
Nhiệm vụ đang ở trạng thái chờ xử lý vì hàng đợi đang tạm dừng.
Bây giờ, hãy cập nhật chế độ ghi đè URI HTTP để trỏ đến dịch vụ đầu tiên. Thao tác này sẽ ghi đè máy chủ lưu trữ của tác vụ đang chờ xử lý từ google.com thành máy chủ lưu trữ của dịch vụ đầu tiên:
SERVICE1_URL=$(gcloud run services describe $SERVICE1 --region $REGION --format 'value(status.url)') SERVICE1_HOST=$(echo $SERVICE1_URL | sed 's,http[s]*://,,g') gcloud beta tasks queues update $QUEUE2 \ --http-uri-override=host:$SERVICE1_HOST \ --location=$LOCATION
Tiếp tục danh sách chờ:
gcloud tasks queues resume $QUEUE2 --location=$LOCATION
Bạn sẽ thấy rằng dịch vụ Cloud Run đầu tiên đã nhận được một yêu cầu GET HTTP từ Cloud Tasks do chế độ ghi đè (thay vì google.com):
gcloud logging read "resource.type=cloud_run_revision AND resource.labels.service_name=$SERVICE1" --limit 1 --- httpRequest: latency: 0.228982142s protocol: HTTP/1.1 remoteIp: 35.187.132.84 requestMethod: GET requestSize: '426' requestUrl: https://hello1-idcwffc3yq-uc.a.run.app/ responseSize: '5510' serverIp: 216.239.34.53 status: 200 userAgent: Google-Cloud-Tasks
8. Tạo hàng đợi cho BufferTask API
Thông thường, bạn tạo các tác vụ bằng cách sử dụng API Tasks từ gcloud hoặc thư viện ứng dụng Tasks. Điều này gây khó khăn cho các ứng dụng khi phải bao bọc các yêu cầu HTTP vào Tasks bằng cách sử dụng thư viện ứng dụng, đồng thời tạo ra một mối quan hệ phụ thuộc giữa các ứng dụng và thư viện ứng dụng Tasks.
Trong bước này, bạn sẽ thấy cách tận dụng chế độ ghi đè URI HTTP ở cấp hàng đợi và API BufferTask mới để tạo các tác vụ đích HTTP dễ dàng hơn bằng cách chỉ cần gửi một yêu cầu HTTP. Mọi ứng dụng có thể gửi yêu cầu HTTP hiện có thể tạo các tác vụ đích HTTP.

BufferTask API là gì?
CreateTask API là cách cũ để tạo Tasks và yêu cầu ứng dụng gửi một đối tượng Task đến API với tất cả các trường bắt buộc được đặt.
BufferTask API là một tính năng mới cho phép người dùng tạo một Tác vụ HTTP mà không cần cung cấp bất kỳ Cấu hình tác vụ nào (URL loại HTTP, tiêu đề, uỷ quyền), cho phép bạn chỉ cần gửi một thông báo hoặc nội dung yêu cầu đến Buffer API.
Điều này giúp bạn dễ dàng tích hợp với các dịch vụ hơn vì giờ đây, bạn có thể triển khai Cloud Tasks trước dịch vụ của mình mà không cần thay đổi mã ở phía máy khách. Mọi yêu cầu HTTP tuỳ ý được gửi đến BufferTask API sẽ được bao bọc dưới dạng đối tượng Task và được gửi đến đích đến được đặt ở cấp hàng đợi.
Để sử dụng BufferTask API, hàng đợi cần được thiết lập cấu hình URI đích, hay nói cách khác, tính năng Cấu hình định tuyến cấp hàng đợi là điều kiện tiên quyết để sử dụng BufferTask API.
Tạo hàng đợi Cloud Tasks bằng cấu hình định tuyến
Tạo một hàng đợi có cấu hình định tuyến trỏ đến dịch vụ đầu tiên mà chúng ta đã triển khai ở bước trước:
SERVICE1=hello1 SERVICE1_URL=$(gcloud run services describe $SERVICE1 --region $REGION --format 'value(status.url)') SERVICE1_HOST=$(echo $SERVICE1_URL | sed 's,http[s]*://,,g') QUEUE3=http-queue-uri-override-buffer gcloud beta tasks queues create $QUEUE3 \ --http-uri-override=host:$SERVICE1_HOST \ --location=$LOCATION
Tạm dừng hàng đợi để bạn có thể quan sát các tác vụ HTTP khi chúng được tạo:
gcloud tasks queues pause $QUEUE3 --location=$LOCATION
9. Yêu cầu HTTP đệm bằng BufferTask API
Trong bước này, bạn sẽ lưu vào bộ nhớ đệm các yêu cầu GET hoặc POST HTTP đơn giản bằng BufferTask API. Về cơ bản, Cloud Tasks sẽ bao bọc các yêu cầu HTTP này thành các tác vụ HTTP bằng chế độ cài đặt cấu hình định tuyến mặc định của hàng đợi.
Trước tiên, hãy đăng nhập để nhận mã truy cập và đặt một số biến:
gcloud auth application-default login ACCESS_TOKEN=$(gcloud auth application-default print-access-token) PROJECT_ID=$(gcloud config get-value project) TASKS_QUEUES_API="https://cloudtasks.googleapis.com/v2beta3/projects/$PROJECT_ID/locations/$LOCATION/queues"
Tạo một tác vụ HTTP
Tạo một tác vụ HTTP bằng BufferTask API. Lưu ý rằng đây là một yêu cầu HTTP GET đơn giản mà không cần tạo một Task:
curl -X GET "$TASKS_QUEUES_API/$QUEUE3/tasks:buffer" \ -H "Authorization: Bearer $ACCESS_TOKEN"
Tạo một tác vụ HTTP khác bằng yêu cầu HTTP POST và một phần nội dung:
curl -X POST "$TASKS_QUEUES_API/$QUEUE3/tasks:buffer" \
-H "Authorization: Bearer $ACCESS_TOKEN" \
-d "{'message': 'Hello World'}"
Không bắt buộc: Bạn cũng có thể tạo một tác vụ HTTP bằng thư viện ứng dụng. Ví dụ: bạn có thể xem Program.cs để biết mẫu C# nơi yêu cầu HTTP GET được gửi trực tiếp đến BufferTask API mà không cần phải gói yêu cầu đó vào Task hoặc cần thư viện ứng dụng cho Cloud Tasks:
var BufferTaskApiUrl = $"https://cloudtasks.googleapis.com/v2beta3/projects/{ProjectId}/locations/{Location}/queues/{Queue}/tasks:buffer";
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Add("Authorization", $"Bearer {AccessToken}");
var response = await client.GetAsync(BufferTaskApiUrl);
var content = await response.Content.ReadAsStringAsync();
Console.WriteLine($"Response: {content}");
}
Bạn có thể kích hoạt như sau:
dotnet run $PROJECT_ID $LOCATION $QUEUE3 $ACCESS_TOKEN
BufferTask API đảm nhận việc tạo một Task từ các yêu cầu HTTP và thêm URL từ chế độ cài đặt cấu hình định tuyến của hàng đợi cho URI.
Kiểm thử tác vụ HTTP
Tiếp tục danh sách chờ:
gcloud tasks queues resume $QUEUE3 --location=$LOCATION
Bạn sẽ thấy rằng dịch vụ Cloud Run đã nhận được các yêu cầu HTTP GET và POST từ Cloud Tasks:
gcloud logging read "resource.type=cloud_run_revision AND resource.labels.service_name=$SERVICE1" --limit 4
--- httpRequest: latency: 0.002279292s protocol: HTTP/1.1 remoteIp: 35.243.23.42 requestMethod: POST requestSize: '777' requestUrl: https://hello1-idcwffc3yq-uc.a.run.app/ responseSize: '5450' serverIp: 216.239.32.53 status: 200 userAgent: Google-Cloud-Tasks ... httpRequest: latency: 0.228982142s protocol: HTTP/1.1 remoteIp: 35.187.132.84 requestMethod: GET requestSize: '426' requestUrl: https://hello1-idcwffc3yq-uc.a.run.app/ responseSize: '5510' serverIp: 216.239.34.53 status: 200 userAgent: Google-Cloud-Tasks
10. Xin chúc mừng
Xin chúc mừng, bạn đã hoàn tất lớp học lập trình này!
Tiếp theo, bạn có thể thử Cloud Tasks làm vùng đệm giữa Pub/Sub và Cloud Run để xem ví dụ thực tế về cách các tính năng mới này của Cloud Tasks có thể giúp dễ dàng tạo hàng đợi bộ đệm giữa các dịch vụ.
Dọn dẹp (không bắt buộc)
Để tránh phát sinh phí, bạn nên dọn dẹp tài nguyên.
Nếu không cần dự án đó nữa, bạn chỉ cần xoá dự án:
gcloud projects delete $PROJECT_ID
Nếu cần dự án, bạn có thể xoá từng tài nguyên.
Xoá các dịch vụ Cloud Run:
gcloud run services delete $SERVICE1 --region $REGION gcloud run services delete $SERVICE2 --region $REGION
Xoá hàng đợi Cloud Tasks:
gcloud tasks queues delete $QUEUE1 --location=$LOCATION gcloud tasks queues delete $QUEUE2 --location=$LOCATION gcloud tasks queues delete $QUEUE3 --location=$LOCATION
Nội dung đã đề cập
- Cách tạo tác vụ đích HTTP.
- Cách tạo các tác vụ đích HTTP bằng chế độ ghi đè URI HTTP ở cấp hàng đợi mới.
- Cách thay đổi các tác vụ đang chờ xử lý bằng chế độ ghi đè URI HTTP cấp hàng đợi mới.
- Cách dễ dàng hơn để lưu vào bộ nhớ đệm các yêu cầu HTTP bằng BufferTask API mới.