Chuyển đến nội dung chính

Cloud Run: Hướng dẫn triển khai ứng dụng đóng gói bằng container trên GCP

Tìm hiểu về Cloud Run và các trường hợp sử dụng, sau đó làm theo hướng dẫn từng bước và khởi chạy phiên bản đầu tiên của bạn.
· 9 phút đọc

Khám phá cùng AI

Cloud Run là nền tảng serverless do Google Cloud quản lý hoàn toàn, cho phép bạn triển khai ứng dụng mà không phải lo lắng về quản trị hạ tầng. Nền tảng này cực kỳ linh hoạt và là lựa chọn tuyệt vời cho nhiều loại dự án, từ cá nhân đến doanh nghiệp.

Trong bài viết này, tôi sẽ giới thiệu Cloud Run là gì, cách hoạt động, những trường hợp sử dụng mà nó có thể giải quyết và so sánh với các giải pháp serverless khác. Tôi cũng sẽ hướng dẫn bạn từng bước để triển khai ứng dụng Cloud Run đầu tiên!

Và trước khi bắt đầu: Nếu bạn hoàn toàn mới với điện toán đám mây, tôi khuyên bạn nên học khóa Giới thiệu về Điện toán Đám mây của chúng tôi. Khóa học này phân tích các kiến thức cơ bản về đám mây, giải thích các thuật ngữ then chốt như khả năng mở rộng và độ trễ, và đề cập đến các lợi ích của công cụ đám mây từ các nhà cung cấp như GCP.

Cloud Run là gì? 

Cloud Run là nền tảng chạy container theo mô hình serverless cho phép bạn triển khai ứng dụng mà không cần bận tâm tới quản trị hạ tầng. 

Với các triển khai dựa trên máy chủ truyền thống, bạn thường phải cấp phát và duy trì máy ảo. Cloud Run hoạt động khác một chút và trừu tượng hóa toàn bộ phần đó để cung cấp một môi trường được quản lý hoàn toàn. 

Nó được xây dựng trên Knative (nền tảng mã nguồn mở dựa trên Kubernetes cho phép xử lý tải công việc serverless), nghĩa là ứng dụng của bạn sẽ tự động mở rộng theo nhu cầu. Khi lưu lượng tăng, Cloud Run sẽ khởi tạo thêm các phiên bản để xử lý. Khi lưu lượng giảm, nó sẽ thu hẹp. Thậm chí có thể giảm về 0, vì vậy bạn sẽ không trả phí khi ứng dụng không chạy tích cực.

Cloud Run tiết kiệm chi phí nhưng cũng rất linh hoạt. Bạn có thể triển khai ứng dụng viết bằng bất kỳ ngôn ngữ nào và sử dụng bất kỳ framework hay binary nào, miễn là chạy trong container. Bạn có thể làm việc với các công nghệ phổ biến như Node.js, Python, Go, Java hoặc những công nghệ ít phổ biến hơn. Thực tế, điều đó có nghĩa là Cloud Run có thể vận hành dịch vụ backend, API, khối lượng công việc AI, ứng dụng web và thậm chí cả các tác vụ theo lịch (batch) được lên kế hoạch. 

Đó là phần điểm qua nhanh. Hãy đi sâu hơn vào các tính năng chính của Cloud Run.

Các tính năng chính của Cloud Run

Chúng ta vừa đề cập một vài điểm, nhưng dưới đây là danh sách đầy đủ các tính năng chính của Cloud Run.

Không phụ thuộc ngôn ngữ và framework

Một trong những ưu điểm lớn nhất của Cloud Run là không buộc bạn dùng một ngôn ngữ hay framework cụ thể. Miễn là ứng dụng của bạn chạy trong container, bạn có thể triển khai nó. Nếu bạn là một đội ngũ dùng nhiều công nghệ khác nhau, bạn có thể dùng Cloud Run cho tất cả dịch vụ của mình. Một công cụ cho tất cả!

Tự động mở rộng

Cloud Run mở rộng theo chiều ngang và động dựa trên lưu lượng. Nếu ứng dụng của bạn nhận được nhiều yêu cầu hơn, Cloud Run sẽ tự động khởi tạo thêm phiên bản. Khi nhu cầu giảm, nó sẽ thu hẹp, thậm chí về 0 nếu cần.

Bảo mật và tuân thủ tích hợp sẵn

Cloud Run đi kèm HTTPS tự động cho mọi dịch vụ đã triển khai, danh tính dịch vụ do Google quản lý để xác thực an toàn, kết nối VPC cho mạng riêng, và các chứng chỉ tuân thủ tích hợp như SOC 2, ISO 27001 và HIPAA (cho ứng dụng y tế). Nói chung, bạn đang được hỗ trợ tốt.

Tích hợp với các dịch vụ Google Cloud

Vì Cloud Run là một phần của hệ sinh thái Google Cloud, nó tương thích tốt với các dịch vụ GCP khác. Bạn có thể dễ dàng kết nối với Cloud SQL cho cơ sở dữ liệu, truyền dữ liệu với Pub/Sub, lưu trữ tệp trong Cloud Storage hoặc sử dụng với BigQuery, Firebase và các dịch vụ AI/ML.

Hỗ trợ GPU theo nhu cầu

Đối với khối lượng công việc AI, Cloud Run hiện hỗ trợ GPU theo nhu cầu. Đây là cải tiến lớn cho suy luận học máy, xử lý video và tính toán khoa học, vì cho phép bạn chạy bất kỳ khối lượng công việc tăng tốc GPU nào mà không phải quản lý phần cứng phía sau.

Cloud Run Functions: Mô hình Function-as-a-Service (FaaS)

Nếu bạn không muốn quản lý toàn bộ container, Cloud Run Functions cung cấp cách đơn giản hóa, theo sự kiện để chạy các hàm nhỏ, đơn nhiệm. Nó tương tự AWS Lambda hoặc Google Cloud Functions nhưng chạy trên hạ tầng của Cloud Run.

Cloud Run hoạt động như thế nào: Từng bước

Trong phần này, tôi sẽ hướng dẫn bạn cách triển khai một ứng dụng đơn giản lên Cloud Run. Tôi sẽ dẫn bạn qua quy trình đóng gói ứng dụng của bạn thành container, triển khai lên Cloud Run và tự động mở rộng theo nhu cầu.

Chúng ta sẽ dùng Docker để đóng gói ứng dụng, nhưng bạn không nhất thiết phải làm vậy. Sẽ nói thêm ở phần cuối.

Bước 1: Thiết lập môi trường

Trước khi triển khai bất kỳ thứ gì, bạn cần cài đặt các công cụ sau:

  1. Google Cloud SDK: Đây là giao diện dòng lệnh (CLI) cho phép bạn tương tác với các dịch vụ Google Cloud, bao gồm Cloud Run. Bạn có thể cài đặt từ đây.
  2. Docker: Nếu ứng dụng của bạn chưa được đóng gói container, bạn sẽ cần Docker để đóng gói ứng dụng. Cài đặt Docker từ đây.
  3. Dự án Google Cloud: Đảm bảo bạn đã thiết lập một dự án Google Cloud. Bạn có thể tạo từ Google Cloud Console.

Bước 2: Viết mã ứng dụng

Bây giờ, hãy viết một ứng dụng Node.js “Hello World” đơn giản.

Tạo một thư mục cho ứng dụng của bạn:

mkdir hello-world-app
cd hello-world-app

Tạo tệp index.js trong thư mục với nội dung sau:

const http = require('http');

const requestListener = (req, res) => {
    res.writeHead(200);
    res.end('Hello, Cloud Run!');
};

const server = http.createServer(requestListener);
server.listen(8080, () => {
    console.log('Server is running on port 8080');
});

Tạo tệp package.json để khai báo các phụ thuộc của ứng dụng:

{
    "name": "hello-world-app",
    "version": "1.0.0",
    "main": "index.js",
    "dependencies": {}
}

Giờ ứng dụng đã sẵn sàng, chúng ta sẽ tiến hành đóng gói container.

Bước 3: Đóng gói ứng dụng thành container

Tạo Dockerfile để định nghĩa ảnh container

Trong thư mục dự án, tạo tệp có tên “Dockerfile” với nội dung sau:

# Use the official Node.js image as a base
FROM node:16-alpine

# Set the working directory inside the container
WORKDIR /usr/src/app

# Copy package.json and install dependencies (if any)
COPY package*.json ./

# Copy the rest of the application code
COPY . .

# Expose port 8080 for Cloud Run
EXPOSE 8080

# Start the app
CMD ["node", "index.js"]

Build ảnh Docker

Chạy lệnh sau để build ảnh Docker của bạn:

docker build -t gcr.io/your-project-id/hello-world-app .

Lưu ý: Thay your-project-id bằng ID dự án Google Cloud của bạn.

Kiểm thử ảnh cục bộ

Bạn có thể kiểm thử container Docker cục bộ bằng cách chạy:

docker run -p 8080:8080 gcr.io/your-project-id/hello-world-app

Truy cập http://localhost:8080 trong trình duyệt để xác minh ứng dụng đang chạy.

Bước 4: Đẩy ảnh lên Google Artifact Registry

Bật Artifact Registry cho dự án của bạn

Nếu bạn chưa bật Artifact Registry, hãy chạy lệnh sau

gcloud services enable artifactregistry.googleapis.com

Lưu ý: Bạn sẽ cần bật thanh toán để hoàn tất bước này!

Tạo một kho lưu trữ trong Artifact Registry

Tạo một kho Docker mới trong Artifact Registry:

gcloud artifacts repositories create hello-world-repo \
--repository-format=docker \
--location=us-central1

Xác thực Docker với Artifact Registry

Cấu hình Docker để xác thực với Artifact Registry:

gcloud auth configure-docker us-central1-docker.pkg.dev

Gắn thẻ ảnh Docker cho Artifact Registry

Gắn thẻ ảnh Docker của bạn với URL kho Artifact Registry:

docker tag gcr.io/your-project-id/hello-world-app us-central1-docker.pkg.dev/your-project-id/hello-world-repo/hello-world-app

Đẩy ảnh lên Artifact Registry

Đẩy ảnh Docker đã gắn thẻ lên kho Artifact Registry của bạn:

docker push us-central1-docker.pkg.dev/your-project-id/hello-world-repo/hello-world-app

Bước 5: Triển khai lên Cloud Run

Khi ảnh của bạn đã được đẩy lên Artifact Registry, bạn có thể triển khai nó lên Cloud Run trực tiếp từ Artifact Registry.

Triển khai ảnh của bạn lên Cloud Run bằng lệnh sau:

gcloud run deploy hello-world-app \
--image us-central1-docker.pkg.dev/your-project-id/hello-world-repo/hello-world-app \
--platform managed \
--region us-central1 \
--allow-unauthenticated
  • hello-world-app: Đây là tên dịch vụ Cloud Run của bạn.
  • us-central1-docker.pkg.dev/your-project-id/hello-world-repo/hello-world-app: URL cho ảnh của bạn được lưu trong Artifact Registry.
  • --platform managed: Đảm bảo triển khai dùng nền tảng được quản lý hoàn toàn của Cloud Run (không phải cụm GKE).
  • --region us-central1: Chỉ định khu vực nơi Cloud Run sẽ triển khai dịch vụ.
  • --allow-unauthenticated: Cho phép truy cập công khai vào dịch vụ. Nếu bạn cần hạn chế truy cập, có thể điều chỉnh cờ này cho phù hợp.

Sau khi chạy lệnh này, Cloud Run sẽ triển khai ứng dụng container của bạn và cung cấp một URL để truy cập.

Vậy là xong! Hãy xem trong GCP console, bạn sẽ thấy phiên bản mới của mình.

Bước 6: Dọn dẹp

Để tránh phát sinh chi phí, hãy chắc chắn xóa dịch vụ sau khi bạn kiểm thử xong.

1. Xóa dịch vụ Cloud Run

Chạy lệnh sau để xóa dịch vụ Cloud Run đã triển khai:

gcloud run services delete hello-world-app --region us-central1

Lệnh này xóa phiên bản Cloud Run nhưng không xóa ảnh container.

2. Xóa ảnh trong Artifact Registry

Để xóa ảnh khỏi Artifact Registry, trước tiên liệt kê các ảnh:

gcloud artifacts docker images list us-central1-docker.pkg.dev/your-project-id/hello-world-repo

Sau đó, xóa ảnh bằng:

gcloud artifacts docker images delete us-central1-docker.pkg.dev/your-project-id/hello-world-repo/hello-world-app --delete-tags

Bây giờ Artifact Registry của bạn cũng đã được dọn dẹp.

3. Xóa kho Artifact Registry (nếu không còn cần thiết)

Nếu bạn muốn xóa hoàn toàn kho Artifact Registry, hãy chạy:

gcloud artifacts repositories delete hello-world-repo --location=us-central1

Bước này chỉ cần thiết nếu bạn không còn dùng kho nữa; nếu không, bạn có thể tái sử dụng cho các lần triển khai sau.

4. (Tùy chọn) Xóa dự án Google Cloud

Nếu đây là dự án thử nghiệm và bạn không còn cần nữa, bạn có thể xóa toàn bộ dự án để loại bỏ mọi tài nguyên liên quan:

gcloud projects delete your-project-id

Triển khai từ mã nguồn

Bạn còn nhớ khi tôi nói bạn không phải lúc nào cũng cần tự tay đóng gói container cho ứng dụng?

Cloud Run hiện hỗ trợ triển khai từ mã nguồn, nghĩa là nó có thể build container cho bạn từ mã nguồn, sử dụng Cloud Build.

Bạn có thể dùng lệnh:

gcloud run deploy hello-world-app \
--source . \
--region us-central1 \
--allow-unauthenticated

Cloud Build tự động phát hiện ngôn ngữ ứng dụng của bạn (Node.js, Python, Go, Java, v.v.), build một ảnh container cho bạn và lưu vào Artifact Registry. Cloud Run sau đó triển khai ảnh đã build giống như khi bạn tự tạo container thủ công. Tôi chắc chắn sẽ khuyên dùng cách này cho các ứng dụng đơn giản với ngôn ngữ được hỗ trợ (Node.js, Python, Go, Java, v.v.), nhưng không phù hợp nếu bạn cần kiểm soát hoàn toàn container (ví dụ: phụ thuộc tùy chỉnh, tinh chỉnh ở cấp hệ điều hành, build nhiều bước).

Mẹo sử dụng Cloud Run hiệu quả

Triển khai ứng dụng lên Cloud Run khá dễ, nhưng để chạy hiệu quả thì cần tinh chỉnh đôi chút. Tôi đã trải qua giai đoạn thử và sai khi mới dùng, và đây là những gì tôi rút ra:

1. Cold start là có thật

Đặc biệt nếu bạn dùng ảnh container lớn. Ảnh càng nhỏ, dịch vụ càng khởi động nhanh. Dùng ảnh nền tối giản như distroless có thể tạo khác biệt đáng kể. Nếu bạn build ứng dụng Python, hãy thử các phiên bản slim của ảnh chính thức. Hoặc nếu chi phí không phải mối bận tâm lớn, đặt số lượng phiên bản tối thiểu là 1.

2. Biến số đáng thử nghiệm nhất là mức đồng thời của yêu cầu

Cloud Run cho phép mỗi phiên bản xử lý nhiều yêu cầu đồng thời, nhưng mặc định (80 yêu cầu mỗi container) thường không tối ưu. Với tác vụ nặng CPU, tôi thấy giảm mức đồng thời xuống 1 hoặc 2 sẽ trơn tru hơn nhiều. Ngược lại, API thường xử lý được số lượng cao hơn. Số càng cao, bạn càng có thể giảm số phiên bản cần thiết và do đó trả phí ít hơn, nên rất đáng thử nghiệm các giá trị khác nhau để tìm điểm cân bằng cho ứng dụng của bạn.

3. Hãy đặt giới hạn phiên bản!

Rất hữu ích khi ai đó (tôi) quyết định chạy kiểm thử tải và bắt đầu gửi lượng yêu cầu “khủng”. Tôi đã học bài học đó để bạn không phải gặp lại. Vui lòng đặt số lượng phiên bản tối đa.

4. Đảm bảo cấp quyền truy cập đúng người cho phiên bản của bạn

Theo mặc định, dịch vụ Cloud Run có thể được truy cập bởi bất kỳ ai có URL, điều này rất phù hợp cho demo nhanh nhưng không tốt cho môi trường sản xuất. Nếu ứng dụng của bạn không dành cho công chúng, hãy khóa quyền bằng IAM. 

5. Cloud Logging và Cloud Trace sẽ là bạn thân của bạn

Nếu giống như tôi, bạn thường debug bằng cách SSH vào máy ảo, bạn sẽ thất vọng. Log của Cloud Run được truyền trực tiếp lên bảng điều khiển Google Cloud, vì vậy bạn có thể xem mọi thứ ở đó. Hãy chắc chắn bổ sung log có cấu trúc cho ứng dụng của bạn, việc khắc phục sự cố sẽ dễ dàng hơn nhiều.

Các trường hợp sử dụng Cloud Run

Chúng ta đã nói về một số trường hợp sử dụng của Cloud Run như chạy ứng dụng web, API hoặc cron job, nhưng hiển nhiên còn nhiều nữa.

Phân tích video và hình ảnh

Bạn có thể triển khai mô hình nhận dạng hình ảnh để xử lý ảnh tải lên theo thời gian thực cho một nền tảng mạng xã hội, hoặc chạy tác vụ chuyển mã video khi có video được tải lên. Cloud Run có thể xử lý các đột biến nhu cầu (như nội dung lan truyền) nhờ tự động mở rộng, đồng thời đảm bảo hiệu quả chi phí khi nhu cầu thấp.

Video and image analysis

Nguồn: Google Cloud

Xử lý luồng thời gian thực

Hãy tưởng tượng bạn đang xây dựng một hệ thống giám sát hành vi người dùng trên sàn thương mại điện tử. Bằng cách xử lý luồng sự kiện từ Pub/Sub hoặc BigQuery, bạn có thể ngay lập tức kích hoạt hành động dựa trên hoạt động của người dùng, như gửi thông báo đẩy hoặc phân tích xu hướng theo thời gian thực. Cloud Run tự động mở rộng để xử lý sự kiện đến trong giai đoạn cao điểm và thu hẹp khi khối lượng luồng giảm.

Real-time stream processing

Nguồn: Google Cloud

Xử lý tệp thời gian thực

Một trường hợp sử dụng có thể là phân tích log theo thời gian thực cho một doanh nghiệp lớn. Bất cứ khi nào một tệp log được tải lên Cloud Storage, Cloud Run có thể kích hoạt một container để phân tích cú pháp, chạy phân tích và lưu kết quả, đồng thời tự động mở rộng theo kích thước tệp và độ phức tạp của tác vụ xử lý.

Real-time file processing

Nguồn: Google Cloud

Backend IoT theo mô hình serverless

Cloud Run lý tưởng để xử lý các dịch vụ backend cho ứng dụng IoT. Ví dụ, trong một giải pháp IoT theo dõi dữ liệu môi trường từ hàng nghìn cảm biến, Cloud Run có thể xử lý dữ liệu đến từ mỗi thiết bị theo thời gian thực.

Serverless IoT backends

Nguồn: Google Cloud

Giá của Google Cloud Run 

Cloud Run áp dụng mô hình trả theo mức sử dụng, nghĩa là bạn chỉ trả tiền cho tài nguyên tính toán được dùng khi ứng dụng của bạn đang chạy. Khi ứng dụng không xử lý yêu cầu, nó có thể thu hẹp về 0, đồng nghĩa bạn không trả chi phí không cần thiết.

Chi tiết giá

Tính đến tháng 3 năm 2025, Cloud Run tính phí dựa trên hai yếu tố chính:

Tài nguyênChi phíMiễn phí
CPU$0.000018 mỗi vCPU-giây240.000 vCPU-giây/tháng
Bộ nhớ$0.000002 mỗi GiB-giây450.000 GiB-giây/tháng

Mức giá này áp dụng cho mô hình tính phí theo phiên bản, nhưng sẽ khác với mô hình tính phí theo yêu cầu. Giá và mức miễn phí ở trên cũng hơi khác tùy khu vực bạn sử dụng, vì vậy hãy kiểm tra trang chính thức của Google Cloud để có con số chính xác. Họ có máy tính giá để giúp bạn ước tính chi phí và cũng cung cấp giảm giá cho cam kết sử dụng.

Mẹo nhỏ: Lưu lượng với các dịch vụ Google Cloud khác trong cùng khu vực là miễn phí, vì vậy hãy thử dùng Cloud Storage, Cloud SQL hoặc Pub/Sub thay vì dịch vụ bên ngoài để trao đổi dữ liệu.

Cloud Run vs. Cloud Run Functions 

Google cung cấp hai tùy chọn tính toán serverless: Cloud Run và Cloud Run Functions (trước đây là Cloud Functions). Cả hai đều cho phép bạn chạy mã mà không cần quản lý hạ tầng, nhưng có đôi chút khác biệt.

Tính năngCloud RunCloud Functions
Mô hình thực thiChạy các ứng dụng đóng gói container đầy đủChạy các hàm riêng lẻ (mô hình FaaS)
Kiểm soát runtimeBất kỳ ngôn ngữ, bất kỳ framework, binary tùy chỉnhRuntime định sẵn (Node.js, Python, Go, v.v.)
Trạng tháiStateless, nhưng có thể duy trì kết nối trong phạm vi một yêu cầuStateless, thiết kế cho tải công việc theo sự kiện
Mở rộngMở rộng theo phiên bản containerMở rộng theo từng lần gọi hàm
Kích hoạtYêu cầu HTTP, Pub/Sub, theo sự kiệnTheo sự kiện (Pub/Sub, Cloud Storage, HTTP, v.v.)
Cold startTối thiểu với phiên bản làm nóng trướcCó thể có độ trễ đáng kể khi mở rộng
Phù hợp nhất choAPI, microservice, dịch vụ backend, khối lượng AIHàm nhẹ, theo sự kiện, tự động hóa

Khi nào nên dùng Cloud Run

  • ✅ Bạn cần quyền kiểm soát đầy đủ đối với runtime và các phụ thuộc.
  • ✅ Bạn đang chạy dịch vụ web, API hoặc microservice xử lý yêu cầu liên tục.
  • ✅ Bạn muốn triển khai một ứng dụng đã đóng gói container sẵn với chỉnh sửa tối thiểu.
  • ✅ Bạn cần xử lý nền hoặc tác vụ chạy lâu (như suy luận AI, batch jobs).

Khi nào nên dùng Cloud Run Functions

  • ✅ Bạn muốn các hàm đơn giản, theo sự kiện kích hoạt khi có thông điệp Pub/Sub hoặc tệp tải lên Cloud Storage.
  • ✅ Bạn xử lý các thao tác ngắn như gửi thông báo, xử lý tác vụ nhỏ hoặc chuyển đổi dữ liệu.
  • ✅ Bạn không muốn quản lý container và thích runtime dựng sẵn cho JavaScript, Python, Go, v.v.

Bạn không nhất thiết phải chọn một trong hai, bạn có thể dùng cả hai cùng lúc! Ví dụ, backend Cloud Run của bạn có thể kích hoạt Cloud Run Functions cho các tác vụ cụ thể như gửi email hoặc xử lý hình ảnh bất đồng bộ.

So sánh với các dịch vụ Google Cloud khác

Chúng ta đã so sánh khá kỹ Cloud Run và Cloud Run Functions, nhưng còn vài dịch vụ Google Cloud khác cũng đáng nhắc tới: GKE và App Engine.

Tính năngCloud RunGoogle Kubernetes Engine (GKE)App Engine
Kiểu quản lýServerless quản lý hoàn toànTự quản lý cụm KubernetesNền tảng như một dịch vụ (PaaS) quản lý hoàn toàn
Mở rộngTự động mở rộng, thu hẹp về 0Mở rộng thủ công hoặc tự động qua KubernetesTự động mở rộng (nhưng không về 0)
Triển khaiTriển khai container (bất kỳ ngôn ngữ nào)Triển khai container qua KubernetesTriển khai mã (hỗ trợ runtime cụ thể)
Trường hợp sử dụngAPI, microservice, ứng dụng web, batch, AIỨng dụng phức tạp, microservice quy mô lớn, khối lượng MLỨng dụng web, backend di động, API
Ngôn ngữ hỗ trợBất kỳ (dựa trên container)Bất kỳ (dựa trên container)Runtime cụ thể được hỗ trợ

Dĩ nhiên còn nhiều sắc thái hơn, nhưng tóm lại: Nếu bạn cần giải pháp container quản lý hoàn toàn với tự động mở rộng và linh hoạt, hãy chọn Cloud Run. Nếu bạn xây dựng ứng dụng web với cấu hình tối thiểu, hãy chọn App Engine. Và nếu bạn muốn toàn quyền kiểm soát cụm Kubernetes cho ứng dụng quy mô lớn, phức tạp, hãy chọn GKE.

Kết luận

Giờ bạn đã biết mọi thứ về Cloud Run, hãy thử khởi chạy phiên bản đầu tiên của bạn hoặc xem các dịch vụ Google Cloud khác để tìm mức độ kiểm soát và tự động hóa phù hợp với bạn!

Câu hỏi thường gặp về Cloud Run

Tôi xử lý kết nối cơ sở dữ liệu trong Cloud Run như thế nào?

Bạn có thể dùng Cloud SQL Auth Proxy, bật pooling kết nối (ví dụ PgBouncer cho PostgreSQL) hoặc dùng cơ sở dữ liệu serverless như Firestore để tránh giới hạn kết nối.

Tôi có thể dùng tên miền tùy chỉnh với Cloud Run không?

Có. Thiết lập trong bảng điều khiển Cloud Run tại Quản lý Tên miền Tùy chỉnh, xác minh quyền sở hữu và cập nhật bản ghi DNS. SSL được cung cấp tự động.

Cloud Run có hỗ trợ WebSocket và kết nối sống lâu không?

Có, nhưng phiên bản có thể tắt nếu không hoạt động. Để duy trì kết nối, hãy đặt số lượng phiên bản tối thiểu hoặc dùng Pub/Sub cho giao tiếp theo sự kiện.

Cloud Run có xử lý tác vụ nền không?

Không trực tiếp, vì nó dựa trên yêu cầu. Hãy dùng Cloud Tasks, Pub/Sub hoặc Workflows để kích hoạt và quản lý xử lý nền.

Tôi có thể chạy ứng dụng có trạng thái trên Cloud Run không?

Không khuyến nghị, vì các phiên bản là stateless. Hãy dùng Cloud Storage, Firestore hoặc cơ sở dữ liệu bên ngoài để lưu trạng thái.

Marie Fayard

Tác giả

Marie Fayard

Tôi là một trưởng nhóm kỹ thuật định hướng sản phẩm, chuyên giúp các startup giai đoạn đầu phát triển từ nguyên mẫu đầu tiên đến khi đạt được sự phù hợp sản phẩm - thị trường và xa hơn nữa. Tôi luôn tò mò về cách con người sử dụng công nghệ, và tôi thích làm việc sát sao với nhà sáng lập và các nhóm liên chức năng để biến những ý tưởng táo bạo thành hiện thực. Khi không xây dựng sản phẩm, tôi tìm cảm hứng ở những miền đất mới hoặc xả căng thẳng tại phòng tập yoga.

Chủ đề

Liên quan